You are on page 1of 69

Interface - Rozhraní

Periferie jsou všechna zařízení, která lze připojit k základní desce počítače.

Slouží k těmto účelům:

• vstup dat
• výstup dat
• zápis dat mimo operační paměť

Vnější rozhraní
Je to standardizace připojení (respektuje vlastnosti jednotlivých technických zařízení - periférií z hlediska vstupu
a výstupu).
Vnitřní rozhraní
Jsou to inteligentní vstupní - výstupní obvody, které jsou většinou programovatelné.
Příklad vnitřního rozhraní:

Port je propojení na zadní straně počítače.


Porty:

• sériové
• paralelní

Rozdíl je ve způsobu vyměňování informací. U sériového se přenášejí bit po bitu po jednom drátě u paralelního
se přenášejí informace po bytech přes osm drátů současně.
Sériové RS232:
Používají se dva typy konektoru:
1. CANON 25 (25 - pinový)

Přiřazení pinů:
Pin Funkce
1 Ochranná zem
2 Přenos dat (výstup)
3 Příjem dat (vstup)
4 Žádost k vysílání dat (výstup)
5 Připravenost pro příjem (vstup)
6 Připravení dat na vysílání
7 Signálová zem
8 Zachycení linkového signálu
9 Přenosové hodiny
20 Zachycení ukončení dat
22 Kruhový indikátor
Ostatní jsou uzemněny

2. CANON 9 (9 - pinový)

Přiřazení pinů:
Pin Funkce
1 Zachycení linkového signálu
2 Příjem dat
3 Přenos dat
4 Zachycení ukončení dat
5 Zemnění
6 Připravenost dat pro vysílání
7 Požadavek na přenos
8 Připravenost pro příjem
9 Kruhový indikátor

Tuto činnost při přenosu a příjmu dat zajišťuje speciélní programovatelný obvod typu UART pod označením
8250, 8251. Je to v podstatě paralelně sériový převodník.
Obecný princip sériového procesu

Pro vlastní přenos se přidávají k platným datům další informace a to startbit, parita, počet stop bitů.
UART

RS 232 je digitální rozhraní, komunikace asi do 15m, stav na lince ON +3 V , OFF - 3 V. Každou linku řídí
jedna nebo druhá strana např. linku 2 vnímá jedna strana jako vstup a druhá strana jako výstup. Rychlost přenosu
je možno programovat.
Rozhraní:

• DTE
• DCE

Na DTE jsou samčí konektory, na DCE samičí. UART dohlíží na sériovou komunikaci PC. Dnes se většinou
používají rychlejší čipy pod označením 16450, 16550. Na rozdíl od starších UARTů, kdy se ukládaly informace
byte po bytu RS 232 je navržen tak, aby spojoval DTE a DCE.
Spojení mezi počítači - oba mají rozhraní DTE. Podle standardu nemůžeme takto přímo propojit dvě rozhraní
DTE. Propojení je možné přes kabel tzv. modemový eliminátor.

Paralelní rozhraní typu CENTRONICS


U novějších tiskáren se používá 36pinový CENTRONICS:

Slouží např. pro připojení tiskárny, ZIP disku, propojení dvou počítačů. Informace jsou přes paralelní port
přenášeny paralelně, tzn. že je vždy zároveň přenášena určitá sada bitů.

Klávesnice
Je vnější zařízení systému PC, skládá se z rozhraní, kabelů a klávesnice.

Rozhraní je tvořeno konektorem DIN.

1 - data
2 - nevyužit
3 - uzemnění
4 - napájení
5 - hodiny

U funkční klávesnice je ss napětí mezi kolíky 1-2-3 nebo 5 (2-5,5 V).

Každá klávesa má přiřazen SCAN kód, po stisku klávesy je tento kód na portu klávesnice, odkud si ho vezme
obsluha přerušení. Ta jej převede do ASCII a uloží do vyrov. bufferu klávesnice příslušné hodnoty.
SCAN kód určuje fyzické tlačítko na klávesnici např. když obsluha přerušení přečte z portu klávesnice hodnotu
44, jedná se o písmeno z. Ve SCAN kódu se nerozlišuje malé a velké písmeno (např. klávesa z má stejný SCAN
kód jako klávesa Z). Podle stavu klávesy CAPS LOCK, příp. SHIFT se rozliší, zda se jedná o velké nebo malé
písmeno.

ASCII kód je množina 256 čísel, které reprezentují jednotlivé znaky.

Extended ASCII CODE: Pro některé klávesy, které nemají přiřazenou žádnou hodnotu v tabulce ASCII (funkční
klávesy) se vygeneruje rozšířený ASCII.

Vyrovnávací paměť klávesnice (buffer) je oblast paměti o velikosti 32 B v datové oblasti BIOSu. Těchto 32 B
tvoří kruhovou frontu, do které se ukládají znaky stisknuté na klávesnici v pořadí ASCII a SCAN kód. Ukládají-
li se znaky rychleji, než dokáže PC zpracovat, buffer se zaplní a počítač vydá zvukový signál. Příznaky
klávesnice jsou 2 B, které jsou obrazem současného stavu klávesnice. Tyto adresy jsou součástí datové oblasti
BIOSu.

Typy klávesnic

• standardní - 84 kláves
• rozšířené - 101 (102) kláves

Principy
u starších klávesnic - spínačové

Na sloupcové vodiče je multiplexně přiváděn určitý potenciál, který se při zmáčknutí objeví na příslušném
řádkovém vodiči. Ze sloupce a řádku je identifikováno příslušné tlačítko. U klávesnic IBM je kapacitní princip,
kdy na spodní straně klávesnice je vytvořena kapacitní plocha, stiskem příslušné klávesy dojde na ploše ke
změně kapacity, toto je vyhodnoceno a identifikována klávesa. Klávesnici podporuje mikroprocesor na bázi
ROM, jehož hlavní činností je identifikace SCAN kódu. Životnost klávesnice se udává v počtu stisků, u dnešních
až 80 miliónů stisků.

Mikroprocesory
INTEL 8086

Technologie NMOS, 16-ti bitový, adresovatelný prostor 1 MB

Vnitřní struktura 8086:


Registry jsou to paměťová místa umístěná v mikroprocesoru. 8086 má 14 16-ti bitových registrů.

1.Všeobecné

AH AL střadač
BH BL báze
CH CL čítač
DH DL data

Lze je používat jako dvojice 8-bitových registrů: AH je pro vyšších 8 bitů, AL je pro nižších 8 bitů.

Tyto registry se používají převážně pro aritmetické operace. Speciálně je pro ně určen registr AX (akumulátor),
řada instrukcí pracuje převážně jen s tímto registrem. BX se používá především k výpočtu adresy v některých
adresových módech. CX je čítač, používá se u instrukcí s opakováním. DX je datový registr a nemá speciální
funkci.

2. Indexové a ukazatelové registry

SP ukazatel zásobníku
BP ukazatel báze
SI index zdrojové adresy
DI index cílové adresy

Registry se nejčastěji používají pro adresaci dat. Indexové registry mají specifikovaný způsob využití. SP
(ukazatel zásobníku) obsahuje hodnotu offsetu zásobníku mikroprocesoru a používá se při práci se zásobníkem a
voláním podprogramu. BP je určen k adresování dat hlavní paměti. Při spolupráci s vyšším programovacím
jazykem je využíván jako ukazatel na parametry volané procedury. SI a DI se využívají při přenosech boku dat a
při přístupu do paměti.

3. Segmentové registry

CS segmentový registr programu (Code Segment)


DS segmentový registr dat (Data Segment)
SS segmentový registr zásobníku (Stack Segment)
ES pomocný registr (Extra Segment)
CS je nejdůležitější, jelikož obsahuje segmentovou část adresy právě běžícího programu. DS je určen k
adresování dat v hlavní paměti, tzn., že pokud instukce pracuje s daty v hlavní paměti, je určen právě tento
registr. SS ukazuje na segment strojového zásobníku. SS a SP je přesná adresa strojového zásobníku v hlavní
paměti. Je využit u instrukcí, které pracují se zásobníkem. ES je využíván při přesunech dat, jinak je volně k
dispozici.

IP - tento registr obsahuje offsetovou část adresy právě zpracovávané instrukce.

Příznakový registr - FLAGS

Obsahuje jednobitové indikátory, které určují okamžitý stav mikroprocesoru. Jednotlivé bity tvoří dvě skupiny:

- TF, IF, DF

- OF, ZF, SF, AF, PF, CF

TF (Trap Flag) - Tento příznak se používá pro účely ladění, jeho nastavení způsobí, že procesor po provedení
každé instrukce vygeneruje přerušení INT1

IF (Interrupt Flag) - Povoluje externí přerušení

DF (Direction Flag) - Určuje směr zpracování řetězců. Je-li nastaven v jedničce, obsah registrů SI a DI se po
provedení řetězcové operace sníží (řetězec se zpracovává odzadu).

OF (Overflow Flag) - Příznak se zastaví do jedničky, došlo-li v průběhu provádění instrukce k aritmetickému
přeplnění, tzn., že výsledek se nevejde do určeného místa.

SF (Sign Flag) - Je-li výsledek operace záporný, příznak se nastaví do jedničky. Je to v podstatě kopie
nejvyššího bitu výsledku.

ZF (Zero Flag) - Příznak se nastaví, je-li výsledek operace nulový.

PF (Parity Flag) - Příznak se nastaví, jestliže dolních 8 bitů výsledku prováděné instrukce má sudý počet
jedniček (neznamená, že číslo je sudé).

CF (Carry Flag) - Příznak se nastaví, jestlliže při provádění operace došlo k přenosu z nejvyššího bitu. Používá
se také při instrukcích posunu a rotace.

AF (Auxiliary Flag) - Příznak se používá při BCD v aritmetice a to při přenosu z 3. do 4. bitu.

Vytváření adresy:

Šířka adresové sběrnice je 20 bitů (adresuje 1 MB), adresa má dvě části - segment a offset.

Vytvořená adresa se skládá ze dvou šestnáctibitových částí. Z této tzv. logické adresy se fyzická vytváří tak, že
se nejprve posune o 4 bity vlevo (odpovídá násobení 16) a k takto vzniklému číslu se přičte offset. Tím vzikne
20-ti bitová adresa, ukazující na konkrétní místo v paměti.

Důsledkem adresování je paměť rozdělena na jednotlivé bloky o velikosti 64 kB (segmenty). Segmentová část
adresy po vynásobení šestnácti (připsání čtyř nul na nejnižší bity) ukazuje na začátek segmentu a offset je pozice
v segmentu vzhledem k jeho začátku. Segmentové registry udávají segmentovou část adresy.

Adresace pomocí segmentových registru:


80386

Procesor má 32-bitovou adresovou sběrnici, maximální velikost operační paměti 232 B = 4 096 MB. Má
poměrně složitý systém řízení paměti, kde se adresa, použitá v programu složitým způsobem vypočítává na
skutečnou. Systém řízení paměti má dvě úrovně: segmentování, stránkování. Segmentování je vyšší úroveň.
Systém registrů je převzat z 8086, jsou rozšířeny o další, jsou 32-bitové, kromě segmentových. Aplikační
registry jsou určeny programátorovi, jsou zcela přístupné.

• Šest 16-bitových
• Osm 32-bitových
• Dva řídící 32-bitové

VM (Virtual 8086 Mode)


Je-li tento přepínač nastaven na 1, pracuje mikroprocesor ve virtuálním režimu 8086.
IOPL (IO Priority Level)
Toto pole je dvoubitové a udává prioritu potřebnou k provádění vstupů a výstupů. Je-li priorita programu, který
provádí v/v operaci nižší (numericky vyšší) než obsah pole IOPL, operace se neprovede a namísto toho se
vyvolá přerušení.

80486
Má interní paměť CACHE o velikosti minimálně 8 kB, interní koprocesor, rychlost dle typu
25 - 120 MHz. CACHE paměť je rozdělena na čtyři bloky po 2 kB. Systémově má dvě části - TAG, DATA.
Když v TAG jsou uvedeny informace o pohybu dat této paměti, znamená to, že procesor vždy sáhne do TAG a v
DATA vybere hledaná data.

Motorola 68040
Patří do architektury CISC (Complete Instruction Set Computer). V této architektuře obsahuje již mikroprocesor
vpodstatě miniaturní počítač včetně programů. Tento počítač pak vyhodnocuje vlastní instrukce. Výhoda:
instrukce mohou být komplikované, tzn. že jedna instrukce zajistí určité komplexní služby.

Pentium
Struktura mikroprocesoru Pentium
Současně nejmodernější procesor řady INTEL, na ploše 1,6 x 1,6 cm je asi 3,1 miliónů tranzistorů. K provedení
jednoho taktu je nutná 1/66 - 1/150 milióntina sekundy, což je potřebná doba k provedení jedné operace. Nejvíce
prostoru zabírají paměťové obvody (CACHE, atd.). Data přicházejí z pracovní paměti počítače přes DATABUS
do jednotky BUS INTERFACE LOGIC. Zde se rozhoduje, zda jde o příkazové (CODE) nebo hodnotové
(DATA) informace. Podle toho jsou pak data převedena do CODE CACHE nebo DATA CACHE. Obě jednotky
(akumulační jednotky) jsou řízeny jednotkami TLB. Jsou to vpodstatě mikroprocesory uvnitř čipu. Taktovací
frekvenci udává CLOCK DRIVER. Příkazová data jsou nejdříve přivedena do jednotky INSTRUCTION
FETCH a pak dekódována INSTRUCTION DECODE. V jednotce pro předpověď se odhaduje, jaká budou příští
příkazová data (BRANCH, PREDICTION LOGIC). Většina příkazů zahrnuje výpočty a ty se provádějí v
centrálním číslicovém oddělení (SUPERSCALAR INTEGER EXECUTION UNITS) nebo (PIPELINED
FLOATING POINT).
PIPELINED FLOATING POINT - instrukce se zpracovávají v několika fázích. Mikroprocesor je přizpůsoben
tak, že jakmile je jedna fáze nad nějakou instrukcí hotová, může se okamžitě přejít na další instrukci (částečně
zpracovaná instrukce přejde do další fáze).
DATABUS - je sběrnice informací procesoru. Pentium přenese najednou paralelně 64 bitů. Znamená to, že je-li
jeden příkaz tvořen z 8 bitů, pak za jeden takt zpracuje 8 B.

Ve verzi MMX byly přidány další instrukce pro lepší zpracování multimediálních dat. Ve verzi Pentium III byly
přidány i instrukce pro rychlejší zpracování 3D dat (vedle dalších architektonických vylepšení).

DEC vyvinula čip pod označením ALPHA s architekturou typu RISC. U této architektury se zpracovávají
odlišně data a příkazy jsou zredukovány. Je to v podstatě nejrychlejší procesor a špičkově zpracuje 400 miliónů
příkazů za sekundu. Je to 64 bitový procesor a má 4 miliard krát větší adresovací prostor než 32-bitové čipy
IBM. Obvody RISC produkují při špičkovém výkonu značné teplo.

Modemy
Modem je modulátor - demodulátor, transformuje digitální signál vysílaný počítačem do signálu analogového
vhodného pro telefonní linky. Transformace signálu je modulací. Její efektivnost se určuje v bitech za sekundu -
míra přenosu informace.

BAUD - jednotka měří počet změn stavu signálu za sekundu, např. signál 2400 baudového modemu změní svůj
stav (amplitudu, frekvenci, fázi) 2400x za sekundu. K vysílání jednoho bitu jsou nutné dvě změny. Všechny
rychlejší modemy uvádějí počet baudů menší než přenosovou rychlost. Technika modulace umožňuje vysílat
více bitů při jedné změně signálu, tzn. na jeden baud. Např. fázovou modulací se vysílají 4 bity/baud.

Modulační protokoly:

Jsou definovány výborem CCITT, je součástí mezinárodní telekomunikační unie. Komunikační protokoly:

V21 - 300 b/s;

V22 - 600, 1200 b/s; modemy jsou 600 baudové, modulace 4 bity/baud

V22bis - 2400 b/s;

V32 - 4800, 9600 b/s; pracuje na 2400 baudech, 2 nebo 4 bity/baud;

V32bis - multistandardní 14400 b/s.

V90 - až 56kb/s

Oprava chyb:

Na telefonních linkách se projevují parazitní šumy, proto jsou zavedeny technologie k opravě přenosových chyb.
Protokoly MNP2-4; skládají se z šumového filtru a korektoru postižených dat. Korekce chyb má velký vliv na
přenosovou rychlost.

Komprese dat:

Je zmenšení velikosti přenášených zpráv odstraněním redundance. Technologie MNP5 a V42bis používá metody
RLL.

Protokoly pro přenos souborů:


Xmodem přenáší 128 bytové pakety + jeden podpůrný verifikační bit pro přijímací systém ke kontrole správnosti
přenosu. Formát - 8 bitů/znak.

Ymodem pro přenosy velkých souborů - data v blocích 1 kB.

Zmodem - 512 bytové bloky pro přenos.

UART je čip odpovědný za dohlížení na sériovou komunikaci. Když posílá informace, BIOS vkládá data do
převodního registru UARTu. Když je UART připraven na vysílání, přesune data do posuvného datového registru
a posílá je bit po bitu po vedení. Přijímací sériový port také obsahuje UART, jako přijímač bere bity z vedení
(odstraní start a stop bity) a vkládá je do přijímacího posuvného registru. Když přijme celý byt, přesune ho do
přijímacího registru, který je zpřístupněn přes BIOS. Při chybě přenosu se nastaví příznaky ve stavovém registru
a ohlásí chybu BIOSu. Sériová komunikace je komunikace mezi UARTy. Propojení je přes 25 pinový a 9 pinový
konektor:

Při komunikaci se dvě sériová zařízení musí shodnout na rychlosti a dalších parametrech (start, stopovací bity,
zapnutí - vypnutí echa). U asynchronního přenosu přijímač tzv. hlídá linku, start bit způsobí změnu linky,
upozorní, že jsou nějaká data k přenosu.

Vysvětlení diod na modemu:

HS - High Speed - svítí, pracuje-li na plný výkon;

AA - Auto Answer - modem odpovídá samostatně na telefonní výzvy;

CD - Carner Detect - při komunikaci je úspěšně připojen k jinému počítači;

OH - Off Hook - modem přebral kontrolu nad telefonní linkou;

RD - Receive Data - předává data počítači;

SD - Send Data - počítač posílá data;

TR - Therminal Ready - modem přijal signál Therminal Ready;

MR - má zapojen napájení a je připraven.

Telefonní vedení je označeno barvami červenou, zelenou, žlutou a černou, používá se červená a zelená. Ta dává
48 V stejnosměrných, při zvonění 100 V. Optická vlákna dosahují rychlosti až 2 GB.

Volba telefonního čísla:

• pulsní: číslice jsou kódovány počtem impulsu;


• tónová: různé tóny frekvence.

Programové vybavení:
Počítač vysílá modemu příkazy ve speciálním formátu, je používán speciální jazyk AT (attention) příkazy.
Modem pracuje ve dvou režimech:
1. příkazový - posíláme AT příkazy
2. přenosový - nelze posílat AT příkazy.

Optické disky
Rozdělení:

• CD ROM
• Magnetooptický disk
• Minidisk

1. CD ROM
Princip:
Standardní disk CD ROM má průměr 120 mm (4,72 ´´) s otvorem uprostřed průměru 15 mm (0,6 ´´). Tlouš?ka
disku je 1,2 mm. Oproti klasickým diskům má CD ROM jednu spirálovou stopu, která je rozdělena na stejně
dlouhé sektory. Šířka stopy je 600 nm. Ta dává hustotu 16 000 závitů na palec. Data ve spirálové stopě jsou ve
formě malých prohlubní (pity), proloženými rovnými oblastmi nazývanými pole. Čtecí hlava (optické zařízení) s
galium-arzenistým laserem a fotoelektrodou načítá pity a pole. Zařízení zaměřuje laserový paprsek přes
polopropustné zrcadlo na povrch disku. Pole laserový paprsek odrážejí zpět, pity jej rozptylují. Zrcadlo
přesměruje vracející se paprsek na fotodiodu. Disk je technologicky vytvořen z průhledné polykarbonátové
vrstvy, na kterou výrobce nanáší šablonu s poli a pity. Základní vrstva je překryta odrazivým filmem z hliníku,
na který je nanesen ochranný lak. Disk se čte ze spodu přes polykarbonátovou podložku. Tento materiál je
odolný proti slunečnímu záření.

2. Magnetooptický disk
Využívá spojení světla a magnetismu. Proces ovládání dat je jiný než u CD ROM. Aby byla zajištěna
popisovatelnost pamě?ového média, nejsou provedeny destrukční změny na povrchu disku. Médium je
vytvořeno ze silných magnetických materiálů.
Princip:
Strukturu magnetických částic u silně magnetických materiálů nelze za normálního stavu měnit. Materiál se musí
zahřát na Currieho bod (151 oC) a pak je možná manipulace s magnetickými částmi. Horký laser ohřeje pamě?
ové médium v oblasti zápisu, magnetická hlava změní směr magnetických částic. Při čtení dopadá laser na
magnetický zorientovaný materiál a podle směru magnetických částic se změní fáze odráženého světla. Ve
fyzice je to tzv. Kerrův efekt. Na základě rozdílných otočení směrů paprsků čte magnetooptická jednotka
informace.

3. Osmicentimetrový CD - mini CD
Je přibližně stejně velký jako 3,5 ´´ disketa, ale pojme až 200 MB dat. Využití je zejména v noteboocích, jelikož
mechaniky CD ROM jsou lehčí. Jeho největší výhodou je, že jej mohou číst i velké mechaniky CD ROM (lze
číst v mechanice standardní, 2x a více rychlostní).

Paměti CACHE
1. Softwarová

Odebírá hlavní paměti určitý malý prostor a používá ji k ukládání dat, které procesor potřebuje z diskové paměti.
Pokud procesor potřebuje data, prohledává nejdříve takto vytvořenou CACHE. Pokud tam jsou, nejsou
vyhledávána na pomalém disku.

2. Hardwarová
Tyto paměti jsou umístěny na základní desce PC mezi procesorem a hlavní pamětí. Jsou klasifikovány jako
CACHE druhé úrovně. Vyrovnávají rozdíly v rychlosti mezi procesorem a hlavní pamětí. Jsou vytvořeny ze
statických polovodičových pamětí SRAM s přístupovou dobou 20 až 25 ns. Není nutno provádět REFRESH a
procesor nemusí zařazovat tzv. čekací cykly. Základní filozofie je založena na rychlém přístupu k datům.
Předpokládá se, že data, která potřeboval v minulém cyklu, bude využívat i v následujícím čase. Podle tohoto
předpokladu jsou data do paměti CACHE přemísťována (načítána). O jejich pohybu v paměti CACHE jsou
vedeny informace v řadiči CACHE. Tato filozofie předpokládá asi 90 % úspěšných zásahů v CACHE.

3. Procesorová

Je umístěna přímo v procesoru, na čipu je implementován také řadič CACHE. Je nejrychlejší, jelikož data nejsou
přenášena po pomalé vnější sběrnici mezi procesorem a pamětí, ale přímo po vnitřní sběrnici procesoru, např.
procesor 486 má CACHE o velikosti 8 kB. Z praxe procesor 486 SX o 25 MHz je rychlejší než 386 s 33 MHz.
Typické je to rozpoznat např. u WINDOWS, které používají pevný disk jako rozšíření hlavní paměti. 90 až 95 %
zisku rychlosti procesoru se dosáhne prvními 64 kB externí CACHE. U víceúčelových systémů např. NOVELL,
UNIX je nutné alespoň 512 kB externí CACHE.

ad1)

Snížení počtu I/O diskových operací:

Jedná se omezení pomalých diskových operací tím, že se vytvoří v operační paměti vyrovnávací paměť pro tyto
operace. Uvedením v config.sys položky BUFFER se nainstaluje vyrovnávací paměť, která je využita pro
operace s diskem.

Lépe se vytvoří BUFFER pomocí ovladače SMARTDRV.SYS. Výhody oproti DOS BUFFERům: může vytvořit
BUFFER do velikosti 8 MB, má dynamickou úpravu (může měnit svou velikost).

Instalace:

DEVICE=C:\DOS\SMARTDRV.SYS velikost

velikost se uvádí v kB, např. 2048 (2MB)

RAM disky

Jsou simulované disky, vytvořené v paměti RAM. Disk má vlastní znak pro přístup na disk. Rozdíl oproti
pevným diskům je v tom, že informace se ukládají dočasně (při vypnutí počítače se informace ztratí).

Paměti
• lokální
• operační
• velkokapacitní

Lokální pamětí jsou součástí mikroprocesorů a jsou to střadače, registry, cache.


Operační paměti jsou tvořeny většinou z polovodičových pamětí různých velikostí.
Velkokapacitní paměti představují většinou různé typy disků.
1. Dynamická RAM
Základní princip:

Dynamická paměť RAM je založena na fyzikálním principu nabíjení kondenzátoru. Takto vzniklý potenciál,
který je ekvivalentní napětí, odpovídá logické 0 nebo 1. Jelikož vlivem svodů (svodový odpor) je tento potenciál
vybíjen, je nutno tuto operaci v paměťové buňce obnovovat (refresh). Obnova probíhá tak, že jsou paralelně
sejmuty obsahy paměťových buněk na řádku, v budiči zesíleny a opět zapsány na původní místo. Rychlost
obnovy paměťových míst je několik setkrát za sekundu. Tyto paměti jsou levnější než statické. V současné době
máme dva typy SIMM a SIPP. Přístupová doba SIMM 60-70ns.
Použití : operační paměti

2. Statická RAM

Jednotlivé paměťové buňky bývají uspořádány do matice, jejich výběr je prováděn přes řádkové a sloupcové
vodiče. Paměť je tvořena klopným obvodem se dvěma stavy. Přes výběr řádků je zapsaná informace připojena
na datové vodiče. Adresace paměťové matice je zajišťována přes dekodér řádku a dekodér sloupců. Data jsou v
budících obvodech a přivedená na datovou sběrnici. Součet řádkových a sloupcových vodičů udává šířku
adresového slova. Není nutná obnova informace jako u DRAM. Přístupové doby jsou 15-35 ns.
Použití: pro rychlé paměti cache

3. Paměť ROM
Určená jen pro čtení, většinou se programuje přímo u výrobce, nedá se přeprogramovat, je energeticky nezávislá.
Použití: pro BIOS, pevné paměti atd.

4. Paměť PROM
Programovatelná, energeticky nezávislá. Programuje se na speciálním zařízení programátora a princip je v
destrukci vodivých cest, tzn., že je propálená propojka výstupního obvodu.

5. Paměť EPROM
Je programovatelná ultrafialovým zářením, dá se přeprogramovat.

6. Paměť EEPROM
Dá se mazat a programovat elektrickým proudem, oproti EPROM je doba programování řádově v ms. V počítači
s PENTIEM je tzv. flash EPROM, kdy může uživatel disketou u výrobce.

Pevné disky
Využívají principu magnetizace materiálu a pracují se dvěma stavy informace - 0, 1.

Princip zápisu:

Cívka, kterou prochází proud, vytváří magnetické pole, které je vedeno přes jádro zapisovací hlavy v magnetické
vrstvě. V místě štěrbiny prochází magnetické pole na materiál, magnetizuje ho. Směr magnetizace závisí na
směru zápisového proudu. Velikost zmagnetování závisí na šířce štěrbiny.

Princip čtení:

Je založeno na principu elektromagnetické indukce. Na vývodech cívky, která se nachází v magnetickém poli,
lze naměřit napětí vždy ve chvíli, kdy se toto pole mění. Tzn. při přechodu 0 na 1 a z 1 na 0 se indukuje v cívce
napětí. Z tohoto napětí se získává (odvozuje) zapsaná informace.

Pamě?ové médium se skládá z nosné části (disk) a z citlivé vrstvy (oxid kovu). Disková jednotka je zařízení,
které umožňuje operačnímu systému využívat pamě?ové médium pro zápis a čtení. Skládá se: disk s vrstvou
citlivého materiálu, synchronní motorek, vystavovací mechanismus, čtecí a záznamové hlavy. Hlavičky jsou
přemís?ovány pomocí motorku nad definovaná místa nad diskem. Pro vystavení se používají dva různé
mechanismy:

- krokové motorky - systém nemá naváděcí mechanismus, má jen indikátor stopy 0. Při vyhledávání najede
nejprve na stopu 0 a pak krok po kroku k vyhledávané stopě.

- lineární motorek - je používanější, rychlý a přemís?uje hlavy na základě informací, které jsou uvedeny na
pevném disku.

Základní pojmy:

Cylindr je souhrn všech stop


daného čísla na všech površích.

Sektor je oblast disku vytvořená


při fyzickém formátování.

Stopa - každá strana je


rozdělena do soustředných stop.

IBM formát pro sektor má


velikost 512 B.

DOS organizuje data po


sektorech. Disky jsou rozděleny
do absolutních sektorů a sektory jsou spojovány do clusteru (alokační jednotky pamě?ového prostoru).

1.Master Boot Record - obsahuje informace o rozdělení disku, zaváděcí instrukce, cylindry, které obsahují
operační systém

2. FAT

3. Alokace

4. Soubor

6. Kořenový adresář

Položka, uvedena v adresáři se vztahuje k 1.clusteru daného souboru


Adresář:

Jméno Přípona Atributy Datum posl. změny Čas posl.změny 1.cluster Délka souboru

např.

ZIDEK DAT žádné 5.11.95 3:20:25p 40,00 11271,00

40,00 = ukazatel do tabulky FAT

Tabulka FAT

39,00 EOF
40,00 41,00
41,00 42,00
43,00 44,00
44 BAD
45,00 68,00
68,00 69,00
69,00 EOF

Tabulka FAT obsahuje:


číslo...............cluster
EOF...............konec souboru
BAD..............vadný sektor

Prokládání disku:

Při pravidelném rozdělení sektorů dochází k tomu, že je načten jeden sektor do BUFFERU řadiče disku. Provádí
se kontrola správnosti přečtených dat (parita atd.). Při rychlosti otáčení 3600 až 7200 ot/min se nestihne čtení
následujícího druhého sektoru, protože čtecí hlava je už nad dalším sektorem (muselo by se čekat až se celý disk
znovu otočí, což by zpomalovalo čtení) Proto se používá posunuté rozložení tzv. prokládání např. 1 : 3, 1 : 6
atd. Data jsou zapisována do každého n-tého sektoru

Příklad prokládání 1 : 6 Příklad prokládání 1 : 1

Některé řadiče disků používají prokládání 1:1. Čtení probíhá na principu, že do bufferu řadiče je načtena celá
stopa (cylindr) a řadič pak data zpracuje. Tento systém se nazývá bufferizace stopy.

Přenosné počítače
1. Rozdělení

portables - přenosné počítače závislé na napájení ze sítě


laptops (počítače na klín) - napájení z baterií
notebooks (zápisnikové počítače) - malá hmotnost závislá na vybavení (A4)
palmtops (počítač do ruky)
PCS - Pen Based - počítače bez klávesnice, ke styku uživatele s počítačem dochází dotykem elektronického
pera na displej LCD

2. Kritéria výběru

• rozměr, hmotnost
• čitelnost displeje v závislosti na maximálním kontrastu a rozlišovací schopnosti
• konstrukční provedení (odolnost proti nárazu atd.)
• provozuschopnost počítače na jedno nabití akumulátoru při provozu pevného disku
• softwarová kompatibilita a soft.vybavení
• výkonnost a rychlost prováděných instrukcí
• vybavení (modem, CD-ROM...)

3. Parametry přenosných počítačů

• typ procesoru (šířka datové sběrnice 16, 24, 32, 64 bitů)


• rychlost MIPS (udává v miliónech počet instrukcí, provedených za sekundu)
• kapacita operační paměti
• kapacita rozšiřující paměti (velikost rozšíření uvedené základní paměti)
• typ grafického adaptéru
• displej (úhlopříčka, rozlišovací rastr, LCD, odrazový, prosvícený, TFT, CRT, počet barev, analogový,
digitální, ...)
• kapacita pevných disků
• počet I/O portů
• výkon napájecího zdroje
• hmotnost zařízení

4. Typy přenosných počítačů


Laptop a notebook je označení pro přenosný počítač, který svým výkonem odpovídá zhruba výkonu stejného
stolního počítače. Rozdíl v názvu je spíše marketinkový, nikdo nedokáže přesně určit kde je hranice mezi
laptopen a notebookem. Obecně se označení laptop používá pro starší, větší přenosné počítače. V současné době
se používá hlavně označení notebook.
I zde však dochází k dalšímu dělení - kategorie subnotebook je počítač o něco menší a lehčí než je u notebooků
obvyklé, ale za cenu kompromisů (např. menší display, neobsahuje CD-ROM...)
Další kategorií jsou tzv. Palmtop počítače (i když označení se liší u každé firmy). Obecně se jedná o počítače do
dlaně. V poslední době se rozšířila další kategorie postavená okolo operačního systému Microsoft WindowsCE
(operační systém (OS) navržený speciálně pro přenosná a méně výkonná zařízení-velice podobný svému
"většímu bratrovi" Windows 95/98). Počítače používající tento OS jsou buď Pen-based (tzn. nemají klávesnici a
k ovládání se používá elektronické pero, s kterým se píše po obrazovce) nebo jsou to malé počítače i s klávesnicí
připomínající větší organizéry. Tyto počítače jsou díky OS kompatibilní s MS Windows, existují i pro ně stejné
verze programů, i když trochu upravené pro tyto počítače (Word, Excel...). Jejich největším konkurentem (a
zatím úspěšnějším) je počítač PalmPilot se svým vlastním operačním systémem a dále organizer od firmy Psion
(rovněž svůj vlastní operační systém).
Laptopy a notebooky
Charakteristický vzhled, v odklápěcím víku je vestavěn displej z tekutých krystalů (odrazový nebo se spodním
nebo bočním prosvětlením). V zadní části je umístěna veškerá elektronika včetně disketové jednotky.
Zabudovaný jepevný disk . Klávesnice je menší než je standardní klávesnice u stolního PC, v zadní části je
umístěna baterie, příp. vyvedeny výstupy pro přídavné desky. Rozměry jsou zhruba jako formát papíru A4 (proto
označení notebook = sešit), váha 1kg až 5 kg.
Displej je jednou z nejdůležitějších částí.
Pasivní displeje jsou černobílé (při pohledu z boku obraz buď zmizí, nebo se přemění na inverzní). Barevné
displeje (DSTN) se používají pro běžné programy, mají dobré zobrazení - užití pro kancelářské aplikace.
Aktivní barevný displej (TFT) má vyšší kontrast obrazu a rychlejší zobrazování informací, má větší spotřebu a
větší hmotnost. Principem je, že pro každý zobrazený bod jsou většinou využity tři tranzistory, které obsahují
barevný filtr.
Rozlišovací schopnost:
640x480 nebo 800x600 rozlišovacích bodů
Procesory Intel 386 (dnes už pouze ve výprodejích) až po nejnovější z řady Pentium nebo AMD. Procesory jsou
speciálně navržené pro notebooky, mají menší příkon.
Pevný disk je relativně levnější část notebooku - 800 MB a pro složitější grafické programy je vyžadováno až
1,35 GB.
Polohovací zařízení - ovládá kurzor (obdoba počítačové myši)

• trackball - tzv. myš na zádech, ovládá kurzor pomocí kuličky 16, 19, 25 mm, nevýhoda - nabalování
nečistot
• trackpoint - malý joystick
• touchpad - destička před klávesnicí - neobsahuje žádné mechanické prvky

Lze připojit i klasickou myš.


Baterie

• NiCd - až 500 nabíjecích cyklů (nevýhoda - pamě?ový efekt)


• NMH - niklmetalhydridové
• Lithioiontové - jsou nejlepší (nevýhoda - možnost poškození při přebíjení)

Notebook - 2 až 3 hodiny nepřetržitého provozu.


Pamě?ový efekt - zdroj nelze nabít na maximální kapacitu, pokud není zcela vybit.
Většinou se používají nízkopříkonové obvody CMOS (nejmenší energetická náročnost, spotřeba), napájecí
napětí je v rozsahu 7 - 14 V.
Power management - správa odběru elektrického proudu, schopnost notebooku optimálně nastavit časy, po
jejichž uplynutí se uvedou do klidového stavu momentálně nevyužívané části.

5. Doplňková zařízení
porty, zvuková karta, CD ROM, PCMCIA (PC card) - je standardní rozhraní pro připojení externích zařízení
(faxmodem, sí?ová karta), které mají formát kreditních karet.
Docking station - zařízení, do kterého se připojuje notebook (je vybaveno zdrojem a jsou k němu připojena
všechna doplňková zařízení). Notebook se do tohoto zařízení zasadí a máme plnohodnotný stolní počítač, pokud
jedeme někam na cestu, notebook zase vyjmeme a používáme jako notebook. Výhoda: data zůstávají na jednom
místě, není potřeba je kopírovat z notebooku na stolní PC a obráceně.
Penbased - PCS
Jsou bezklávesnicové notebooky a lze je ovládat perem, dotýkajícím se displeje LCD. Pero funguje nejen jako
ukazatel (myš), ale mohou se s ním psát na displej např. znaky, počítač je sejme, rozpozná a zobrazí na displeji
standardní znaky. Obrazovka nemá žádné ukazovátko (kurzor) indikující, kde lze začít psát. Uživatel může začít
psát a kreslit na displeji, kde chce. Z toho je odvozen i název - zápisnikové počítače. Rozměry jsou stejné jako u
notebooku, ale hmotnost je výrazně menší.

Scannery
Požadavky na konfiguraci - 80486, 16 MB RAM, rychlý disk, z důvodu, že při skenování se převádí množství
dat, např. při rozlišení 300x300 dpi formátu DIN A4 - 26 MB.

Doba naskenování je čas od počátku skenování až po vytvoření obrazu na monitoru (v minutách).

Barevná hloubka - většinou 24 bitů, pro každou barvu 8 bitů.

Základní barvy: červená, modrá, zelená. Barevný skener umí pracovat i černobíle, lze převést do odstínu šedi.
Rozhraní - většinou paralelní nebo SCSI. Jelikož se požadavky někdy odlišují, řada výrobců dodává jako součást
i hardwarové karty.

Softwarové zabezpečení - každý skener má vlastní softwarový balík.

Princip:

Obrazová předloha je po řádcích osvětlována a odražené světlo je vedeno přes optický systém k přijímači, který
je tvořen senzory, nebo prvky na bázi fotobuněk. Přijímač pak převádí obrazovou informaci na digitální signál a
posílá ji dále počítači.

CCD - Change Coupled Device (řádkový postup)

Přijímač je složen ze stovek fotobuněk. Elektrický signál je úměrný síle světla, které dopadá na buňku. Signál,
který odpovídá jednom pixelu v obraze, je přeměněn na binární číslo. Tmavá místa, která reflektují méně světla,
obdrží nízká čísla, opačně pak světlá místa. Standardem je CCD s 256 stupni šedi, nebo stupni světlosti. Pro
rozlišení 300x300 dpi na předloze DIN A4 jsou potřebné řádky CCD asi s 2600 prvky. U dražších skenerů
(bubnových) se používají fotonásobiče. Jako zdroj světla se většinou používají zářivky. Senzory jsou u
černobílých i barevných stejně. U barevných je obrazová předloha snímána třemi různými barvami. Ze tří dílčích
skenů pak vznikne výsledný obraz.

U stolních:

• 3 pass postup
• 1 pass postup

3 pass postup - celá plocha je nasnímána 3x s různými barevnými filtry. Tzv. true color skenery registrují při
každém průchodu 8 datových bitů na pixel, tzn. barevná hloubka 24 bitů, zobrazení 16,7 mil. barev.
1 pass postup - je rychlejší, předloha je snímána po řádcích všemi třemi barvami, touto metodou pracují
vtahovací skenery.
HP používá 3 přijímače CCD a každým z nich je snímána informace pro jednu určitou barvu, přičemž obraz je
osvětlován dvěma bílými zářivkami a reflektované světlo se dostává k senzorům před dva filtry.

Tiskárny
Požadavky:

• kvalita tisku
• rychlost tisku
• podpora české národní sady
• cena

Rozdělení podle principu tisku

• impact printers (přítlak raznice nebo jehliček na pásku)


• non - impact printers

Impaktní tiskárny
Nejrozšířenější jsou jehličkové tiskárny.
Jehličkové tiskárny
Výhody: jednoduchost obsluhy, nízká cena.
Princip: v tiskové hlavě jsou umístěny jehličky s elektromagnety. Ty jsou propojeny s elektronikou plochým
kabelem. Z řídící elektroniky jsou přiváděny proudové impulzy, kterými jsou vystřelovány jehličky na základě
tvaru tištěného znaku. V daný okamžik jsou přitlačeny k barvící pásce a za ní se nacházejícímu papíru. V
současné době se používají vícejehličkové (9 - 24) - každé lince v rastru přísluší vždy jedna jehla. Znak je
vytvářen pohybem hlavy zprava doleva v krocích, které odpovídají vždy jednomu sloupci v rastru. Některé
pracují i s obousměrným tiskem. Platí, že kvalita tisku je tím větší, čím více jehliček je obsaženo v matici.
Výšky znaků, vytvořené 9 a 24jehličkových tiskáren jsou stejné, 24jehličková hlava používá na znak více teček.
Proto vytváří více kvalitní obraz.
Neimpaktní tiskárny
Laserové tiskárny
Princip: vychází se z technologie elektrostatického kopírování. Na začátku si tiskárna vezme list papíru z
podavače a papír se nejprve pokryje elektrostatickým nábojem. Na tiskový buben se přivádí vysoké napětí (6
kV). Laser prochází po fotocitlivém válci a umisťuje na něj přesné signály, které odpovídají tištěným znakům.
To je jediná funkce laseru, jinak nepřijde s papírem do styku. Až laser uloží signály na válec, tiskárna vypustí
toner, který se přitáhne k nabitým oblastem válce a vytvoří tištěné znaky. Papír, který je nabit na opačnou
polaritu, se vsune pod válec a toner se přenese na papír. Papír pak projde závěrečnou fází, ve které lampy o
vysoké intenzitě trvale spojí toner s papírem. Náboj je přenášen pomocí velmi tenkého drátu - koronační drát.
Dělení laserových tiskáren:

• podle rozlišení: 300 dpi a více


• podle rychlosti: 4,5 str./min. a více
• podle velikosti paměti: 0,5 MB a více

Testování: systémový autotest po zapnutí, testuje se: ROM s programy, ROM s vestavěnými fonty, rozhraní
tiskárny, led diody.
Tryskové tiskárny
Kvalitou tisku se tyto tiskárny blíží laserovým tiskárnám.
Princip: tiskárna vytváří znaky na papíru kapkami inkoustu, které vyletují z jemných trysek uspořádaných v
tryskové hlavě. Uspořádání je sloupcové a barvivo je stříkáno ze zásobníku, který je umístěn za nimi. Soustava
je tvořena systémem piezokeramických trubek, které jsou schopny stříkat 80 tis. kapek/sec. Soustava trubek je
přímo spojená se zásobníkem barviva, který u hlavice s 24 trubičkami postačí pro vytisknutí asi 3 mil. znaků.
Proti zaschnutí inkoustu je čelo trysek vybaveno vzduchotěsným uzávěrem. Uzávěr se otevírá automaticky před
započetím tisku a uzavírá po skončení. Pro případ, že se některá tryska zanese, jsou některé tiskárny vybaveny
speciální rutinou, která po stisknutí určitých ovládacích tlačítek pročistí zanesené trubky tlakem inkoustu.
Princip stříkání kapek je takový, že elektrický impuls přivedený na odporový tepelný článek způsobí ohřátí v
určitém místě trubičky, tímto ohřátím dochází k odpaření inkoustu ve formě bublinek. Ty vyvolají tlak, jenž
vytlačí kapičku inkoustu z trysky na papír. Po skončení impulsu se teplo ztrácí a bublinky se smršťují, tím
vzniká podtlak, který způsobí nasátí nového inkoustu do trubičky. Kompletní konstrukce hlavy je jednoduchá a
hlavice se vyrábí spolu se zásobníkem jako jeden celek.

Tryskové tiskárny
Kvalitou tisku se tyto tiskárny blíží laserovým tiskárnám.
Princip:
Tiskárna vytváří znaky na papíru kapkami inkoustu, které vyletují z jemných trysek uspořádaných v tryskové
hlavě. Uspořádání je sloupcové a barvivo je stříkáno ze zásobníku, který je umístěn za nimi. Soustava je tvořena
systémem piezokeramických trubek, které jsou schopny stříkat 80 tis. kapek/sec. Soustava trubek je přímo
spojená se zásobníkem barviva, který u hlavice s 24 trubičkami postačí pro vytisknutí asi 3 mil. znaku. Proti
zaschnutí inkoustu je čelo trysek vybaveno vzduchotěsným uzávěrem. Uzávěr se otevírá automaticky před
započetím tisku a uzavírá po skončení. Pro případ, že se některá tryska zanese, jsou některé tiskárny vybaveny
speciální rutinou, která po stisknutí určitých ovládacích tlačítek pročistí zanesené trubky tlakem inkoustu.
Princip stříkání kapek je takový, že elektrický impuls přivedený na odporový tepelný článek způsobí ohřátí v
určitém místě trubičky, tímto ohřátím dochází k odpaření inkoustu ve formě bublinek. Ty vyvolají tlak, jenž
vytlačí kapičku inkoustu z trysky na papír. Po skončení impulsu se teplo ztrácí a bublinky se smršťují, tím
vzniká podtlak, který způsobí nasátí nového inkoustu do trubičky. Kompletní konstrukce hlavy je jednoduchá a
hlavice se vyrábí spolu se zásobníkem jako jeden celek.
Barevné tiskárny
Barva (barevné světlo) je elektromagnetické vlnění o vlnové délce mezi 60 až 700 nm. Např. vlnová délka kolem
400 nm odpovídá fialové barvě, 500 nm zelené apod.
Realizace záření na těchto vlnových dékách:

• přímý zdroj záření


• odrazem - bílé světlo (žárovka) dopadá na povrch a je odraženo. Odrazí se právě ta část spektra, která
odpovídá barvě předmětu.

Používají se dvě metody:

1. aditivní (monitory)
2. substraktivní (tiskárny)

Principem je interakce tří primárních substraktivních barev - azurová, purpurová a žlutá (cyan, magenta, yellow).
Příslušný odstín se získá překrytím těchto barev v tiskovém bodě. Překrytím se získá 8 základních barev:
azurová, purpurová, žlutá, modrá, červená, zelená, bílá, černá. Pokud tam není žádná ze základních barev,
dostaneme bílou. Pokud jsou všechny tři, dostaneme černou.
Princip překrytí - je označován jako CMY. Mnoho tiskáren obsahuje ještě separátní černou barvu, principem
překrytí je pak CMYK.
Parametry:

• dpi, počet vytištěných bodů na palec, pro kvalitní tiskárny 300 dpi a více
• lpi, počet tiskových řádek na palec
• počet barev - kolik barevných odstínu je tiskárna schopna zpracovat.

Přenos barevného bodu na papír:


Jehličkové - kromě standardní černé pásky obsahuje ještě čtyřbarevnou (CMYK). Kromě základních barev lze
odstínu dosáhnout překrytím základních barev. Výsledný obraz vzniká po řádcích, kdy při jednom projetí hlavy
je nanášena jedna barva. Nevýhoda: malá rychlost a ulpívání (zanechávání) barev na jehličkách.
Inkoustové - tisk vzniká vystříknutím kapky Pro tisk se používají dvě technologie:

• INJEKT (piezoelektrická)
• BUBBLEJET (odpařovací)

INJEKT
Principem je řízená změna objemu piezoelektrického krystalu. Když dojde elektrický impuls na destičku
krystalu, jeho přední strana se vymrští dopředu a protlačí tryskou inskoust.
BUBBLEJET
Tisková hlava je vybavena komůrkami pro inkoust a příslušnými topnými tělísky. Tělísko je prudce ohřáto a v
komůrce nad ním, která je naplněna inkoustem příslušné barvy, vznikne bublinka, přetlak, a inkoust se vytlačí.
Kvalitní tisk je jen na kvalitním papíře (rozpíjení).

Voskové tiskárny
Tepelný přenos vosku.

Nejrozšířenější tiskárny s profesionálními nároky.


Barvonosným médiem je fólie z umělé hmoty, na které jsou za sebou v barevných plochách naneseny buď tři
barvy CMY nebo čtyři barvy CMYK.
Princip: papír se přesně zachytí v bubnu, který se pomalu otáčí. Přes takto upnutý papír přejíždí barvonosná
fólie, ze které se přenáší barvivo (barevný vosk) v bodech, kde se má tisknout. Tisk je 3 nebo 4 průchodový. Při
každém průchodu (jedna otáčka bubnu) se přenáší jedna základní barva. Tisková hlava je tvořena topnými
keramickými tělísky v jedné řadě (asi 300 na palec). Barvonosný vosk se roztaví a přenese na papír. Tělísko
přenese v daném tiskovém bodě buď více nebo 100 % primární barvy. Celé barevné spektrum, tzn. vytvoření
libovolného barevného tónu se provádí tak, že v matici tiskových bodů, např. 5x5 se vyplňují některé jejich body
jednou ze čtyř základních barev (tzv. modifikace rastru, nebo polotónování).
Laserové barevné tiskárny
Používá se standardní postup, toner je tvořen jemnými zrnky barvy a obsahuje čtyři barevné náplně CMYK. Na
válec se vypálí obraz vždy jedné barevné složky, kde k nabitým místům se přichytí částečky barevného toneru a
obraz se přenese na papír.
Sublimace barev
Jsou nejkvalitnější barevné tiskárny. Přincip je obdobný jako u voskových, médiem je fólie, která nese 3 nebo 4
barvy, ale jejich chemické složení je jiné. Barvy mají tu vlastnost, že při zahřátí se uvolňuje barvonosný plyn v
množství, které je přímo úměrné teplotě. Tzn., že lze přenést libovolné zastoupení barevné složky do tiskového
bodu.
Barevné plotry
Obvykle realizují 8 nebo 12 barev a obsahují sestavu per, naplněných inkoustem. Nedovedou tvořit barevné
odstíny.

Fonty (písma) na tiskárnách


Parametry:

• typ (Courier, ...)


• řez (tučné, šikmé, ...)
• velikost

Fonty mohou být:

• vnitřní - jsou implementovány přímo v tiskárně (deska řídící elektroniky - ROM, PROM)
• nahraditelné - na disketách v souboru, zavádí se do paměti tiskárny

Tisk na síťových tiskárnách:


Řádkové příkazy:

• NPRINT (tisk do souboru)


• CAPTURE (přesměrovává port na síť)
• ENDCAP (zruší CAPTURE)
• PSC

Menu příkazy

• PCONSOLE
• PRINTCON
• PRINTDEF

Hlavní pojmy:
Sdílená tiskárna - tiskárna připojena k serveru, na níž lze tisknout z jiných stanic
Tiskový server - je program běžící na serveru (.NLM modul) nebo vyčleněné stanici (EXE soubor), může
obsluhovat jednu až šestnáct tiskáren
Tiskové fronty - jsou fronty tiskových úloh na serveru, může být libovolný počet tiskových front, zakládá je
supervizor pomocí PCONSOLE
Jméno tiskové fronty - je znakový řetězec, jednoznačně identifikující tiskové fronty v rámci jednoho serveru
Tisková úloha - obsahuje kopii souboru, který se má vytisknout a požadavky na způsob vytisknutí (počet kopií,
jméno formuláře). Zadává se přes NPRINT, CAPTURE a PCONSOLE.
BANNER je úvodní identifikační stránka z výstupu tiskové úlohy, obsahuje: jméno uživatele, číslo spojení
stanice, ze které byla úloha zadání se serverem , jméno tištěného souboru, jméno adresáře, jméno tiskové fronty,
jméno tiskového serveru, který provedl tisk, datum a čas tisku.
Konfigurace tiskové úlohy - definuje se v PRINCON.
Formulář - definuje se v PRINTDEF, přiřazuje se mu jméno a číslo.

Tisk v síti je založen na vytváření tiskových front (queue), které jsou tvořeny na serveru jako mezisklad
požadavků uživatelů.
NPRINT název souboru PRINT Q_O
Na serveru adresář PRINT Q_O

Supervizor musí:

• vytvořit fronty
• provést konfiguraci PRINT serveru
• provést aktivaci PRINT serveru

Typy uživatelů:
Operátor tiskového serveru - má právo ovládat tiskový server, fronty, formuláře tiskáren atd.
Operátor tiskové fronty - má právo ovládat tiskovou frontu, měnit pořadí úloh, zastavovat frontu
Uživatel tiskové fronty - smí posílat do fronty nebo v ní rušit své tiskové úlohy

Připojení tiskáren:

• paralelní
• sériové

Paralelní rozhraní- používají na napětí a na jiné sledy signálů pro navazování spojení.
Při použití sériového rozhraní je nutno nastavit správné přenosové (komunikační) parametry.

• Rychlost (1.200, 1.400, 2.800, 9.600 atd.).


• Parita (sudá, lichá, žádná).
• Počet datových bitů (7 nebo 8).
• Počet stopbitů (1 nebo 2).

Parametry jsou v příručce o technické obsluze tiskárny.


C:\MODE COM 1:9600,N,8,1,P
MODE LPT 1=COM 1
První příkaz nastavuje sériový port na stejné hodnoty jako má tiskárna. Druhý příkaz sdělí DOSu, že jeho tiskové
zařízení je na prvním sériovém portu a ne na paralelním (autoexec.bat).

ÚVOD DO ASP
Technologie Active Server Pages (ASP) se na Internetu stala běžným pojmem, i přestože se dá říci, že je docela
nová. Poskytuje efektivní dynamické generování stránek, dokázala zčásti vytlačit i takové technologie jako CGI
a PHP. V tomto článku se dozvíte něco do úvodu o programování ASP

Na Internetu jste se již určitě setkali s dokumentem, který měl příponu ASP. Pro koncového uživatele se soubor
jeví jako obyčejné HTML. Jak je to ale na straně serveru?

ASP je skript, který dynamicky generuje dokument formátu HTML. Obsah výsledného dokumentu je závislý na
mnoha věcech. Může to být například:

• zadaná data do formuláře a posléze poslaná skriptu


• aktuální datum, čas... (hlášení typu Dobré ráno, Dobré odpoledne)

Každý dokument se generuje individuálně. Tzn. odkáže-li se uživatel na dokument s příponou ASP, je dokument
nejprve vygenerován a teprve poté poslán uživateli.
Nyní si ukážeme, jak takový ASP skript pracuje. Nejprve si prohlédněte toto jednoduché schéma, abyste měli
představu o průběhu vytváření výsledného dokumentu:

Toto schéma je příkladem funkce skriptu, který generuje uvítací zprávu pro návštěvníky stránky v závislosti na
aktuální čas (na serveru).
Hlavní výhodou skriptu je to, že jeho obsahem je HTML dokument, do něhož jsou pouze vloženy příkazy pro
generování proměnných částí stránky. Skript ASP najde využití hlavně při práci s databázemi. V praxi to může
vypadat tak, že uživatel do formuláře ve svém prohlížeči zadá hledaný výraz. Obsah fomuláře se odešle skriptu,
ten prohledá databázi a vygeneruje výsledný dokument HTML, který obsahuje výsledek hledání.
Pro tvůrce WWW stránek je však důležité promyslet si, pro co využít obyčejného HTML dokumentu a pro co
nasadit ASP skript. Každé otevírání dokumentu ASP totiž může hodně zatěžovat server, který musí vykonávat
příkazy pro generování dokumentu. Mnoho příkazů se může přenést prohlížeči k uživateli např. v podobě
JavaScriptu, který může sám vykonat již zmíněný příklad (viz. schéma výše). Dále je nutno optimalizovat kód
skriptu, tedy stažit se vytvořit skript co nejrychlejší, aby byl server co nejméně zatížen.
Za výhodu ASP lze považovat i volnost při výběru skriptovacího jazyka. ASP lze totiž programovat prakticky v
jakémkoliv programovacím jazyku, server ho však musí ovládat. Standartně se používa jazyk VisualBasicScript
(zkráceně VBScript), který se jen nepatrně odlišuje od programování ve Visual Basicu (umíte-li Visual Basic a
HTML, nebude to vůbec těžké vytvořit ASP skript), dále je to JScript, který je obdobou JavaScriptu.
Jak se v ASP odlišuje HTML od skriptovacích příkazů? Příkazy se uzavírají mezi znaky <% a %>. A zde si
ukážeme příklad, jak vypadá vnitřek originálního, ještě serverem nezpracovaného, ASP souboru. Příkaz
response.write slouží k výpisu následující proměnné nebo výrazu a funkce Now vrací aktuální datum a čas na
serveru.
Dnešní datum a čas je <% response.write Now() %>
V tomto příkladu se nezávisle na skutečnostech do výsledného dokumentu vygeneruje text "Dnešní datum a čas
je" a dále následuje obsah proměnné Now(). U uživatele tedy může přijmutý dokument vypadat takto:

Dnešní datum a čas je 28/06/1999 15:47:36


Dalším příkladem si ukážeme, jak by mohl vypadat skript, který vykonává příkazy uvedené ve schématu.
Musíme ještě uvést, že příkaz Dim vytváří novou proměnnou, funkce Hour vrací hodinu z proměnné času.
Příkaz If slouží k vykonání příkazů, je-li slněna podmínka.
Struktura příkazu If:

If podmínka then
příkazy při splněné podmínce
ElseIf podmínka 2 then
příkazy při nesplněné předchozí podmínce a splněné podmínce 2
Else
příkazy pří žádné nesplněné podmínce
End If

Teď jste se seznámili s některými příkazy a funkcemi a nyní již ke slíbenému příkladu:
Růžičkova stránka o růžích
<%
Dim Hodina
Hodina = Hour(Now)
If Hodina >= 8 And Hodina <= 18 Then
%>
Dobrý den
<% ElseIf Hodina >= 18 And Hodina <= 21 then%>
Dobrý večer
<% Else %>
Dobrou noc. Ještě nespíte?
<% End If %>
Opět nás někdy navštivte, nashledanou.
Bude-li 10 hodin, zobrazí se vám tato stránka:

Růžičkova stránka o růžích


Dobrý den
Opět nás někdy navštivte, nashledanou.

Užití ASP je samozřejmě velice široké, protože široké jsou schopnosti skriptovacích jazyků. Lze využívat funkcí
systrémových knihoven, ActiveX objektů a dalších programů, pracovat s databázemi a dalšími soubory. Zde jsou
obecné příklady využití:

• vypisování hlášek v závisloti na datumu a čase


• výpis položek databáze podle zadaných kritérií
• posílání registračních informací a jejich následné automatické zpracování
• odpovídač na různé dotazy
• hledání souborů, HTML dokumentů
• posílaní vzkazů

Toto je pro začátek k úvodu do ASP skriptu pro začátečníky. Máte-li jakékoliv dotazy, napiště, abych věděl, o
čem mám psát v dalším díle.

ASP A FORMULÁŘE

Jediným způsobem, jak pro potřeby skriptu ASP získat od uživatele konkrétní data je odeslat je pomocí
formuláře tomuto skriptu. Skript však musí umět tyto informace zpracovat. Jak na to, se dozvíte v tomto článku
na praktické ukázce.

Už jste asi viděli mnoho formulářů, které po vyplnění odeslaly vámi zadaná data na server a poté se objevila
odpověď či vyhodnocení vašich údajů. V tomto článku najdete popis, jak na to jednoduše a rychle. K otestování
výsledku vámi vytvořených formulářů a skriptů však budete potřebovat server, protože zde použité ASP skripty
v jazyku VBScript potřebují ke své práci Web Server. K tomu účelu může samozřejmě posloužit Microsoft
Personal Web Server, který je nabízen zdarma.
ASP (Active Server Pages) jsou skripty, které obsahují kód buď VBScript, nebo JavaScript. Slouží ke
zpracování, vyhodnocení a výpisu výsledků dle toho, co jim bylo zadáno. K předání zadaných informací slouží
dvě metody.
Za prvé metoda GET, která informace předá jako parametry.
Příklad: http://www.server.cz/delej.asp?parametr1=hodnotax&parametr2=hodnotay
V tomto případě budou ASP předány parametry parametr1 (s hodnotou "hodnotax") a parametr2 (s hodnotou
"hodnotay")
Druhá metoda se nazývá POST - údaje jsou předány přímo.

Popis užití a příklady budou popisovány s metodou GET a v jazyce VBScript.

Nejprve založíme formulář, např. takto vypadající:

Zde je jeho zdrojový kód:

<form METHOD="GET" ACTION="Doit.asp">


<p><select name="action" size="1">
<option value="1">Převod na velká písmena</option>
<option value="2">Převod na malá písmena</option>
</select><input name="data" value="Text" size="33"><input TYPE="submit" VALUE="Převést"></p>
</form>

Tato řádka popisuje, že při odeslání formuláře (tlačítkem Převést) bude použita metoda GET a data budou
poslána souboru Doit.asp:

<form METHOD="GET" ACTION="Doit.asp">

Popis základních funkcí jazyka VBScript použitých v tomto příkladě:

Dim založení promněnné


IsNumeric zjišťuje, zda promněnná obsahuje numerickou hodnotu
UCase převod na velká písmena
LCase převod na malá písmena
Request.QueryString(parametr) vrátí hodnotu parameru předaného metodou GET

Zde je zdrojový kód souboru DOIT.ASP

<% @Language="VBScript"%>
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<title>Výsledek dotazu</title>
</head>
<body>
<%
Dim Req, Act, Nazev, Dat,x
Act = Request.QueryString("action")
Dat = Request.QueryString("data")
If not IsNumeric(Act) Then %>

<p>Chyba: Parametr Action musí být číselná hodnota!<%Else


If Act = 1 Then
Req = UCase(Dat)
Nazev = "Převod textu na velká písmena (funkce UCase)"
ElseIf Act = 2 Then
Req = LCase(Dat)
Nazev = "Převod textu na malá písmena (funkce LCase)"
Else%> </p>

<p>Chyba: Tuto akci skript nepodporuje (<%=Act%>)<% End If

If Act > 0 And Act < 3 Then %></p>

<table border="1" width="391">


<tr>
<td width="85">Akce:</td>
<td width="294"><% =Nazev %>
</td>
</tr>
<tr>
<td width="85">Původní text:</td>
<td width="294"><% =Request.QueryString("data") %>
</td>
</tr>
<tr>
<td width="85">Výsledek:</td>
<td width="294"><% =Req %>
</td>
</tr>
</table>
<%
End If
End If
%>
</body>
</html>

Tento ASP skript provede zvolenou operaci a vrátí vygenerovanou hodnotu. Převede text na malá či velká
písmena.

Příklad výsledku dotazu:

Akce: Převod textu na malá písmena (funkce LCase)


Původní text: Text převáděný na MALÁ PÍSMENA
Výsledek: text převáděný na malá písmena

Funkční formulář i s vyhodnocením můžete najít na hlavní stránce o ASP.

ASSEMBLER - jazyk symbolických adres


Program je tvořen dvěma druhy klíčových slov:

• direktivami
• instrukcemi.

Direktivy nevytvářejí kód programu, ale řídí činnost překladače.


Instrukce jsou symbolickým zápisem strojových instrukcí procesoru.

Syntaxe zápisu instrukce:


návěští instrukce cíl, zdroj ; komentář
Návěští je symbolické jméno, které označuje offset v daném segmentu.
Návěští:
blízká (NEAR)
vzdálená (FAR)
Blízká návěští představují pouze offsetovou část adresy. Používají se v případě, že se na návěští odkazujeme v
rámci segmentu, ve kterém je definováno. Identifikátor blízkého návěští se od instrukce odděluje dvojtečkou.
Vzdálená návěští představují kompletní adresu. Pro definici vzdáleného návěští se používá direktiva LABEL.
Cíl a zdroj jsou operandy instrukce. Operandem může být registr, konstanta, paměťové místo.
Komentář je libovolný text, oddělený od instrukce středníkem.

Direktivy nemají přesnou syntaxi zápisu. Pro označení proměnných, návěští, konstant se používají symbolická
jména - identifikátory. V assembleru je identifikátor libovolné slovo složené ze znaků: $, % , - , ?, A...Z, a...z, 0-
9. Identifikátor nesmí začínat číslicí a nelze pro ně použít rezervovaná slova. Malá a velká písmena se v
assembleru nerozeznávají.

Paměť je rozdělena na segmenty o velikosti 64 kB. Každý segment je určen segmentovou adresou, která je
uložena v některém ze segmentových registrů. Velikost adresy je 16 bitů. Posunutí v segmentu je relativní
adresa, vzhledem k jeho počátku, určuje offset. Instrukce programu leží vždy v segmentu označeném registrem
CS. Direktiva MODEL umožnuje automatické definování segmentů a jejich vlastností.
Syntaxe:
MODEL paměťový model
Paměťový model blíže určuje jedno ze slov, slovo určuje velikost programu.:

• TINY
• SMALL
• MEDIUM
• COMPACT
• LARGE
• HUGE
• THUGE
• TPASCAL
• FLAT

např. MODEL TINY


Všechny segmenty začínají na stejné adrese a velikost programu nesmí překročit 64 kB, tj. jeden segment. Tento
model je nutno používat pro programy typu .com.

Šablona pro psaní programu typu .com:


IDEAL; zvolení režimu překladače
MODEL tiny; určení velikosti programu
DATASEG; označení datového segmentu
CODESEG;
STARTUPCODE;
<zde bude umístěn kód programu>
EXITCODE; ukončení programu
END

• IDEAL - zvolení režimu překladače.


• STARTUPCODE - direktiva pro označení začátku programu. Zajistí naplnění segmentových registrů.
• CODESEG - označuje segment, ve kterém je umístěn kód programu.
• DATASEG - označení datového segmentu.
• EXITCODE - ukončení programu a návrat do operačního systému.

DATA
Pro definici dat je syntaxe:
[jméno] direktiva [výraz [, výraz...]]
Jméno je identifikátor, který označuje paměťové místo, je to ukazatel na místo v daném segmentu. Obsahuje
adresu a instrukce o velikosti dat. Velikost určuje direktiva:
Direktiva Velikost
DB 1 byte
DW 2 byte (slovo)
DD dvojslovo (32 bitů)
DQ čtyřslovo (64 bitu)
DF 6 bytů (80386 ukazatel FAR)
DP 6 bytů (80386 ukazatel FAR)
DT 10 bytů (pro reálná čísla)
Výraz: definuje obsah paměťového místa. V případě, že nechceme inicializovat, uvedeme ?. Když ano,
uvedeme libovolnou číselnou hodnotu nebo výraz, který se vyhodnotí na číselnou hodnotu. U direktivy DW lze
inicializaci provést pomocí řetězce znaků, uzavřeného v úvozovkách nebo apostrofech. Jednotlivé znaky se
nahradí ascii hodnotami, kde se pro každý znak vytvoří místo o velikosti 1 B. Výrazy se vyhodnocují při
překladu zdrojového textu. Základem výrazu jsou konstanty. Číselné konstanty se mohou zapisovat ve dvojkové,
osmičkové, desítkové a šestnástkové soustavě. Číslo musí vždy začínat číslicí. Implicitní soustava je určena
direktivou RADIX. Číslo v jiné než implicitní soustavě se napíše tak, že se za něj napíše základ (znak).
RADIX
Syntaxe:
RADIX základ
Základ - 2, 8, 10, 16.
Soustava Znak
Dvojková B
Osmieková O,Q
Desítková D
Šestnáctková H

Postup při vytváření programu typu .com:

1. Vytvoříme v některém z editorů soubor .asm.


2. Přeložíme příkazem TASM jméno souboru - vznikne soubor .obj (relativní program).
3. Příkazem TLINK jméno souboru / t vytvoříme soubor .com a spustíme.

Větvení programu:
Ve vyšších programovacích jazycích se provádí příkazy IF, GOTO, atd. U asembleru se větvení provádí pomocí
instrukcí skoku.
Instrukce skoku: podmíněné, nepodmíněné.
Nepodmíněný skok
Syntaxe:
JMP [vzdálenost] cíl
Cíl je návěští, na které chceme skočit, pokud skáčeme uvnitř segmentu, je vzdálenost NEAR, jinak FAR.
Např.
JMP NEAR Reet
..
..
Reet: MOV DX, OFFSET BUFFER

Podmíněný skok
Syntaxe:
J podmínka návěští
Provádí se na základě nastavení jednotlivých bitů v registru příznaků. Návěští u podmíněného skoku musí být ve
vzdálenosti -128 až +127 bytů od instrukce skoku. Podmínka určuje, kdy se skok provede. Před provedením
instrukce podmíněného skoku je nutno nastavovat bity v příznakovém registru. Provádí se instrukcí CMP.
Např.
CMP BL,2
JA ERROR
..
..
ERROR:MOV DX,OFFSET MESSAGE
MOV AH,09H
INT21H

CMP
Syntaxe:
CMP cíl, zdroj
Instrukce odečte zdroj od cíle a podle toho nastaví bity v příznakovém registru, obsah cíle ani zdroje se nemění.
Cykly
V assembleru se realizují pomocí instrukcí skoku. Pomocí JNZ je realizován cyklus DO - WHILE.
Příklad:
CODESEG
..
návěští:
<tělo cyklu>
JNZ návěští

Cyklus FOR (for i =1 to 10):


MOV CX,1
LOOP1,<tělo cyklu>
INC CX
CMP CX,10
JNZ LOOP1
Jeden z registrů se použije jako čítač, který při každém průchodu dekrementuje nebo inkrementuje a před
podmíněným skokem porovnáváme s nějakou hodnotou.

Instrukční soubor 80386


NOP
Syntaxe:
NOP
Prázdná instrukce, neprovádí nic, změní jen obsah čítače programu.

INC
Syntaxe:
INC reg
Instrukce přičte ke svému operandu jedničku a výsledek do něj opět uloží.

DEC
Syntaxe:
DEC reg
Instrukce odečte od svého operandu jedničku a výsledek do něj opět uloží.

DIV
Syntaxe:
DIV oper
Instrukce dělí celá čísla bez znaménka, má jen jeden operand, výsledkem dělení je dvojice čísel: celočíselný
podíl, celočíselný zbytek.
Velikost operandu Dělenec Dělitel Podíl Zbytek
8 bitů AX operand AL AH
16 bitů DX:AX operand AX DX
32 bitů EDX:EAX operand EAX EDX
Např. při bytovém dělení je dělenec v registru AX, podíl v AL a zbytek v AH. Znamená to, že umístění dělence,
podílů a zbytků závisí na velikosti operandů.

Zásobník
LIFO (Last In First Out)

Ukládají se přechodně: obsahy registrů, návratové adresy.


Údaj naposled vložený do zásobníku zaujímá vždy nejnižší adresu. Zásobník je vymezená souvislá část paměti
RAM. Nejnižší adresa je vrchol zásobníku. Adresa vrcholu zásobníku je obsažena v ukazateli SP. Údaje jsou do
zásobníku vkládány v pořadí. Na vrcholu je vždy údaj, který byl vložen jako poslední. Zásobník se plní směrem
k nižším adresám a vyprazdňuje směrem k vyšším adresám. Zvyšování nebo snižování obsahu provádí
mikroprocesor při instrukcích, pracujících se zásobníkem.
Vyjmutí ze zásobníku:
POP
Syntaxe:
POP oper
Instrukce vyjme slovo nebo dvojslovo ze zásobníku a uloží ho do operandu. Pak se k obsahu registru SP
přičtou 2, pokud je vybíráno slovo nebo 4, pokud je vybíráno dvojslovo. Při vybírání ze zásobníku se adresa SP
zvyšuje.
Příklad: POP AX

POP A
Instrukce vybírá 8 základních registrů ze zásobníku:
DI, SI, BP, SP, BX, DX, CX, AX. Lze ji nahradit osmi instrukcemi POP.

Ukládání na zásobník:
PUSH
Syntaxe:
PUSH oper
Instrukce uloží obsah registru, paměti nebo přímo hodnotu na zásobník. Ukazatel vrcholu zásobníku ukazuje na
naposledy uloženou položku. Nejprve se odečtou od obsahu registru SP 2 (ukládáme-li slovo) nebo 4 (ukládáme-
li dvojslovo), takže registr SP ukazuje na volné místo. Pak se zapíše obsah registru, paměti nebo konstanty. Při
ukládání do zásobníku se adresa registru SP snižuje.

PUSH A
Instrukce ukládá 8 základních registrů do zásobníku:
AX, CX, DX, BX, SP, BP, SI, DI. Po provedení této instrukce je obsah registru AX na nejvyšší adrese v
zásobníku a DI je na nejnižší adrese v zásobníku.

ADD
Syntaxe:
ADD oper1, oper2
Instrukce provádí součet dvou operandů. oper1 = oper1 + oper2
Např:
MOV AX,2
MOV BX,3
ADD AX,BX ; AX [5]

MOV
Syntaxe:
MOV oper1, oper2
Instrukce naplní operand oper1 operandem oper2, přitom oper2 zůstane beze změny.
Např:

MOV BX,4
MOV BX,AX

MUL
Syntaxe:
MUL oper1
Instrukce provádí násobení celých čísel bez znaménka.
Velikost 1. činitel 2. činitel Součin
8,00 AL operand AX
16,00 AX operand DX:AX
32,00 EAX operand EDX:EAX
1. oper1 je 1B

Oper1 se vynásobí registrem AL a výsledek se uloží do AX. Když je výsledek větší než 1B,
nastaví se příznaky OF a CF, jinak se oba příznaky nulují.

2. oper1 je slovo

Oper1 se vynásobí registrem AX a výsledek se uloží do DX a AX tak, že nižší část výsledku je


v registru AX a vyšší v DX. Je-li výsledek větší, nastaví se OF a CF.

3. oper1 je dvojslovo

Oper1 se vynásobí registrem EAX a výsledek se uloží do EDX a EAX tak, že nižší část
výsledku je v registru EAX a vyšší v EDX.

SUB
Syntaxe:
SUB oper1, oper2
Instrukce provádí odčítání celých čísel. oper1 = oper1 - oper2
Logické instrukce
AND
Syntaxe:
AND oper1, oper2
Instrukce provádí logický součin operandů podle vzorce. oper1 = oper1 AND oper2
Instrukce AND
1. bit 2. bit Výsledný bit
0 0 0
0 1 0
1 0 0
1 1 1

NOT
Syntaxe:
NOT oper1
Instrukce provádí negaci všech bitů operandu oper1 tak, že bit s hodnotou 1 bude nulový a naopak.
Příklad: NOT BX

OR
Syntaxe:
OR oper1, oper2
Instrukce provádí logický součet operandů podle vzorce. oper1 = oper1 OR oper2
Instrukce OR
1. bit 2. bit Výsledný bit
0 0 0
0 1 1
1 0 1
1 1 1

XOR
Syntaxe:
XOR oper1, oper2
Instrukce provádí neekvivalenci operandů podle vzorce. oper1 = oper1 XOR oper2
Instrukce XOR
1. bit 2. bit Výsledný bit
0 0 0
0 1 1
1 0 1
1 1 0

Procedury
Procedura je libovolná část kódu programu, která je ukončena instrukcí RET. Návěští označuje začátek
procedury.
CALL
Syntaxe:
CALL oper1
Instrukce provede vstup do podprogramu tak, že nejprve se na zásobník uloží návratová adresa a pak se provede
skok do podprogramu. Návratová adresa: segment - vyšší část adresy, offset - nižší část adresy. V závislosti na
tom, zda podprogram ve stejném segmentu jako hlavní program je i: NEAR - na zásobník se uloží jen offsetová
část adresy.
Podle typu volání je i instrukce RET: RETN, RETF.
Instrukce RET způsobí návrat z procedury.
RET
Syntaxe:
RET oper1
Oper1 udává, kolik bytů se odstraní ze zásobníku po vyjmutí návratové adresy.
CODESEG
..................
CALL NEAR PROC1
....................
PROC1:
;zde bude kód procedury
RETN

Schéma procedury v ASM


Volání direktivou PROC
Schéma volání
..
..
CODESEG
..
..
CALL PROC2
..
PROC PROC2
;zde budou instrukce procedury
RET

Při použití direktivy MODEL nemusíme specifikovat, zda je procedura blízká nebo vzdálená. Překladač vybere
správný typ podle zadaného modelu. Předávání parametrů pomocí zásobníku:
na zásobník se umístí předávané parametry instrukcí PUSH.
Např:
MOV AX,PARAM1
PUSH AX
MOV AX PARAM2
PUSH AX
CALL PROC2
Adresa Obsah
SP Návratová adresa
SP + 2 Parametr 2
SP + 4 Parametr 1
Po návratu z procedury je nutno hodnoty ze zásobníku vyjmout. Provádíme instrukci POP.

Bridge
Lokální pocítacové síte se v poslední dobe cím dál tím více zproneverují svému prívlastku "lokální"; jejich dosah
se zacíná merit spíše na kilometry než na metry a pocet jejich uzlu se mnohdy místo na jednotky pocítá na
desítky až stovky. Budování takovýchto sítí pak ale již zacíná narážet na ruzná technická omezení, vyplývající z
použitého druhu kabeláže. O tom, jak je tomu pri použití koaxiálního kabelu, jsme se již zminovali
v predchozích vydáních této rubriky - jakmile je treba propojit uzlové pocítace na vetší vzdálenost, než dovoluje
jeden souvislý segment kabelu (tj. 500 metru u tzv.
tlustého ci 185 metru u tzv. tenkého koaxiálního kabelu), nebo je třeba zapojit více stanic, než kolik je prípustné
pripojit k jednomu segmentu (tj. 100 u tlustého a 30 u tenkého kabelu), je zapotrebí použít více kabelových
segmentu. Ty je ovšem nutné mezi sebou vhodne propojit. Jak jsme si již také naznacili, takovéto propojení je
vždy realizováno "krabickou", která ale muže fungovat více ruznými zpusoby. Minulý díl této rubriky jsme
venovali jedné z možností, spocívající v prubežném zesilování signálu, prenášených jedním nebo druhým
smerem, a v jejich nezbytné regeneraci. Šlo tedy o prípad, kdy zmínená "krabicka" funguje jako pouhý digitální
zesilovac, který všechno, co "zaslechne" z jedné
strany (tj. z jednoho kabelového segmentu), okamžite "zopakuje" druhé strane (druhému segmentu, resp. všem
ostatním segmentum, které jsou na nej napojeny). Proto se takto fungujícímu zarízení ríká opakovac (repeater).
Pokud bychom chteli opakovac zaradit do nekteré z vrstev, které se dnes u
pocítacových sítí s tak velkou oblibou rozlišují, pak by nutne šlo o tu nejnižší z nich (oznacovanou jako fyzická).
Opakovac totiž skutecne pracuje na nejnižší možné úrovni, na které rozlišuje pouze jednotlivé bity (resp.
diskrétní stavy císlicových signálu), ale nijak nevnímá jejich význam. A práve to je jeho
velkou výhodou i nevýhodou soucasne. Jelikož se opakovac nemusí zdržovat interpretací jím procházejících dat,
muže být velmi rychlý - muže pracovat "v reálném case" a okamžite predávat z
jedné strany na druhou skutecne vše, co kde zaslechne. To ale není zdaleka vždy výhodné.
Predstavme si jednoduchý príklad: dva kabelové segmenty spojené opakovacem a ctyri uzlové pocítace A, B, C
a D pripojené tak, že uzly A a B jsou na jednom segmentu a uzly C a D na druhém. Ted si predstavme, že uzel A
práve komunikuje s uzlem B. Jelikož se oba tyto uzly nachází ve stejném segmentu, mohla by veškerá jejich
komunikace zustávat pouze "uvnitr" tohoto segmentu a
vubec by nemusela být prenášena i do druhého segmentu, kde navíc brání prípadné soubežné komunikaci uzlu C
a D. Pokud jsou ale oba segmenty spojeny opakovacem, ten není schopen rozpoznat, co by mohlo zustat lokální,
a co nikoli, a proto musí prenášet z jednoho segmentu do druhého skutecne vše. Nevhodnost takovéhoto
zpusobu fungování opakovace je v sítích typu
Ethernet ješte umocnena podstatou jejich prístupové metody, která pripouští možnost tzv. kolizí (neboli situací,
kdy více uzlu zacne vysílat najednou - viz CW 33/93). V ethernetovských sítích kolize opakovaci prochází, a šírí
se tak z jednoho segmentu do všech ostatních (i když její prícina muže mít
Lokální charakter). Pokud bychom chteli, aby "krabicka" mezi dvema kabelovými segmenty sama
dokázala rozpoznat, co musí prenést z jedné strany na druhou, a co naopak nemusí, pak je treba ji vybavit urcitou
mírou inteligence. Pokud tato inteligence stací práve na to, aby se "krabicka" dokázala
sama rozhodnout, zda data mohou zustat lokální v urcitém segmentu (a pak s nimi jednoduše nic
nedelat), nebo zda nikoli (a pak se zachovat jako opakovac a rozeslat je do všech ostatních segmentu), pak jde o
tzv. bridge (cesky: most, nekdy též: mustek). Kdybychom tento požadavek ješte zprísnili a chteli, aby "krabicka"
v tomto druhém prípade nerozesílala data do všech ostatních segmentu, ale vybrala z nich jen jeden (ten, který
leží na ceste ke konecnému príjemci), pak by již šlo zase o jiný druh "krabicky" (o tzv. smerovac, o kterém si
budeme povídat príšte). Most tedy ke své funkci potrebuje znát formát prenášených dat, a to alespon natolik,
aby si z nich dokázal odvodit, kdo je jejich príjemcem a kdo odesilatelem. Krome toho pak potrebuje i informaci
o tom, které uzly
se nachází ve kterých segmentech. Tuto druhou skupinu informací muže most získat ruznými zpusoby. Jednou z
možností je apriorní "vyplnení tabulky", kterou most ve vhodné forme dostane
pri svém spuštení a podle které pak pracuje, aniž by ji sám jakkoli menil. To je jiste velmi robustní rešení,
vhodné pro takové síte, jejichž konfigurace se mení jen zcela výjimecne. V praxi je ale toto rešení používáno jen
velmi málo, protože existují jiná, ješte výhodnejší rešení. Jedním z nich je nezadávat mostu apriorne umístení
jednotlivých uzlu síte v konkrétních segmentech, ale ponechat na nem, at si tuto informaci zjistí sám. To je
možné, protože most musí analyzovat každý prijatý blok dat
a sledovat, kdo je jeho odesilatelem a kdo jeho príjemcem. Most si tedy muže dát do souvislosti adresu
odesilatele se segmentem, ze kterého príslušný blok dat prijal, a z toho si odvodit, že odesílající uzel se nachází
práve v tomto segmentu. Takto se most dokáže postupne sám naucit vše, co ke své práci potrebuje. Na pocátku
je sice "úplne hloupý", ale tím není nijak narušena korektnost jeho fungování - je pouze méne efektivní, a to ješte
jen na relativne velmi krátkou dobu. Jestliže totiž most na pocátku ješte nedokáže rozpoznat, že urcitý blok dat
by mohl zustat lokální v príslušném
segmentu, rozešle jej i do všech ostatních segmentu. Z první odpovedi se však již dokáže náležite poucit.
Takovýto zpusob fungování mostu se oznacuje jako transparentní (transparent bridging), a príslušné mosty se
pak podle toho oznacují jako transparentní. Nekdy se v této souvislosti používá i výstižný prívlastek samoucící
(self-learning). Mosty tohoto typu jsou velmi oblíbené zvlášte v sítích typu Ethernet, kde se jiné druhy mostu
prakticky nepoužívají. Pro korektní funkci mostu je ovšem velmi duležitý jeden predpoklad: jednotlivé kabelové
segmenty síte nesmí být propojeny pomocí mostu tak, aby zde vznikaly cykly (tj. musí jít o acyklický graf, resp.
o dusledne stromovitou strukturu). Jinak
by totiž samoucící se most mohl "zaslechnout" jeden a tentýž blok dat (tj. od jednoho a téhož odesilatele) z více
stran a nedokázal by si správne odvodit, ve kterém segmentu se tento odesilatel nachází. Mosty samozrejme lze
vybavit další inteligencí, která jim umožní rozpoznat a odstranit prípadné zacyklení síte. O tom si ale povíme
zase až nekdy príšte.

Brouter, gateway
Pojmy opakovac (repeater), most (bridge) a smerovac (router), kterými se to v dnešních pocítacových sítích jen
hemží, mají jednu velkou prednost - jejich interpretace je vzácne jednotná. Když se napríklad rekne opakovac, je
ihned jasné, že jde o takové zarízení, které propojuje dva ci více segmentu pocítacové síte, a samo pracuje na
úrovni fyzické vrstvy. Most také propojuje dva ci více segmentu, ale pracuje na úrovni bezprostredne vyšší, tj. na
úrovni linkové vrstvy, zatímco smerovac pracuje na ješte vyšší úrovni, a to na úrovni sítové vrstvy. Existuje
dokonce i prechodný typ mezi smerovacem a mostem - zarízení, kterému se v anglictine ríká brouter (jako
složenina od: bridge/router). Zpusob fungování tohoto zarízení vychází vstríc takovým protokolum, které vubec
nepocítají s existencí sítové vrstvy, a klasický smerovac, který pracuje práve na úrovni této sítové vrstvy, by si s
nimi nedokázal
poradit. Príkladem je obstarožní protokol NetBIOS pocítacu PC, ale obdobne je na tom napríklad i protokol LAT
firmy DEC. S takovýmito protokoly si však dokáže poradit zmínený brouter - pokud narazí na takový protokol,
který pocítá s existencí sítové vrstvy a je možné jej tzv. smerovat, pak se brouter chová jako smerovac. Pokud
však narazí na jiný protokol, který nedokáže smerovat (tj. zpracovat na úrovni sítové vrstvy), pak se zachová
jako most (bridge). Existuje však ješte další termín, který se v souvislosti se vzájemným propojování sítí velmi
casto používá: gateway (cesky: brána). Tento termín již nemá zdaleka takové štestí, jako opakovac, most,
smerovac i brouter -
jeho interpretace se casto dosti ruzní. Nekdy je tento pojem používán jako spolecný zastrešující termín pro
všechny ostatní termíny: v tom smyslu, že napríklad most je takový druh brány, která
pracuje na úrovni linkové vrstvy, zatímco smerovac je taková brána, která pracuje na úrovni sítové vrstvy. Jindy
je brána (gateway) ztotožnována jen se smerovacem. Význacným príkladem je terminologie sítí na bázi rodiny
protokolu TCP/IP: zde se pod pojmem gateway (brána) bežne rozumí smerovac. V soucasné dobe se ale i zde
zacíná místo nesprávného pojmu gateway používat mnohem správnejší termín IP router (IP smerovac). V užším
slova smyslu se ale bránou rozumí takové zarízení, které pracuje na úrovni ješte vyšší, než je vrstva sítová (tj. na
transportní až aplikacní
vrstve). Pro správné pochopení významu bran je dobré si uvedomit jednu významnou skutecnost: pocítacové
síte nejsou všechny stejné. Práve naopak, často se mohou i velmi významne lišit. Na tom, jak dalece se liší, pak
závisí i možnosti jejich propojení na úrovni jednotlivých vrstev. Obecne platí, že
cím vetší je odlišnost, tím vyšší je vrstva, na které je možné realizovat jejich vzájemné propojení.
Z tohoto pohledu pak brána slouží k propojování tech nejvíce odlišných sítí. Velmi casto pracují brány až na
úrovni nejvyšší, tj. aplikacní vrstvy, kde zajištují prevod dat mezi jednotlivými aplikacemi. Príkladem mohou být
ruzné druhy poštovních bran (mail gateways), které umožnují predávat elektronickou poštu z jedné síte do druhé.
Ruzné síte totiž mohou používat ruzný formát jednotlivých zpráv (hlavne hlavicky), jiný zpusob adresování, a
napríklad i jiný zpusob kódování jednotlivých znaku v tele i hlavicce zprávy. Zajistit potrebnou konverzi pak
dokáže až brána, pracující na aplikacní úrovni, protože pouze na této úrovni muže "vnímat" strukturu
prenášených dat, a dokáže tak rozpoznat jednotlivé zprávy a správně interpretovat (a zkonvertovat) jejich
obsah. Pro brány, pracující na nižší úrovni, by šlo jen o souvislý proud dat, jejichž význam by na této úrovni již
nebyl znám.

Hub
Jedním z nejtvrdších oríšku naší soucasné pocítacové terminologie je bezesporu vhodný preklad anglického
termínu hub. Ne ani tak proto, že i v anglictine je obsah tohoto pojmu znacne široký - problémem je spíše ubránit
se jeho doslovnému poceštení, které v sobe skýtá opravdu netušené
možnosti: jak by se vám napríklad líbily sebevedomé reklamní slogany typu: "Naše huby jsou ty nejlepší!" ci
nabídky nových služeb, hlásající: "Opravujeme rozbité huby". Kdoví, možná by na to prispela i Všeobecná
zdravotní pojištovna, když podle soucasných zákonu uživatelé fakticky platí zdravotní pojištení i za výpocetní
techniku, kterou si museli porídit z cistého zisku své firmy, a
odepisovat ji mohou jen postupne. Nebo že by tato služba prišla nekdy vhod tomu, kdo to takhle vymyslel?
Vratme se ale radeji zpet k meritu veci. V minulém vydání této rubriky (na téma: transceiver, drop cable, AUI a
BNC) jsme si popisovali, jakým zpusobem se v sítích sbernicového typu pripojují na spolecné prenosové
médium jednotlivé uzly. Pritom bylo podstatné, že tímto prenosovým médiem byl koaxiální kabel, umožnující
vytváret vícebodové spoje. Co ale delat v prípade, kdy chceme použít jiný druh prenosového média – napríklad
kroucenou dvoulinku ci optické vlákno - které umožnuje vytváret pouze dvoubodové spoje? Tedy které
umožnuje propojit mezi sebou práve a pouze dva úcastníky? Zde jsou v principu vylouceny jakékoli odbocky
prímo na vlastním spoji a jediným rešením se stává vytvorení odbocek ješte v rámci výstupních obvodu (budicu
a prijímacu), ke kterým se prenosové spoje teprve pripojují. Vlastne to znamená vytvorit pro každý jednotlivý
dvoubodový spoj samostatné prípojné místo, s vlastními budici a prijímaci, vlastním konektorem atd. Pokud pak
budeme chtít vytvorit sít s kruhovou topologií, budeme potrebovat, aby každý její uzel mel dve takováto prípojná
místa - po jednom pro spoj s každým ze svých dvou sousedu. Pro stromovou topologii (odpovídající binárnímu
stromu) bychom potrebovali v koreni dve prípojná místa, v listech
bychom vystacili s jediným, ale ve všech ostatních uzlech bychom potrebovali tri. Podobne pro hvezdicovou
topologii - zde bychom ve všech uzlech krome stredového vystacili opet s jediným prípojným místem, ale ve
stredovém uzlu jich potrebujeme tolik, kolik je ostatních uzlu. No a práve zde by asi již nebylo únosné
(predevším z konstrukcních duvodu), aby všechna tato prípojná místa, se všemi souvisejícími obvody a
konektory, byla zabudována do vlastního uzlového pocítace (to muže být únosné pro dve ci ctyri místa, ale již
asi ne pro 32, 64 atd.). Zde se stává výhodnejším rešit tato prípojná místa jako samostatný konstrukcní celek,
který ve své podstate funguje jako rozbocka a nahrazuje odbocky prímo na vlastním spoji odbockami
vytvorenými ješte v rámci budicích obvodu. No a práve takovémuto konstrukcnímu celku se v anglictine ríká
hub. V doslovném prekladu znamená anglické "hub" náboj ci hlavu kola, hrdlo trubky nebo zarážku a v
preneseném významu pak hlavu, stred ci centrum (napr. "up to the hub" - až po krk, "a hub of commerce" -
stredisko obchodu apod.). Své místo má i ve slangu: napríklad mestu Boston se nekdy ríká "Hub of the
Universe". "Pocítacový" hub je pak obecne jakékoli zarízení, které slouží k rozvetvení kabeláže v pocítacových
sítích, resp. k soustredení více individuálních spoju do jednoho místa. Proto je asi vecne nejsprávnejší prekládat
tento anglický termín jako rozbocovac ci rozvetvovac, méne vhodne pak jako koncentrátor (protože tento pojem
již je používán k oznacování neceho jiného - viz dále). V praxi ovšem existuje široká škála ruzných hubu
(pardon: rozbocovacu). Ty nejjednodušší jsou pouze pasivními rozbockami, které nijak neupravují prenášený
signál a ani jej nezesilují. Ponekud dokonalejší verze rozbocovacu pak mohou soucasne fungovat i jako digitální
zesilovace a zesilovat prenášený signál (aniž by jej jakkoli logicky vyhodnocovaly ci zpracovávaly). S temito
dvema druhy rozbocovacu se mužeme setkat
napríklad u sítí ARCnet, kde jsou oznacovány jako pasivní, resp. Aktivní rozbocovace. Huby (rozbocovace)
jsou ovšem i tzv. jednotky MAU (Multistation Access Unit), používané v sítích Token Ring firmy IBM. Jde o
samostatné "krabicky", ke kterým lze pripojit až 8 uzlových pocítacu (pokud tento počet nedostacuje, lze
pridávat další jednotky MAU). Zajímavé je to, že jednotlivé uzlové pocítace se pripojují prímo na jednotky
MAU tak, jako kdyby šlo o sít s hvezdicovou topologií (v jejímž stredu je jednotka MAU). Ve skutecnosti
ovšem jde o kruhovou topologii - jednotlivé uzly se sice pripojují jediným kabelem, ale ten je tvoren dvema
spoji, které s pomocí propojení uvnitr jednotek MAU vytvárí kruh. Jakou to má logiku? Zkuste si predstavit
"normální" kruh, ve kterém z každého
uzlu vedou dva kabely, každý na opacnou stranu. A ted si predstavte, že s tímto uzlem se neco stane - at již se
samotným uzlovým pocítacem, nebo s kabely, které jej propojují s obema jeho sousedy. Závada na tomto
jediném uzlu vyradí z cinnosti celý kruh. Náprava není principiálne težká - nejprve je
třeba lokalizovat závadu a pak docasne preklenout místo, kde k ní došlo (napr. natažením provizorního kabelu,
který opet uzavre prerušený kruh). Pokud je ale kruhová topologie realizována fyzickým usporádáním do
hvezdy, je mnohem snazší hledat závadu na jediném míste (v jednotce MAU) a odstranit ji jednoduchým
odpojením té prípojky, která závadu zpusobuje. Navíc je možné
vybavit jednotku MAU vlastní inteligencí, která jí umožní, aby sama lokalizovala prípadné závady, a dokonce i
to, aby sama prijala nezbytná nápravná opatrení, odpojila vadné uzly, a informovala o tom správce. V síti, která
má nekolik málo uzlu, je to možná zbytecný luxus, ale když máte na starosti sít se stovkami ci tisíci uzlu, pak
jiste velmi oceníte, když se sít dokáže o sebe postarat sama. Další výhodou centralizovaného propojení s
využitím rozbocovacu je ivetší flexibilita - prípadné zmeny v kabelových rozvodech lze provádet velmi snadno,
pouhým odpojením od jednoho prípojného místa a pripojením k jinému. Velká výhoda je i v tom, že samotné
rozbocovace (huby) lze zapojovat do stromu, a tak velmi jednoduše rozširovat pocet prípojných míst tam,kde
jsou zapotrebí. Práve toto zrejme byl hlavní duvod, proc se použití rozbocovacu výrazným zpusobem prosadilo i
do sítí typu Ethernet, které predpokládají sbernicovou topologii. Souvisí to i s nástupem tzv. kroucené dvoulinky
jako alternativy ke koaxiálnímu kabelu, pro který byl standard Ethernetu puvodne vyvinut. Zatímco ale koaxiální
kabel umožnuje vytváret vícebodové spoje, kroucenou dvoulinku lze použít jen pro spoje dvoubodové. Proto si
její nasazení prímo vynutilo používání rozbocovacu (hubu), což ale zase na druhé strane umožnilo vytváret
kabelové rozvody se stromovitou ci ruzne kombinovanou strukturou
místo jednoho souvislého kabelu, který musel procházet kolem všech jednotlivých uzlu a který stacilo prerušit v
jediném bode, aby celá sít byla mimo provoz. Vybavení nekterých rozbocovacu vlastní inteligencí pak prineslo
cetné další výhody v oblasti správy síte, a také tím zvýšilo její celkovou
provozní spolehlivosti. Pro správné pochopení pojmu "hub" je dobré si ješte naznacit, v cem se liší
od zarízení, kterému se obecne ríká koncentrátor. Zkusme si predstavit instalaci zvonku v dome s mnoha byty.
Z každého bytu v urcitém patre vede od zvonku dvojice vodicu na chodbu, kde se pridávají obdobné dvojice
vodicu z ostatních bytu, a spolecne ústí do jednoho spolecného kabelovodu, který je pak vede až k panelu se
zvonkovými tlacítky. Tento kabelovod lze prirovnat ke koncentrátoru, nebot soustreduje jednotlivé dvojice
vodicu a dále je vede spolecne, i když každý z nich si zachovává samostatnou existenci. Když pak stlacíte urcité
zvonkové tlacítko, zacne zvonit zvonek v jednom konkrétním byte. Rozbocovaci (hubu) by naopak odpovídal
jediný dvoužilový kabel, na který by byly z jedné strany pripojeny dvojice vodicu od všech zvonku v
jednotlivých bytech, a na druhé strane jediné zvonkové tlacítko. Po jeho stlacení by pak zvonily zvonky ve všech
bytech.
Koncentrátor je tedy zarízení, které sdružuje n vstupu do jediného výstupu takovým zpusobem, který je vratný
(tj. který umožnuje jednotlivé kanály od sebe zase kdykoli oddelit). Príkladem mohou být takové koncentrátory,
které po jediném spoji prenáší data pro nekolik terminálu (tj. na jednom fyzickém spoji vytvárí více logických
spojení, pro každý terminál jedno), ci ruzné druhy koncentrátoru používaných v telefonní technice (a umožnující
prenášet více telefonních hovoru po jediném kanálu).
Naproti tomu rozbocovac (hub) sdružuje jednotlivé své vstupy nevratným zpusobem - vlastne všechno okamžite
"promíchá". Pokud je vybaven vlastní inteligencí, ta se soustreduje na dohled nad funkcností jednotlivých vstupu
(napríklad na kontrolu, zda nekterý z nich není zkratován apod.), na sber ruzných statistických údaju, na
dynamickou rekonfiguraci (odpojení některých vetví) apod., ale nijak netransformuje data, která jsou
rozbocovacem prenášena.

Metoda Bubble sort a Quick sort


Bubble Sort na pole čísel
Postup:
'Předpokládá se, že položka numbers je pole číselných hodnot
For i = 1 To UBound(numbers) - 1
For j = 1 To UBound(numbers) - 1
If numbers(j) > numbers(j + 1) Then
temp = numbers(j)
numbers(j) = numbers(j + 1)
numbers(j + 1) = temp
End If
Next
Next

Základní pojmy

Řadící metoda
Je obecně postup, jehož provedením získáme setříděný výsledek podle daného kritéria. Každá řadící
metoda má svůj odlišný postup, jakým dá setříděná data na výstup.
Přirozenost metody
Řadící metoda se nazývá přirozená, jestliže doba potřebná k seřazení již seřazené podmnožiny údajů je
menší, než doba potřebná na seřazení zbývající neuspořádané podmnožiny. Pokud tato podmínka není
splněna, pak se metoda označuje za nepřirozenou.
Stabilita algoritmu
Algoritmus je stabilní, jestliže zachovává stejné pořadí záznamů se stejným klíčem. Tato vlastnost je
požadována v těch případech, ve kterých skupiny záznamů se stejnou hodnotou klíčové položky ještě
uvnitř řadíme podle jiného klíče.
Rychlost algoritmu
Někdy také nazývána algoritmická složitost, lze chápat jako počet provedení porovnání klíčových
položek, která jsou nutná pro získání uspořádaní posloupnosti. Algoritmická složitost pro N záznamů je:

• logaritmická O(log N)
• lineární O(N)
• polynomiální O(P(N)) (např. kvadratická O(n2), nebo kubická O(n3) )
• exponenciální O(2N)
• faktoriální O(N!), nebo O(NN)

Už snad jenom pro upřesnění, časově nejvýhodnější je složitost logaritmická, nejhorší případ je složitost
faktoriální a jí podobné.

Metoda přímého výběru

Předpokládejme, že část pole od indexu 1 až po K je seřazená a část od K+1 do N neseřazená. V posloupnosti od


K+1 do N nalezneme minimální prvek (nechť je nalezen na pozici M). Potom tedy prohodíme M-tý prvek s
K+1ním prvkem a za seřazenou považujeme posloupnost od 1 do K+1. Na začátku je uspořádaná posloupnost
prázdná, tj. hledáme minimum z prvků od 1 do K+1 a nalezený prvek prohodíme s 1. položkou.
Metoda nepatří mezi stabilní, a ani není žádným rychlíkem.
var i, j, k: index;
x, pom: prvek;
a: array [index] of prvek;

begin
for j:=1 to n do
begin
x:=a[j];
k:=j;
for i:=j+1 to n do
if x<a[i] then begin x:=a[i]; k:=i; end;
pom:=a[i];
a[i]:=a[k];
a[k]:=pom;
inc(j);
end;
end.

Metoda přímého vkládání

Předpokládejme, že část pole od indexu 1 až po K je setříděná. Vezmeme K+1 prvek a vložíme jej na správné
místo do již uspořádané posloupnosti a za seřazenou považujeme posloupnost od 1 do K+1. Na začátku
považujeme za uspořádanou posloupnost pouze prvek 1.
Metoda se chová přirozeně a je stabilní. Avšak mezi rychlé metody zrovna nepatří.

var i, j: index;
x: prvek;
a: array [index] of prvek;

begin
for i:=2 to n do
begin
x:=a[i];
a[0]:=x;
j:=i-1;
while x<a[j] do
begin
a[j+1]:=a[j];
dec(j);
end;
a[j+1]:=x;
end;
end.

Quick Sort

Metoda Quick Sort je založená na rekurzi. Využívá principu dělení řazeného pole. Řazené pole rozdělíme na dvě
části A a B, pro které bude platit, že všechny prvky z A jsou menší než libovolný prvek z B. Toto provádíme
rekurzivně tak dlouho, dokud celé pole není seřazené. Část algoritmu, která provádí rozdělování pole na části A
a B, může pracovat např. tak, že hledá zleva nejbližší další prvek, který je větší nebo roven dělící hodnotě x, a
hledá zprava nejbližší další prvek, který je menší nebo roven dělící hodnotě x. Tyto prvky se vzájemně
vyměňují. V této činnosti se pokračuje tak dlouho, dokud proti sobě postupující indexy, pomocí kterých se
prochází řazená část pole, nepřekříží. Hodnota x se obvykle volí jako prostřední prvek. (tzv. medián)
Metoda není stabilní a nepracuje přirozeně. Je však jednou z nejrychlejších řadících metod, i když může být
někdy na obtíž přítomná rekurze.

var a: array [index] of prvek;


n: index;

procedure rozdel(l: index; var i,j: index; r: index);


var w: prvek;
begin
i:=l;
j:=r;
x:=a[(l+r) div 2];
repeat
while a[i]<x do inc(i);
while x<a[j] do dec(j);
if i<=j then
begin
w:=a[i];
a[i]:=a[j];
a[j]:=w;
inc(i);
dec(j);
end;
until i>j;
end;

procedure trid(l,r: index);


var i,j: index;
begin
rozdel(l,i,j,r);
if l<j then trid(l,j);
if i<r then trid(i,r);
end;

BEGIN
trid(1,n);
END.

Bubble Sort

Bublinkové třídění je v principu podobné jako metoda přímého výběru, rozdíl je ve vyhledávání minima a jeho
záměna s prvním prvkem neseřazené podposloupnosti. Neseřazená část pole se prochází zprava doleva a
porovnávají se postupně každé dva sousední prvky pole - nejsou-li vzájemně seřazeny ve smysly výsledného
řazení, vymění se.
Co se týče rychlosti, jde snad o nejhorší řadící metodu. Vhodná je jenom k otestování, zda daná posloupnost je
uspořádaná, neboť v takovém případě metoda projde posloupností pouze jednou.

var i,j: index;


x: prvek;
a: array [index] of prvek;

begin
for i:=2 to n do
for j:=n downto i do
if a[j-1]>a[j] then
begin
x:=a[j-1];
a[j-1]:=a[j];
a[j]:=x;
end;
end.

Zapisovací a přepisovací CD-RW mechaniky ukládají data na CD-R a CD-RW média. Na trhu je dnes několik
desítek značek a druhů médií, které se liší cenou i délkou.

Původní specifikace CD hovoří o délce média 74 minut. Toto číslo vzniklo zřejmě proto, aby se na tehdy nové
médium vešla celá Beethovenova Devátá symfonie, která má délku právě necelých 74 minut.
Čtyřiasedmdesátiminutová CD-R a CD-RW média jsou dnes standardem, jejž akceptovali všichni výrobci. Na
takové médium se vejde přibližně 650 MB dat, i když vzhledem ke struktuře souborů nemusí být toto číslo zcela
přesné.

Postupem času se začala vyrábět média také v jiných délkách. Nejdříve se objevily malé disky s průměrem
pouhých 8 cm, na která se vejde 21 minut záznamu, což odpovídá asi 200 MB dat. Pomineme-li to, že jsou
menší, přenosnější a vypadají velmi exoticky, jen stěží najdeme mnoho důvodů pro jejich koupi. Jsou nejen
relativně tedy vůči své kapacitě ale většinou také absolutně dražší než média běžných délek a v některých
přehrávačích mohou způsobovat problémy.

Před několika lety se začaly objevovat CD--R disky s kapacitou 80 minut, které pojmou kolem 700 MB dat.
Původně byly použitelné především pro zálohování či kopírování originálních CD s délkou mezi 74 a 80
minutami, dnes se však pomalu stávají standardem a některé zprávy hovoří dokonce o tom, že na ně výrobci
přejdou ze 74minutových. S 80minutovými CD-R médii nejsou žádné problémy s kompatibilitou, drtivá většina
přepisovacích i CD mechanik je schopna s nimi pracovat, a ani ve spotřební elektronice se nesetkáváme s
potížemi.

Zvláštní variantou disků jsou tzv. Audio CD-R, která mají garantovanou kompatibilitu s audiozapisovačkami v
domácích systémech a jsou také snadno čitelné v CD přehrávačích.

Rovněž na poli CD-RW médií se s příchodem vysokorychlostních vypalovaček udála malá revoluce. Změnou
struktury a chemického složení aktivní vrstvy CD-RW se rozdělila média na klasická a tzv. High Speed CD-RW.
Zajímavé však je to, že High Speed CD-RW jsou použitelná pouze v High Speed CD-RW mechanikách s
rychlostí zápisu 4x až 10x a nelze na ně zapisovat v běžných CD-RW jednotkách.

Ač je to k nevíře, kompaktní disky jsou vynálezem starým už téměř dvacet let. Prvotně byly určeny pouze jako
hudební nosiče, ale postupem času se zjistilo, že je možné použít jich také jako nosičů datových. Na začátku
90. let pak technologie postoupila tak daleko, že bylo možné vytvořit CD bez lisování, speciálním zápisem na
prázdné medium. Tato technika se záhy začala nazývat CD Recordable (CD-R).

CD-RW
Přepisovatelné disky CD-RW jsou dalším pokračováním úspěšné ságy kompaktních disků. Stejně jako u jiných
kompaktních disků je jako nosné médium použit drážkovaný polykarbonátový substrát, na kterém je naneseno
několik vrstev, z nichž ta nejdůležitější je slitina Ag-In-Sb-Te. Protože princip jejich čtení je shodný s jinými
typy CD, i zde se musí využívat různé odrazivosti materiálu. Slitina při běžné teplotě může setrvávat ve dvou
stavech amorfním a krystalickém. Při čtení míst s krystalickou fází laser prostoupí až k reflexní vrstvě a odrazí
se, zatímco v místech s amorfní fází se rozptýlí.
Zápis na CD-RW se provádí laserovým paprskem s vlnovou délkou 780 nebo 650 nm, který ohřeje slitinu
aktivní vrstvy na teplotu 500-700 st. Celsia. Slitina se tak velmi rychle začne tavit a při následném ochlazení
dojde k fázové přeměně do amorfního stavu.
Mazání média se provádí zahřátím slitiny pod teplotu tání avšak nad krystalizační teplotu (200 st. Celsia) po
dostatečně dlouhou dobu. Po ochlazení se fáze slitiny navrátí zpět z amorfní do základní krystalické, a médium
se chová jako prázdné. Tato technologie opakovaných, teplem vyvolaných změn fáze slitiny Ag-In-Sb-Te se
nazývá "Phase Change".
Většina vypalovacích programů dovede disk vymazat buď vcelku, což trvá několik desítek minut, nebo je
možné za pár minut smazat z disku pouze TOC. Také to způsobí, že se médium chová jako prázdné, avšak
zbytky dat na povrchu CD-RW mohou být bezpečnostním problémem v místech s požadovaným utajením.
Následné čtení je stejné jako čtení disků CD-ROM nebo CD-R, jen s tím rozdílem, že čtecí mechanika musí být
uzpůsobena k práci s médii s nižší odrazivostí. Touto vlastností jsou vybaveny všechny nově prodávané CD-
ROM mechaniky.
S CD-RW přišel také nový způsob zápisu. Aby bylo možné použít CD-RW stejně jako disketu, používá se tzv.
Packet Writing. Při zápisu touto metodou se nevytvářejí tracky a sessions stejně jako při klasickém zapisování,
ale data se ukládají do malých paketů s různou nebo stejnou velikostí (podle typu Packet Writingu). Pakety jsou
uzavřeny pouze v bajtech servisních kódů, a proto se výrazně omezují nepříjemné ztráty prostoru na CD při
zápisu metodou Multi-session. Jestliže je však potřeba takto zapsané médium číst v klasické CD mechanice,
software uzavře paketový zápis do několika sessions běžného zápisu ISO 9660.
Také ceny CD-RW médií se od svého uvedení posunuly směrem dolů a dnes je možné koupit jeden kus v
cenách kolem 100 Kč. CD-RW disky se výborně hodí na dlouhodobé zálohování, neboť garantovaná doba
životnosti bývá uváděna nad 30 let. Bohužel však v tomto případě vychází cena uloženého megabajtu dat dost
vysoko, a proto je pro dlouhodobé zálohy lepší použít levnější, avšak stejně odolná média CD-R. Na krátkodobé
zálohy, případně zálohy, které se musejí často nahrazovat novými verzemi, zvlášť s důrazem na možnost čtení v
moderních CD-ROM mechanikách, jsou CD-RW disky tím pravým.

Životnost
Jak jsme již poznamenali, u CD-RW médií je běžně udávaná doba životnosti 30 let. CD-R média se poslední
dobou v tomto parametru dost zlepšila, a dnes se odhaduje životnost vypálených dat na 70 až 200 let. Velké
rozdíly v tomto směru jsou způsobeny různými metodami matematické modelace životnosti materiálu, které
provádějí různí výrobci. V současnosti se vyvíjí norma ANSI pro přesnější a porovnatelnější odhady životnosti
dat na CD-R. V každém případě ještě dnes nelze s jistotou tvrdit, jak dlouho data na CD-R vydrží, neboť
technologie je to příliš mladá, než aby se nějaké větší množství disků již stihlo "zkazit".
Závěrem
Technologie CD-R a CD-RW jsou obrovským průlomem do oblasti osobního i firemního zálohování. Jejich
velkou výhodou je až na výjimky skvělá kompatibilita se stávajícími mechanikami CD-ROM. Také cena
zapisovacích mechanik, CD-R a CD-RW médií i kvalitního softwaru nahrává jejich většímu rozšíření. Velmi
dobře vypadající životnost záznamů je dalším trumfem v boji o zákazníka, který si cení svých dat a zálohuje.
Jestli se na obzoru rýsuje nějaká hrozba pro CD, pak je to jedině DVD a DVD-RAM/RW. Na to si však budeme
muset ještě nějakou dobu počkat.

BIOS
Slovo BIOS je zkratka z angličtiny (Basic Input Ouput Systém) a znamená to: Základní vstupně výstupní systém.
Jinými slovy tvoří rozhraní mezi hardwarem a vyššími vrstvami programového vybavení. Programy které však
přímo kontaktují hardware jsou nepřenositelné a málo univerzální vůči typu počítače. BIOS je pak programová
část počítače velice závislá na typu počítače a jeho technickém uspořádání. Kvůli tomu je pak pro každý typ a
složení třeba jiný BIOS. A tudíž je z toho jasné že je součástí každého počítače typu PC.
Jeho velkou výhodou je , že představuje standardizované programové rozhraní. jelikož vstupní body a parametry
procedur jsou jednoznačně definovány, tedy nezávisí na typu obsluhované periférie, nebo na vývoji počítače ani
na vývoji Biosu samotného. Tento standart ze strany vyšších vrstev je dána tím, že pro přístup k Biosu je
vyhrazená část přerušovacích vektorů, (programové přerušení, realizované instrukcí INT). přičemž jsou pro
BIOS vyhrazeny vektory přerušení: 5H,10H-1FH a 40H-5FH, z nichž část je určena pro přístup k datovým
strukturám. Toto pak umožňuje daný podprogram úplně změnit pouhým přesměrováním vektorů přerušení.
Při čemž BIOS musí plnit i jiné funkce:
- provádí úvodní text po spuštění počítače
- umožňuje nastavit základní parametry počítače
- zavádí operační systém
- poskytuje operačnímu sytému prostředky pro realizaci víceúrovňového prostředí
Aby se činnost Biosu a počítače vůbec spustila musí být BIOS umístěn do pevné paměti počítače v oblasti v níž
mikroprocesor začíná svou činnost po přivedení napájení. Po zapnutí provádí BIOS šest základních kroků:
nastaví konfiguraci počítače z CMOS paměti, provede autonomní test počítače, inicializace periférie, nainstaluje
obslužné rutiny přerušení Biosu, vyhledá svoje rozšíření na přídavných deskách a provádí instalaci těchto
rozšiřujících rutin a konečně spustí zavádění operačního systému.
1. Nastavení SETUP BIOSU

1.1 Standard CMOS Setup

Time (hodiny, minuty, sekundy)


Nastavení času
Date (měsíc, den, rok)
Nastavení datumu
Floppy Drive A, B None, 360K – 2,88M
Určení disketové mechaniky, která je v počítači.
Primary Master/Slave and IDE Secondary Master/Slave
Tato položka obsahuje následující submenu
Type Auto, User Type HDD, CD-ROM, LS-120, ZIP-100
Translation Method Normal, LBA, Large, Manual, Match Partition Table
Normal – tento mód podporuje pevné disky do velikosti 528 MB
LBA (logické adresování bloků) – dřívější módy LBA podporují disky do kapacity 8,4 GB a tento mód používá
odlišnou metodu k vypočítání pozic dat na disku, která jsou přístupná.
Large – Když počet cylindrů přesahuje 1024 a Dos není schopen tento disk podporovat, nebo operační systém
nepodporuje mód LBA, můžeme vybrat tento mód.
Manual – Uživatel si sám disk nastaví
Kapacita
Tato položka zobrazuje velikost disku.
Cylinder
Určuje počet cylindrů pevného disku.
Head
Určuje počet hlav pevného disku.
CHS Capacity
Ukazuje maximální kapacitu v módu CHS.
Maximum LBA Capacity
Ukazuje maximální kapacitu v módu LBA.
Sector
Určuje počet sektorů pevného disku.
1.2 Advanced Setup Page
Trend ChipAwayVirus Enabled, Disabled
Antivirová ochrana chránící počítač proti zásahům.
Quick Boot Enabled, Disabled
Spustí počítač pouze s nezbytně nutnými testy POST, zrychluje start počítače.
1st Boot Device Floppy, CD-ROM, IDE-0, IDE-1, Zip, None
Nastavuje bootovací sekvenci
2nd Boot Device Floppy, CD-ROM, IDE-0, IDE-1, Zip, None
Nastavuje bootovací sekvenci
Try other boot device Yes, No
Pokud se nepodaří nabootovat ze nastavených jednotek, zkouší najít jednotku sám
S.M.A.R.T. for Hard Disks Enabled, Disabled
Umožní IDE harddiskům podporu SMART
BootUp NumLock On, Off
Nastavuje, zda-li se při startu nastaví NumLock na ON či OFF
Floppy Drive Swap Enabled, Disabled
Pokud jsou nainstalovány dvě disketové mechaniky můžeme je mezi sebou přehodit
Floppy Drive Seek Enabled, Disabled
Kontrola disketové mechaniky v průběhu testu POST
Primary Display VGA/EGA
Natavuje jaký monitor máte připojený k počítači
Password Check Setup, Always
Nastavuje zdali a kdy se bude počítač tázat na heslo
Boot to OS/2 Over 64MBYes, No
Umožňuje bootovat OS/2 pokud máte více nežli 64MB operační paměti
Internal Cache Enabled, Disabled
aktivuje vnitřní systémovou cache procesoru L1. Musí být vždy zapnuto! CPU bez cache je jako turbo motor
bez... turba
External Cache Enabled, Disabled
aktivuje externí (i když je někdy uvnitř chipu- Celerony, K6-3...) cache procesoru L2. Pokud je Disabled -
ztrácíte asi 20-30% výkonu. Lepší je nižší frekvence se zapnutou keší než overclockovaný systém s vypnutou
Systém BIOS Cacheable Enabled, Disabled
Dovolí kešovanie BIOSu do RAM. Povolení kešovaní by mělo výrazněji ovlivnit výkon. Ak sa za sebou často
opakuje volanie rovnakej služby, nie je potrebné ísť až do BIOSu, stačí si dáta prečítať z vyrovnávacej pamete
1.3 Power Management Setup Page
Toto nastavení ovlivňuje chování počítače v úsporném stavu - suspend, sleep.
Power Management - základní nastavení celého systému šetření energie. Volba Max Saving nastaví hodnoty
pro maximální úsporu energie. Po určené době nečinnosti vypne systém napájení disků, vypne monitor, sníží
frekvenci procesoru. Další volbou je Min saving - tuto volbu Vám doporučuji. Veškeré timeouty jsou natolik
dlouhé, aby práce byla příjemná a nebyla rušená neustálým vypínáním disků, monitoru... Volba Disabled vypne
veškeré šetřící funkce - projeví se to i ve Windows!
ACPI function - zapnutí moderního automatického managementu a konfigurace periferii. Teprve budoucí
operační systémy využijí jeho služeb naplno (i když jakýsi zárodek funkčnosti ACPI je i v současných Win98 -
není však dotažen do konce). V dnešní době můžete funkci ACPI klidně vypnout - v budoucnu uvidíme... Win
2000.
Ostatní položky menu souvisí se systémem "probouzení" a "uspávání" počítače. Například volby Resume by...
umožňují zapnutí/ probuzení počítače při aktivitě toho kterého zařízení. ATX-ový počítač lze takto zapnout
aktivitou na síti, externím modemem apod...

2.4 PNP /PCI Configuration


Ovlivňuje hospodaření s prostředky IRQ a DMA:
PnP OS Installed: No - pokud BIOSu sdělíme, že je nainstalován operační systém podporující PnP - nebude
BIOS inicializovat zařízení Plug and Play (PnP) a ponechá inicializaci na Windows.
Resources Controlled By: Pokud nastavíme tuto volbu na Auto, nastaví BIOS všechny parametry IRQ a DMA
sám, bez ohledu na případné starší karty ISA. Pokud máme tyto karty a znáte IRQ, musíme nastavit na Manual +
zakázat přidělení těch IRQ a DMA nastavením na Legacy ISA. Například: IRQ 7 = Legacy ISA pro staré SB
Pro...
Reset Configuration Data: po instalaci nového HW nastavíme na Enabled - systém provede při příštím restartu
nové přidělení prostředků.
PCI IDE IRQ Map To: tato volba vám umožní zvolit IRQ pro přístup mezi sběrnicemi PCI a IDE.
Asign IRQ for VGA: přidělí kanál IRQ grafické kartě. Bohužel mnoho moderních karet vyžaduje přidělení
IRQ. Nastavte na Auto.
Asign IRQ for USB: přidělí kanál IRQ sběrnici USB. Pokud používáte USB musíte zapnout.

2.5 Load Optimal Settings


Nastaví BIOS počítače na režim, kdy by měl fungovat v každém případě se vším harwarem. Je to však na úkor
výkonu stroje.

2.6 Load Best Performance Settings


Nastaví BIOS počítače na nejrychlejší režim. Musí však všechna zařízení být 100% kompatibilní a fungovat
správně.

2.7 Hadrware Monitor Page


Zde se dozvíme všechny důležitý údaje o teplotě procesoru, teplotě základní desky, rychlosti otáček chladiče
procesoru, rychlosti otáček chladiče základní desky, voltáže vycházející ze zdroje
2.8 Change Password
Umožňuje změnit nastavené heslo pro přístup do Setupu či pro přístup do celého počítače.

2.9 Exit
Umožňuje opustit Setup Biosu buď s potvrzením a uložením změn nebo bez uložení provedených změn.

Disková rozhraní

ROZDĚLENÍ

• ST 506
• ESDI
• SCSI
• IDE
• Enhanced IDE

ST 506
Používalo se u prvních počítačů PC, je to analogové rozhraní, kdy impulsy jsou vedeny plochým kabelem z
hlavy disku do řadiče a zpět, kde jsou vyhodnocovány. Z tohoto důvodu musí být kabely velmi krátké. Propojení
je dvěma datovými kabely 2 x 20 vodičů. Používaná modulace je MFM. Rozhraní se používá pro disky do
kapacity 40 MB. Možnost napojení dvou disků.

ESDI
Je digitální, používá modulaci RLL, 34 sektorů na jednu stopu. Jedná se o sériovou komunikaci mezi řadičem a
diskem.

SCSI
Je to systém, kdy do základní desky je zasunut řadič speciální sběrnice, ke kterému jsou připojovány jednotlivé
disky. Sběrnice je tvořena 50-ti žilovým kabelem. Maximální vzdálenost mezi propojením zařízení je do 6 m, při
větších vzdálenostech se používá spínač sběrnice. Hostitelský adaptér je iniciátor komunikace i adresát, bývá
připojen do rozšířené sběrnice základní desky. Iniciátor komunikace je libovolné zařízení, které požaduje
komunikaci se zařízením jiným. U normálních konfigurací je iniciátorem základní deska. Adresát je pevný disk s
řadičem. Tento systém umožňuje, aby jako jeden adresát bylo pomocí jednoho adaptéru propojeno až 8 periférií.
SCSI obsluhuje: pevné disky, tiskárny, optické disky, scanery. Příkladem nestandardního použití sběrnice jsou
adaptéry tiskáren, které přemění rozhraní centronix na SCSI. Je to 8 bitové rozhraní.

SCSI 2
Vychází z SCSI, je výkonnější (16-ti a 32 bitová komunikace), možnost napojení různých typů zařízení.

IDE
Nejrozšířenější rozhraní, pro disky WD, řadič umístěn většinou na spodní straně disku. V rozšiřující sběrnici je
zasunuta karta pro oddělení signálů. Řadič je jednoduchý, používají se tzv. kombinované řadiče, které obsahují
porty k připojení: dvou pevných disků, dvou pružných disků, dva sériové porty COM, jeden až dva paralelní
porty LPT, game port. Dva pevné disky jsou obsluhovány jako MASTER-SLAVE. Řadič spolupracuje se
standardním BIOSem.

Enhanced IDE
Vylepšené rozhraní IDE odstraňující některé z nedostatků rozhraní IDE. Umožňuje zapojení až čtyř zařízení,
zapojení i jiných zařízení než jsou pevné disky (např. CD-ROM, páskové mechaniky apod.). Eliminuje omezení
kapacity disku na 512 MB a využívá vyšší přenosovou rychlost.
JAVASKRIPTY
K čemu jsou skripty a k čemu je použít na webové stránce

Použitím skriptu můžete své webové stránky přeměnit ze staticky vyhlížejících na dinamické, které reagují na
podměty uživatelů přímo v jejich počítači aniž by došlo k znovu načtení ze strany webového serveru.To má za
následek odlehčení serveru od neustálého spojení s klientským počítačem a v konečném důsledku i rychlejší
komunikaci s uživatelem internetu. Pomocí skriptů určitě upoutáte případné návštěvníky Vašich stránek, na
kterých jistě pobudou díky ním déle a neodsurfují někam jinam.Skripty můžete ovládat,měnit jakoukoliv část
Vašich stránek bez zásahu ze strany serveru po načtení dané stránky.Změnit můžete třeba obrázek, blok textu
nebo na stránky umístit nějaký zajímavý vizuální efekt.

Skripty v prohlížeči Internet Explorer

Internet Explorer je nejrozšířenějším webovým prohlížečem u nás a proto doporučuji psát skripty určené pro
zpracování tímto prohlížečem.Samozřejmě, že můžete upravit skript tak, aby ho bylo možné bez chybně zobrazit
také v prohlížeči Netscape Navigatoru.Ten ale používá nepatrná část uživatelů.Pokud se rozhodnete své skripty
na stránkách zpřístupnit i uživatelům, kteří používají tento browser, budete muset provést, ne vždy určité úpravy
( to se bude hlavně týkat JS scriptu).Ale pokud se rozhodnete psát skripty pouze pro Internet Explorer nemělo by
to nějak uškodit Vašim webovým stránkám.

Internet Explorer podporuje tyto dva skriptovací jazyky

Microsoft Visual Basic Scripting Edition (VBScript) a upravenou verzi Java Scriptu pojmenovanou Jscript. Dále
ho můžeme doplnit o podporu dalších skriptovacích jazyků jako je například velice známý jazyk Perl.Prohlížeč
funguje totiž jako skriptovací hostitel.Toho lze hlavně využít u aplikací, které používá omezený počet uživatelů a
jenž mohou mít všichni nainstalován příslušný skriptovací stroj.

VBScript

Tento skriptovací jazyk vycází z programovacího jazyka Microsoft Visual Basic, s kterému je velmi
podobný.Internet Explorer je zatím jediným prohlížečem, který ho podporuje.Používá se hlavně na serverech
Microsoft Internet Information Server (IIS) za použití technologie Active Server Pages (ASP).V prohlížeči
Internet Explorer není VBScript součástí minimální instalace, ale v případě potřeby se automaticky nahraje z
Internetu.

Java Script a Jscript

Programovací jazyk Java Script byl vyvinut společností Netscape Communications.S jazykem Java sdílí některé
konstrukce a část syntxe.Jscript je verze Java Scriptu , která je Implementována v prohlížeči Internet
Explorer.Zvětší části by však měl Jscript odpovídat Java Scriptu.Prohlížeče Internet Explorer 4.0 a Netscape
Navigator 4.06 a vyšší podporují standart ECMA-62, ve kterém jsou obsaženy hlavní funkce z jazyků Jscriptu a
Java Script, aby nedocházelo k nekompatibilitě.

Skripty se dají poměrně rychle naučit a snadno použít.Obsahují, ale některá omezení, zejména bezpečnostní
opatření.Neumožňují totiž číst a zapisovat soubory na pevném disku klientského počítače, to proto, aby nedošlo
za nevědomosti uživatele k případné ztrátě či zničení jeho dat. Pokud, ale chceme pracovat se souborovým
systémem počítače, přistupovat k disku lze použít technologii Windows Scripting Host ke spuštění samotného
skriptu mimo prohlížeč pomocí prvku Active X File Systém, který si musí uživatel nainstalovat a aktivovat.
Další omezení se týká příliš pomalého provádění u algoritmicky náročných operacích, které bývají ještě navíc
poměrně složité.
Skripty lze dále použít k ověřování formuláře, multimediálním operacím nebo pro oběktový model dokumentu
(DHTML).

Z pohledu uživatele jsou skripty transparentní a neviditelné.Vytvořený skript lze ihned vyzkoušet v prohlížeči,
bez nutnosti převedení do strojového kódu počítače jako tomu je je třeba u jazyka C++. Skriptovácí jazyky
VBScript a JScript jsou ve své podstatě komplikované a jejich úplné pochopení není příliš snadné, protože
vycházejí s programovacích jazyků a jsou s nimi doslova prorostlé.Ale pro vytvářeni skriptů na webové stránky
nám poskytují velmi výkonný a jednoduchý nástroj.

Software Engineering
Programování je umění - tak to alespoň tvrdí mnozí, kteří se programováním zabývají. Přitom mají v mnohém
pravdu, programování skutečně může být uměním - dokud jsou vytvářené programy takového rozsahu, že je bez
problémů zvládne napsat jediný člověk, v dostatečně krátkém čase, a navíc za takovým účelem, kdy "krása a
elegance" je ceněna více než funkčnost a hlavně spolehlivost celého programu. Jde vlastně o takové
programování, které by bylo možno s jistou mírou nadsázky označit jako "programování v malém".
Ale jak to potom vypadá s "programováním ve velkém"? Jak dopadají velké softwarové projekty, na kterých
musí spolupracovat celé týmy programátorů a dalších odborníků a na jejichž výsledku pak mnohdy bytostně
závisí normální fungování nejrůznějších úřadů, nemocnic, letišť, továren a kdoví čeho ještě? Dopadají většinou
naprosto stejně jako mnohé projekty srovnatelného rozsahu v různých průmyslových odvětvích - například ve
stavebnictví, strojírenství, zemědělství apod. Tedy končí později, než předpokládal původní plán, stojí více, než
na kolik zněl původní rozpočet, a mnohdy ani příliš nesplňují představy toho, kdo jejich vypracování zadal.
Dokonce jsou známy i takové softwarové projekty velkého rozsahu, které musely být ještě v průběhu svého
řešení zcela zrušeny; již proinvestované prostředky pak bylo třeba jednoduše odepsat. Ve světle skutečného
postupu realizačních prací se totiž ukázalo, že původní odhady složitosti, pracnosti a náročnosti těchto projektů
(včetně finanční náročnosti) jsou zpracovány "špatně" ne o nějaká malá procenta či desítky procent, ale o celé
tisíce procent!
Jak se ale takových situací vyvarovat? Jak zajistit, aby i "programování ve velkém" dopadalo dobře, aby
výsledky splňovaly představy zákazníka i dodavatele a měly dostatečnou kvalitu?
Mnozí významní lidé kolem počítačů si poměrně brzy uvědomili, že cesta vede jedině přes utužení disciplíny
neboli přes zavedení určitého řádu a přes aplikaci systematických metod a postupů do toho, co bylo až do té
doby chápáno spíše jako umělecká záležitost, stojící na individuálních schopnostech jedinců - zvláště pak, jde-li
o softwarové projekty většího kalibru. Tento tlak vyšel poněkud překvapivě z akademických kruhů, koncem
šedesátých a počátkem sedmdesátých let, a souvisel jistě i s tím, že práv ě v té době se objevovaly takové
prostředky a metodologie, které většímu dodržování disciplíny v programování vycházely účinně vstříc (viz
minulý příspěvek na téma "Strukturované programování").
Myšlenka, na které bylo navrhované řešení postaveno, je velmi jednoduchá - nechť se i při řešení velkých
softwarových projektů důsledně uplatňují takové postupy a metody, které se v jiných oblastech průmyslu
úspěšně používají pro řešení projektů srovnatelného či ještě většího rozsahu. Dovedeno téměř ad absurdum:
udělejme z "programování ve velkém" průmyslovou výrobu, a používejme pak obdobné nástroje a postupy, jaké
se používají tam. Samozřejmě se vším, co k tomu patří - od důkladné analýzy potřeb zadavatele přes projekční
fáze, organizační a řídicí postupy při vlastní realizaci, pro důslednou kontrolu kvality, testování, školení
uživatelů, řízený přechod na používání nového systému, podporu při provozu atd.
Jde tedy vlastně o důslednou aplikaci vědeckých poznatků, znalostí, postupů a zásad při programování ve
velkém a o ústup od nesystematického přístupu ve stylu "programování je umění". Jde tedy o aplikaci toho,
čemu se v angličtině obvykle říká dosti široce "engineering" a co se pak, aplikováno na tvorbu programových
celků, označuje jako software engineering (neboli softwarové inženýrství).

Structured programming
Máte rádi noviny a časopisy, které vás na první stránce nalákají spoustou lákavých titulků, dále vám nabídnou
několik prvních vět příslušného článku, a pak už vás jen odkáží na stránku xy, kde najdete pokračování? Také se
vám stává, že když vás nějaký titulek a prvních pár vět zaujme a vy se pustíte do hledání další části slibného
článku, že v průběhu tohoto hledání buď zapomenete, co to vlastně hledáte, nebo "po cestě" zaujme vaši
pozornost něco úplně jiného?
Těm, kteří noviny píší a vydávají, se nedivte - vždyť jejich cílem je prodat co možná nejvíce výtisků, a tak se
snaží vtěsnat na titulní stránku co možná nejvíce bombastických titulků a slibných úvodů, které čtenáře nalákají.
Příliš se však již nestarají o to, pomoci čtenáři, aby při čtení "udržel myšlenku".
Má ale takovýto přístup obdobu i ve světě počítačů? Bohužel ano, a mnohdy ne malou. Povšimli si toho mnozí
již v dávných dobách začátků programování, a to v souvislosti s používáním příkazu GOTO, který ve vyšších
programovacích jazycích realizuje skok v programu. Tedy vlastně přenesení řízení z jednoho místa na místo jiné,
které se může nacházet "blízko", ale stejně tak dobře "na hony daleko". Počítači, který takovýto program
provádí, to nijak nevadí - on svou "myšlenku" (představovanou obsahem registrů, paměti atd.) dokáže udržet bez
problémů. Ale co člověk, který takovýto program teprve píše, který jej ladí nebo který se v něm snaží alespoň
nějak orientovat? Pro něj takovýto skok může představovat dosti značnou změnu, při které už pro něj může být
nemalým problémem "udržet myšlenku" a zůstat nadále "v obraze". V důsledku toho se pak také dopouští více
chyb, než by mělo být obvyklé. A co teprve když takovýchto náhlých skoků bude celá řada, budou na sebe
postupně navazovat a půjdou vysloveně "na přeskáčku"?
Tím, kdo poprvé veřejně upozornil na nevhodnost takovéhoto přístupu, byl známý holandský profesor Edsger
Dijkstra - bylo to v dopise, který poslal redakci prestižního časopisu Communications of the ACM a který v něm
byl otištěn v březnu roku 1968 pod titulkem "Příkaz GOTO je považován za škodlivý" ("GOTO statement
considered harmful"). Profesor Dijkstra v tomto článku vyjádřil názor, že kvalita programátorů (a tím i jejich
programů) je nepřímo úměrná počtu použitých příkazů GOTO. Tedy že čím více příkazů GOTO je v nějakém
programu použito, tím hůře je takovýto program srozumitelný pro samotného autora i kohokoli jiného, tím více v
takovémto programu bývá chyb, tím hůře se v něm tyto chyby hledají a odstraňují a tím hůře se takovýto
program v budoucnu upravuje, rozšiřuje atd.
Zmíněný článek profesora Dijsktry odstartoval rozsáhlou polemiku odborné veřejnosti. Ta nakonec vyústila ve
formulování zásad, jejichž dodržování vnáší do vytvářených programů určitý řád, podporuje jejich celkovou
"průhlednost" a srozumitelnost, a tím současně i snižuje riziko chyb, pomáhá při potřebě ladění, usnadňuje
pozdější upravování apod.
Tyto zásady ve své podstatě říkají, že programy by neměly být sestavovány "tak, jak někoho právě napadne",
nekoordinovaným "splácáním" všeho možného, s následným řešení všech důsledků, které takovýto
nekoordinovaný a nesystematický přístup přináší. Místo toho požadují, aby základními stavebními kameny
programů byly takové části, které jsou dostatečně malé a "průhledné" (například bloky po sobě jdoucích
elementárních příkazů), a větší celky pak byly sestavovány z menších celků výhradně pomocí takových pravidel
(resp. s využitím takových programových konstruktů), které zachovávají potřebný řád a strukturu (jako například
podmíněné příkazy, různé druhy cyklů apod.). Naopak tato pravidla požadují, aby byly v maximální možné míře
vyloučeny takové mechanismy a konstrukty, které do programů vnáší chaos (jako právě nešťastný příkaz
GOTO).
Programy psané důsledně podle takovýchto zásad zcela automaticky a vlastně úplně "zadarmo" získávají velmi
přehledné a systematické vnitřní členění (též: vnitřní sktrukturu). Proto jsou také tyto zásady označovány jako
zásady strukturovaného programování (structured programming).

Macro
Programování může být i fyzicky náročnou záležitostí - považujeme-li za fyzicky náročné intenzivní bušení do
klávesnice. Někdy se totiž může stát, že naprogramování něčeho konkrétního dá opravdu hodně práce, resp.
vyžádá si „naťukání" opravdu velkého kusu zdrojového textu. Přitom samozřejmě velmi záleží na schopnostech
a stylu konkrétního programátora, ale nezanedbatelný vliv zde má i výrazová schopnost použitého
programovacího jazyka. Není jistě těžké nahlédnout, že čím vyšší je úroveň programovacího jazyka, tím větší je
semantický obsah jednotlivých syntaktických elementů tohoto jazyka. Neboli, řečeno srozumitelnější mluvou:
tím více znamená to, co v daném jazyce napíši. Zdaleka „nejukecanějšími" jsou proto programy v jazyku
symbolických adres, neboli v asembleru. Zde se mnohdy člověk dříve upíše, než něco skutečně smysluplného
naprogramuje.
Není proto divu, že lidé se brzy začali ohlížet po takových mechanismech, které by jim usnadnily psaní
rozsáhlejších zdrojových textů, a tuto mnohdy dosti monotónní činnost co možná nejvíce zefektivnily. Vcelku
logicky se pak takovéto mechanismy vyvinuly a došly největšího uplatnění u těch „nejukecanějších"
programovacích jazyků, tedy u nejrůznějších asemblerů. Společným charakteristickým rysem všech těchto
mechanismů je skutečnost, že fungují na textové úrovni - můžeme si je představit jako automatické dosazování
celých kusů textu na určená místa. A to ještě dříve, než překladač (asembler) začne doopravdy překládat
zdrojový text.
V souvislosti s těmito mechanismy se používá výstižný termín makro (angl.: macro). Jako tzv. tělo makra se
označuje vzor textu, který má být na určité místo zdrojového programu dosazen. Takovýchto vzorů ale může být
více (samozřejmě různých), a tak každý z nich musí mít vhodné označení - tzv. jméno makra. Vše pak funguje
následujícím způsobem: pokud nechceme nějaký text vypisovat vícekrát, napíšeme jej jen jednou, jako vzor, a
opatříme jej vhodným jménem. Tím tzv. definujeme makroinstrukci (též: makropříkaz, zkráceně jen makro).
Když pak někde potřebujeme napsat stejný text, nemusíme jej skutečně vypisovat - stačí místo něj uvést jméno,
které jsme přiřadili příslušnému makru (makroinstrukci, makropříkazu). Toto se většinou označuje jako volání
makra (macro call), i když to není příliš výstižné: volání by totiž naznačovalo odskok na jiné místo v programu,
zatímco zde k žádnému odskoku nedochází. Zde se naopak vezme příslušný text, a dosadí se na místo, kde bylo
makro voláno. Pokud je makro tímto způsobem voláno například na deseti místech, je efekt stejný, jako kdyby
byl příslušný text desetkrát rozepsán na zmíněných deseti místech (a existoval v deseti exemplářích). Místo
„rozepsání" se však hovoří o tzv. rozvoji makra (macro expansion). Naproti tomu při skutečném volání by
příslušný podprogram existoval jen jednou.
Jak jsme si již naznačili, možnost používat makra vznikla nejprve u různých překladačů jazyka symbolických
adres, neboli asemblerů. Příslušné překladače se pak ale již označovaly jako makroasemblery , což mělo
zdůraznit právě jejich schopnost práce s makoinstrukcemi (makry). Pro správné pochopení jejich podstaty je
vhodné si představit, že jde o běžný překladač-asembler, před který se předřadí ještě jeden pomocný překladač,
fungující jako textový preprocesor. Jeho úkolem je provedení všech rozvojů maker, neboli dosazení textů,
tvořících těla maker, na místa jejich volání. V praxi přitom nejde o skutečně samostatný předřazený překladač,
ale pouze o samostatný průchod překladače zdrojovým textem, při kterém dochází výhradně k rozvoji maker,
zatímco k vlastnímu překladu dochází až při dalším průchodu (či průchodech).
Jednotlivá makra přitom nemusí zdaleka představovat jen „neměnné" kusy texty. Ve většině konkrétních případů
mohou mít makra i různé parametry, mohou se větvit v závislosti na různých podmínkách, jejich rozvoje se
mohou předčasně ukončovat, makra se mohou do sebe vnořovat apod. Vždy samozřejmě záleží na konkrétním
makrojazyku, který určuje přesná pravidla pro definice, volání a rozvoje maker. Zdůrazněme si ale jednu velmi
podstatnou skutečnost, která je klíčová pro správné pochopení celé podstaty maker a jejich odlišení od
mechanismu podprogramů - makra jsou výhradně záležitostí zdrojového textu, a s jeho překladem zanikají.
Naproti tomu podprogramy překlad „přežijí", a existují i v přeložených a spustitelných programech.
Makra, makrojazyky a možnost používání makroinstrukcí však nejsou výhradní záležitostí programování na
úrovni asembleru - analogické mechanismy dnes mají zabudovány i překladače mnohých vyšších
programovacích jazyků. Jejich cílem je přitom totéž, co bylo cílem na úrovni asembleru: zefektivnit práci
programátora, který píše zdrojový text.
Programování na nejrůznějších úrovních však není zdaleka jedinou činností, při které lidé musí vykonávat
neustále se opakující činnosti - které je zcela zákonitě přestávají bavit, jakmile je mají dělat vícekrát. A jakmile
člověka něco nebaví, příslušnou činnost dělá pomalu, s chybami, nepřesně atd. Není proto divu, že i tvůrci
nejrůznějších aplikací zabudovali do svých výtvorů obdobu „maker". Setkáme se s nimi například v textových
editorech, ve spreadsheetech a v mnoha dalších aplikacích. Někdy jde jen o skromné prostředky, umožňující
předem „nahrát" sekvenci příkazů a pak je následně přehrát. Jindy jde až o celé propracované makrojazyky, které
umožňují vybudovat nad daným produktem úplně novou aplikaci, šitou na míru konkrétním specifickým
potřebám.

Mirror, cache, proxy server


Jakákoli přenosová kapacita je vždy příliš malá - tak by asi mohla znít moderní parafráze jedné velmi známé
pravdy, aplikovaná na prostředí počítačových sítí a komunikací. Skutečností je, že soudobé síťové aplikace mají
obrovský apetit, a přenosovou kapacitu konzumují doslova ve velkém. Svou troškou, mnohdy dosti velkou,
přitom může přispět i nevhodná konfigurace různých síťových prvků, která ve svém důsledku způsobuje zcela
zbytečný přenos čistě režijních dat. Ovšem zdaleka největší „nadměrnou konzumaci" dostupné přenosové
kapacity může mít na svědomí nevhodné chování uživatelů - mnohdy ne ani tak jejich snaha přenášet relativně
velké objemy dat, jako spíše způsob, jakým tak činí.
V čem ale takovéto nevhodné chování může spočívat? Představte si například skupinu uživatelů, kteří se
nějakým způsobem dozví o existenci zajímavého souboru, umístěného na veřejně přístupném archivu
(anonymním FTP serveru) někde v Internetu - nejlépe až za mořem, například v USA. Pokud si každý z těchto
uživatelů pro zmíněný soubor „dojde" až do USA (tj. nahraje si jej k sobě až z archivu v USA), bude to
znamenat, že celý soubor se bude n-krát přenášet přes oceán, resp. bude přenášen mezikontinentálním spojem, a
bude vesele konzumovat jeho vzácnou a drahou přenosovou kapacitu. Stejná úvaha ovšem platí i pro všechny
ostatní spoje, které jsou sdíleny více uživateli - například i pro spoje, kterými je naše republika připojena k
okolnímu světu. Kdokoli si bude „od nás" stahovat něco z okolního světa, bude spotřebovávat omezenou
přenosovou kapacitu těchto spojů, a může nemalou měrou přispět k jejich zahlcování. Jak ale z této situace ven?
Existuje nějaké rozumné a prakticky realizovatelné řešení? Naštěstí ano.
Možné, a v praxi skutečně používané řešení, spočívá v replikování nejvíce navštěvovaných zdrojů - například
obsah oblíbeného anonymního FTP archivu, nacházejícího se za mořem, se přenese na vhodný (hlavně
dostatečně velký) server někde v Evropě, či na několik takovýchto serverů na různých místech po celé
zeměkouli. Uživatelům se pak dá na vědomí, že všechno to, co je k dispozici na původním „mateřském" serveru,
najdou i na jeho replikovaných kopiích - kterým se pak říká mirrors (doslova: zrcadla).
Celá věc ovšem má dva háčky - uživatelé se musí o existenci zrcadel (mirrors) dozvědět, a dále musí existovat
vhodný mechanismus, který bude průběžně zajišťovat aktuálnost všech replik (mirror-ů). Pokud jde o
informovanost uživatelů, zde může napomoci osvěta. Ještě více však může pomoci samotný „mateřský" server
tím, že svým uživatelům sám oznámí, kde se nachází jeho repliky (mirrors). No a pokud se k tomu ještě přidá
obvyklé přetížení dálkových spojů, uživatel brzy sám pozná, kam je pro něj výhodnější se obracet.
Pokud jde o průběžné udržování aktuálnosti replik (zrcadel, mirror-ů), ani toto nemusí být velkým problémem -
zejména jde-li o pouhé archivy souborů, ze kterých dochází pouze k jednosměrné distribuci. Zde skutečně není
žádný velký problém pravidelně (například jednou za den či týden) distribuovat z mateřského serveru na jeho
repliky všechny přírůstky za dobu od poslední aktualizace.
Vytváření zrcadlových replik (mirror-ů) je oblíbeným a častým řešením v případě velkých anonymních FTP
serverů. Kdyby všichni naši uživatelé Internetu věděli, že většina nejznámějších světových FTP archivů má svá
zrcadla i u nás (někdy i několik), nemuseli by si stahovat tolik souborů soubory ze zahraničí, a našim
mezinárodním spojům by se hodně ulevilo.
Poněkud jiné řešení se ale používá u jiných síťových služeb, než jakými jsou anonymní FTP archivy se svou
jednosměrnou distribucí celých souborů. Služby jako Gopher či WWW (World Wide Web) mají přeci jen
interaktivnější povahu, a ke změnám na nich dochází mnohem častěji. Proto by u nich nebylo tak snadné zajistit
potřebnou aktuálnost případných replik. Přesto je ale i u těchto služeb velmi žádoucí minimalizovat objem dat,
které se po dostupných přenosových cestách skutečně přenáší.
Svým významným dílem může přispět i samotná aplikace, která tyto služby zpřístupňuje. Například u klientů
(klientských programů) služby WWW je běžné, že si po určitou dobu pamatují obsah těch stránek, které jejich
uživatel navštívil, a které si tudíž „stáhnul" z příslušného WWW serveru. Pokud se pak později uživatel
rozhodne znovu navštívit tutéž stránku, klientský program to pozná, a použije ten obsah stránky, který si uchoval
ve své speciální vyrovnávací paměti - označované jako paměť cache. Aby ovšem vše rozumně fungovalo, a
uživateli se promítly i případné změny na původním WWW serveru, nesmí jednou navštívené stránky v cache
paměti jeho klientského počítače setrvávat příliš dlouho - po nějakém čase (obvykle volitelném) musí
„vyčichnout".
Ještě další možné řešení se používá tam, kde je k Internetu připojena celá lokální počítačová síť, a její
provozovatelé se pojistili proti neoprávněnému přístupu z vnějšího světa - svou síť oddělili od divokého
Internetu tím, co se dnes běžně označuje jako tzv. firewall. Cílem přitom bývá propouštět veškerý provoz jen
takovými místy, která jsou k tomu určena, a která umožňují zabránit jakémukoli nežádoucímu provozu. V
případě služby WWW se tohoto cíle dosahuje tak, že mezi „lokální" uživatele a jejich klientské programy na
jedné straně a WWW servery v Internetu na straně druhé se postaví přechodový bod, fungující jako tzv. proxy
server. Místní uživatelé se pak se svými žádostmi o přístup k vnějším WWW serverům obrací ve skutečnosti na
tento proxy server, který si pak sám „dojde" ke vzdálenému WWW serveru, získá od něj požadovaná data, a ta
pak předá svému místnímu uživateli. Přitom si ale tato data také sám zapamatuje v paměti, kterou má k dispozici
a která funguje jako jeho vyrovnávací (cache) paměť - takže když se na něj někdy později obrátí ten samý či jiný
uživatel, resp. klient z místní lokální sítě, dokáže mu požadovaná data poskytnout přímo ze své cache paměti.

Multimediální prvky pro PC

Popis multimediálních prvků pro PC


Je důležité rozlišovat mezi dvěma základními druhy nosičů multimediální informace. Nosiče informace lze
rozdělit na média statická (časově nezávislá) a dynamická (měnící se s časem). Příkladem statických médií
mohou být texty, grafika a nepohyblivé obrázky, dynamických naopak obrázky pohyblivé, animace a zvuky.

Multimediální PC (MPC) by mělo mít minimálně tyto výkonnostní parametry:

• CPU odpovídající procesoru Intel 80486DX s taktovací frekvencí 50 MHz


• pamě? RAM 4MB
• kapacitu pevného disku 230 MB
• 3,5" diskovou jednotku s kapacitou 1.44 MB,
• porty paralelní a sériové, myš, game port , MIDI port s funkcí I/O
• MPC kompatibilní zvukovou kartu,
• MPC kompatibilní mechaniku CD-ROM,
• systémový sw kompatibilní s Windows Multimedia Extension.

Je nutno dodat, že tyto požadavky jsou opravdu minimální a že v současné době by člověk asi těžko sháněl takto
zastaralý počítač. Pro přijatelnou práci by bylo možná lepší doporučit procesor alespoň Pentium 133 (pro
náročné hry až Pentium III nebo AMD K7), pevný disk alespoň 1 GB (spíše více), grafickou kartu s minimálně 4
MB video paměti, CD-ROM alespoň 8x speed, zvukovou kartu, software podporující většinu multimediálních
formátů a standardů

Zvuková karta
DAC (Digital-analog conversion)
Jádrem každého digitálního zařízení vyrábějícího analogový signál, v našem případě zvuk, je digitálně-
analogový převodník. To je elektronický obvod, jež v pravidelných časových intervalech převádí číslicový údaj
na analogový. Jednoduše řečeno z nějakého čísla, které obdrží na vstupu, vyrobí na výstupu napětí, jež je tomuto
číslu přiřazeno. Například číslu 255 přiřadí hodnotu napětí
10 V a co je mezi tím se postupně rozdělí, v našem případě každá jednotka bude znamenat zvýšení napětí o 10 V
/ 255 = 0,0392 V. Uvedený příklad odpovídá převodníku s 8bitovým rozlišením
(8 bitů znamená čísla od 0 do 255).
Pokud budeme mít převodník s rozlišením 16 bitů, budou jim odpovídat čísla od 0 do 65535 a v našem případě
napě?ové schůdky budou velké 10 V / 65535 = 0,00015 V.

ADC (Analog-digital conversion)


Je to jen opačný postup než DAC. Je však realizován jiným obvodem, než byl předchozí.
Od jeho rychlosti závisí tzv. frekvence vzorkování, množství odměrů přicházejícího signálu za sekundu během
nahrávání.
Chcete-li například převést napětí 4,72 V na nějaké 8bitové číslo, může se to provést tak, že postupně necháte na
nějaký pomocný DA převodník posílat čísla od 0 do 255 a to, které se bude po převodu na napětí nejvíce blížit
sledované hodnotě, prohlásíte ho za jeho převod. V našem případě to tedy bude číslo 120, protože 120 x 0,0392
= 4,704, což je nejblíže 4,72 V. Z toho je vidět, že jsme na odměření tohoto vzorku potřebovali 120 kroků. Ve
skutečnosti je pro převod 8bitového slova potřeba právě jen 8 kroků. Avšak i zde vzniká tzv. kvantovací chyba
4,72 - 4,704 = 0,016 V. Dnešní karty používají AD převodníky, jež pracují s vzorkovací frekvencí až 44,1 kHz
při snímání mono, obvykle s 22 nebo 44,1 kHz pro stereo. U PC však není největším problémem rychlost
převodníků, ale rychlost DMA přenosu, který je použit pro ukládání nasnímaných dat. To znamená při frekvenci
44,1 kHz, stereo a 16bitové kvalitě se jedná o 172,3 kB/s. Zvuková kvalita se přibližuje nebo dosahuje koncertní
kvality.
Starší 8,16bitové karty používají FM syntetizér, který pracuje na principu napodobení reálného tónu pomocí
přehrávání jednoho zvuku různou rychlostí.
Novější karty používají Wave Table syntézy - jednotlivé nástroje jsou nasnímány v CD kvalitě a uloženy na
disku. Při přehrávání se daný nástroj nahraje do paměti zvukové karty a přehraje se. Tímto způsobem se dá
dosáhnout koncertní kvality výsledného zvuku.
Nevýhoda nástroje: zaberou na disku velký prostor (7-10 MB).

MIDI (Musical Instrument Digital Interface)


Označuje standard pro výměnu dat mezi elektronickými hudebními nástroji. Hardwarově je MIDI druh
sériového rozhraní, které přenáší data rychlostí 31250 bitů za sekundu. Spojením rozhraní MIDI klávesnice se
syntetizátory, skupinou bicích nástrojů a přístrojů vyrábějících efekty, ovládá hudebník nebo skladatel celý
orchestr. Vedením MIDI nejsou vysílány žádné hudební signály, ale instrukce pro hraní. Data MIDI jsou
rozdělena do tzv. Events (událostí). Nejdůležitější Events se jmenují Note On a Note Off. Není to však nic jiného
než příkazy k zahrání určitého tónu určité délky a síly na zadaném kanálu MIDI. Kanály MIDI (je jich 16) si
můžeme představit jako rozhlasové kanály. Umožňují přímé adresování určitého zařízení MIDI nebo výběr tónu
na syntetizátoru. Pomocí jednoho PC a vhodného programu (sekvenceru) se nahrává hudba po záznamových
stopách, přičemž jsou jednotlivé melodické posloupnosti předehrávány počítači nástrojem MIDI, například
syntetizátorem. Na rozdíl od magnetofonových snímků se zaznamenaná data skládají z jednotlivých hracích
instrukcí, které se dají dodatečně zpracovat až do nejmenších podrobností. Vedle událostí Note On a Note Off
existuje celá řada dalších příkazů pro řízení příslušného nástroje. Jedním z nejdůležitějších je program Change.
Tento Event vybírá jiný tón nazývaný také Pantch nebo Program), nebo? většina syntetizátorů ovládá podstatně
víc než pouhých 16 rozdílných zvuků.

Všechny zvukové karty se v zásadě skládají ze tří víceméně navzájem nezávislých částí:

• digitální části
• zdroje zvuku
• rozhraní MIDI.

Digitální část (A/D a D/A převodník) je určena pro digitální nahrávání a reprodukci tónu a zvuku. Uplatní se
např. při řízení hlasu nebo při přehrávání souboru .WAV. Nemá jako jediná vůbec nic společného s MIDI.
Druhou částí je zdroj zvuku (syntetizátor), který jen nereprodukuje hrané zvuky, ale podle pokynů pro
programování sám uměle vyrábí tóny a hluky. To je hlavně třeba pro napodobování hudebních nástrojů k
hudebnímu podmalování počítačových her nebo pro reprodukci souborů MIDI. V syntetizátoru se moderní
zvukové karty liší nejvíc. Jednodušší modely pracují s čipem OPL 2 nebo OPL 3 firmy YAMAHA.Oba čipy
pracují na základě frekvenční modulace (FM), což znamená, že se zvuky vytvářejí z jednoduchých nebo
několikanásobně se překrývajících vlnových tvarů.
Mezi nejznámější patří SoundBlaster, Diamond Monster
Některé karty mají integrované i radio přijímače.
K dobrému zvukovému zážitku patří i reproduktory vybavené pro prostorový zvuk (3D Sound) zvyšující zážitek
z multimediálních aplikací a her.

Video karty
umožňují rychlé překreslování obrazovky (a tak zrychlují celý počítač...) a přehrávání videa na obrazovce. Jsou
vybaveny videopamětí, která slouží k urychlení karty (čím více paměti, tím lépe). V současné době se prodávají
ještě tzv. 3D akcelerátory (Voodoo, TNT), které vedle video karty zrychlují hlavně 3D objekty (nejčastější
použití ve hrách). Některé video karty mají integrované i přijímače televizního signálu.

Počítačové viry a ochrana proti nim


Počítačový virus je zvláštní program, který je schopný vytvářet své kopie. Aby zabezpečil své spuštění, připojuje
se k souborům na disku, ukládá se do systémových oblastí apod.

Počítačové viry tvoří dvě velké skupiny:

• boot viry
• souborové viry.

Existují i viry kombinované nebo jiného typu ( např. adresářové ).


Boot viry
Tělo viru je umístěno v boot sektoru diskety nebo v MBR pevného disku. Aktivuje se po zavedení systému z
napadeného disku. Pokud je virus aktivní, může napadnout každou disketu, nechráněnou proti zápisu, se kterou
pracujeme. Z diskety na pevný disk se virus přenese jen po zavedení systému z napadené diskety. Napadená
disketa nemusí být pouze systémová.
Souborové viry
Souborový virus se připojuje nebo přepisuje spustitelné soubory (.COM, .EXE), nebo soubory, které obsahují
spustitelný kód ( .BIN, .OVL aj.). Tento virus se aktivuje, po spuštění napadeného souboru.
Zvláštní skupinu souborových virů tvoří viry, které kromě souborů napadají i MBR pevného disku, ne však boot
sektor disket. Takový virus se aktivuje kromě spuštění napadeného souboru i po zavedení systému z napadeného
pevného disku.
Viry můžeme dále dělit na:

• pamě?ově rezidentní (po aktivaci jsou trvale umístěny v paměti)


• nerezidentní

Nerezidentní virus způsobí nákazu jen po spuštění napadeného souboru. Běžně nakazí několik souborů obvykle
v aktuálním adresáři.
Rezidentní virus se po spuštění napadeného souboru umístí v operační paměti. Nejčastěji to bývá v konvenční
paměti, pomocí přerušení INT 12 zajistí, aby nebyl přepsán jiným programem. Rezidentní virus se může
nacházet v konvenční paměti, v paměti EMS a v prvním 64 kB segmentu paměti extended (tedy 0-1088 kB).
Rezidentní virus může napadnou libovolně velký počet souborů.

Obecná činnost vykonávána viry


Viry vykonávají během svého životního cyklu mnoho akcí (pořadí bývá u každého viru individuální, nemusí být
použity všechny akce):

• převzít kontrolu nad procesorem


• zkontrolovat aktuální stav prostředí
• nainstalovat se do paměti
• přesměrovat přerušení
• provést test na podmínku spuštění škody (datum, počet spuštění...)
• vykonat škodlivou činnost
• najít místo pro vytvoření své kopie
• zkontrolovat, zda místo neobsahuje kopii
• vložit svou kopii
• uskutečnit úpravy napadeného místa ( zakódování )

Způsoby přenosu virů mezi počítači


Viry se šíří v rámci jednoho počítače i mezi počítači. Existuje několik možných přenosových médií mezi
počítači:
Běžné média

• diskety
• sí?ové linky ( při zapojení v síti )
• telefonní linka ( při použití modemu )
• výměnné pevné disky
• disky CD ROM

Nepříliš častá média

• sériová linka ( při propojení počítačů )


• uveřejněný zdrojový text viru
• paměti EPROM

Postup při napadení počítače virem

1. Vypneme počítač.
2. Zavedeme systém z čisté DOS diskety chráněné proti zápisu.
3. Z diskety spustíme antivirový program. Pokud chceme spouštět antivirový program z napadeného
disku, nejprve ho zkopírujeme z diskety na pevný disk. Antivirový program spuštěný z pevného disku
poskytuje větší možnosti při léčení, jeho práce je rychlejší.
4. Jestliže se jedná o souborový virus, napadené soubory necháme" vyléčit", pokud máme soubory
zálohované, je vhodnější napadené soubory smazat a nainstalovat nové. Po vyléčení i lepším
antivirovým programem ne vždy soubory pracují korektně.
5. Jestliže jde o boot virus, necháme provést obnovu boot sektorů antivirovým programem, nebo příkazem
SYS si provedeme obnovu sami (SYS spouštíme z diskety).
6. Jestliže se jedná o virus v MBR, zálohujeme si nejprve všechny systémové oblasti a zkontrolujeme
funkčnost záložních kopií. Antivirové programy občas poškodí při odstraňování tohoto viru tabulku
partition, čímž způsobí ztrátu dat. Jestliže dokáže náš antivirový program virus v MBR odstranit, nebo
umí sektor obnovit z diskety, provedeme jeho obnovení.
7. Zkontrolujeme všechny diskety.
8. Informujeme o nákaze uživatele, se kterými si vyměňujeme diskety

Ochrana před počítačovými viry

• softwarová
• hardwarová

Softwarová ochrana
Softwarová ochrana je realizována antivirovými programy. Služby, které antivirové programy poskytují lze
rozdělit do tří skupin:

• konkrétní antivirové techniky


• obecné antivirové techniky
• preventivní ochrana

Konkrétní antivirové techniky vyhledávají pouze známé viry podle virové databáze, kterou je nutné aktualizovat.
Většinu takto nalezených virů je možné ze souborů nebo z boot sektorů také odstranit, a to buď s použitím
informací o viru, který příslušný soubor infikoval nebo s použitím původních informací o souboru, které
popisují, jak vypadal před infekcí. Největší výhodou této metody je její rychlost, tato metoda se tedy používá pro
pravidelné kontrolování pevného disku. Známé viry je také možné vyhledávat v každém spouštěném,
kopírovaném, otevíraném souboru a v zaváděcích sektorech všech disket, které do počítače vkládáme. K tomu je
určen rezidentní ovladač, který lze zavádět vždy po spuštění počítače. Tento ovladač se zavádí v config.sys a je
tedy v paměti ještě dříve, než se načte command.com (což je obvyklá základna většiny virů). Samozřejmě
nechybí možnost prohledat pamě? na přítomnost rezidentních virů.
Obecné antivirové techniky se snaží najít a pokud je to možné i odstranit neznámý virus. První metodou, jak
najít neznámý virus je tzv. srovnávací test. Při prvním spuštění tohoto testu si program zapíše důležité informace
o souborech (velikost, datum, čas, atributy a kontrolní součty). Při dalších spuštěních porovnává tyto informace s
aktuálním stavem. Pokud v těchto údajích došlo ke změně většího rozsahu, je pravděpodobné, že počítač byl
napaden virem. Antivirový program AVG obsahuje i heuristickou analýzu. Heuristická analýza podrobně
analyzuje obsah souborů na pevném disku a vyhledává v něm různé podezřelé konstrukce (přímé zápisy na disk,
převzení kontroly nad operačním systémem apod.). Heuristická analýza je obecně fungující metoda, není tedy
závislá na virové databázi. Automaticky se při této metodě provádí test i na známé viry. Pokud je tedy soubor
označen za napadený, prohledává se v databázi virů a jméno viru je vypsáno, v opačném případě je virus
označen jako neznámý. Program obsahuje tzv. plnou heuristickou analýzu (heuristická analýza s emulací kódu),
kdy se antivirový program přímo pokouší emulovat činnost počítače při spuštění programu. Nevýhoda metody je
v tom, že často dochází k falešným poplachům, kdy některé soubory jsou označovány jako napadené. Avšak
vzhledem k zvětšování počtu stále složitějších virů, bude v budoucnu tato metoda nejčastěji používaná. Test
prostředí na souborové viry spočívá v tom, že program vygeneruje na disk soubory typu .com a .exe, potom je
kopíruje a provádí s nimi různé operace, přičemž vždy kontroluje jejich obsah. Pokud se při manipulaci s nimi
změní jejich obsah, je velmi pravděpodobné, že se na návnadu právě chytil virus. Obdobně je program schopen
vygenerovat na disketu prázdný zaváděcí sektor a poté kontrolovat, byl-li nějak změněn.
Preventivní antivirové techniky se doporučí využívat pokud možno ještě předtím, než se virus v počítači usídlí.
Spočívají v zálohování některých důležitých informacích o počítači, podle nichž bude v případě potřeby možné
obnovit původní stav. Pomocí programu si můžeme uložit obsah paměti CMOS, tabulku rozdělení pevného
disku apod. Po napadení počítače lze tyto informace zpětně obnovit.

Jiné antivirové programy (F-PROT, SCAN) obsahují další užitečnou funkci - vkládání vlastních virových
řetězců. Tato metoda se však neuplatní v případě polymorfního viru.
Hardwarová ochrana
Kromě softwarové ochrany před viry existuje i možnost hardwarové ochrany. Ta je realizována pomocí
rozšiřující karty. Karta obsahuje pamě? ROM se speciálním softwarem.
Základní funkce:

• bezpečnost je zajištěna pomocí několikastupňového ochranného systému


• přístup k počítači je pomocí šifrovaného hesla
• uživatele je možné rozdělit podle přístupových práv, které si sami navrhneme
• pro pevné disky a diskety je možno nastavit přístupová práva (jen čtení, zápis apod.)
• dlouhodobé sledování provozu počítače včetně registrace všech pokusů o porušení přístupových práv
• karta obsahuje baterii zálohovanou pamě?, ve které jsou uložena všechna přístupová práva a nastaveny
parametry
• kartu je možné doplnit o nadstavbové moduly pro zálohování, kódování apod.

Automaticky je zajištěna ochrana boot sektorů proti přepsání a formátování.

Přerušovací systém
Princip přerušení:

n -1, n atd. jsou adresy instrukcí. Pokud při běhu programu dojde k žádosti o přerušení, dokončí se právě
probíhající instrukce a systém zajistí úklid kontextu do zásobníku pro přerušení. Kontext obsahuje obsahy
střadače registrů v době přerušení a dále je uložena návratová adresa n +1 hlavního programu. Je proveden
odskok na adresu instrukce pro obslužnou rutinu (podprogram), přerušení je obslouženo. Instrukce konec
přerušení zajistí přepsání kontextu zpět do registru (dojde k vyprázdnění zásobníku pro přerušení a přes
návratovou adresu hlavního programu je tento spuštěn a dále běží.

Přerušení může být:

• vnitřní (chyba při běhu programu)


• vnější (žádost některé periferie o obsluhu dat)

Dále se dělí:

• vektorové
• maskovatelné

Maskovatelné je druh přerušení, které závisí na nastavení klopného obvodu tzv.masky, který podle stavu na
výstupu povolí nebo nepovolí přerušení. K tomu je určen v příznakovém registru bit IF (Interupt flag), který při
nastavení do jedničky zajistí maskovatelné přerušení.
Jelikož periferních zařízení je více než dvě, přidává se k procesorům řadič přerušení, který je řadí podle
důležitosti (priority) a sděluje procesoru o jaký druh přerušení jde. Při každém přerušení se volá obslužná rutina,
která je k tomu určena.

Procesor pracuje s vektorovým systémem přerušení. Tabulka vektorů je uložena v operační paměti, většinou
od adresy 0 a každý vektor má velikost 4B. Je to celá adresa (segment i offset) a v operační paměti zabírá asi
1kB. Procesor rozezná 256 přerušení (0-255). Některé vektory jsou pevně určeny a nelze je měnit.

Tabulka vektoru:
00000 Dělení nulou vektor 0
00004 Krokování vektor 1
00008 Nemaskovatelné přerušení vektor 2
00012 INT 3 vektor 3
Aritmetické přetečení vektor 4
27 rezervovaných vektorů
224 volných vektorů
U maskovatelného přerušení dodá řadič přerušení i číslo vektoru, které specifikuje některou z periferií. 27
vektorů si rezervovali tvůrci systému a většinou nejsou využity.

Repeater
Natáhnout odnekud nekam kabel nemusí být nijak težké. Pokud ale potrebujete vybudovat kabelový rozvod pro
lokální pocítacovou sít typu Ethernet a rozhodnete se tak ucinit pomocí koaxiálního kabelu, budou vám v ceste
stát nekterá významná omezení, vyplývající jednak z fyzikálních vlastností samotného kabelu a jednak ze
zpusobu komunikace v ethernetovských sítích. O tom, že v sítích typu Ethernet lze používat ruzné druhy kabelu,
jsme se již nekolikrát zmínili v drívejších vydáních této rubriky. Již dríve jsme si také uvedli, že pro ruzné druhy
kabeláže byly vypracovány samostatné standardy (resp. doplnky standardu), a to organizací IEEE (Institute of
Electrical and Electronic Engineers). V soucasné dobe jsou nejvýznamnejší standardy 10Base-T (pro tzv.
kroucenou dvoulinku) a 10Base-5 (pro tzv. tenký koaxiální kabel), zatímco puvodní standard pro tzv. tlustý
koaxiální kabel (oznacovaný také jako 10Base-5) postupne ztrácí na své aktuálnosti, protože se používá cím dál
tím méne. Není ostatne divu - tzv. tlustý koaxiální kabel má sice vetší dosah, ale je o hodne dražší než kabel
tenký a dosti špatne se instaluje, protože je velmi tuhý a težko ohebný (jeho dovolený polomer ohybu je 25 cm).
Principiálne nejjednodušší je situace u kroucené dvoulinky – ta umožnuje vytváret pouze dvoubodové spoje,
které tudíž mohou vést jen mezi koncovým uzlem a prípojným místem nejbližšího rozbocovace (hub-u, viz
minulý príspevek této rubriky). Navíc maximální vzdálenost je cca 100 metru. Oba druhy koaxiálních kabelu
však umožnují vytváret mnohobodová spojení, tj. mohou na ne být pripojeny více než dva uzly. Nemuže jich
ovšem být libovolne mnoho, ale nejvýše 100 (na jeden segment tlustého koaxiálního kabelu), resp. 30 (v prípade
tenkého kabelu). Dalším omezením je i minimální odstup mezi dvema sousedními uzly, který ciní 2,5 metru u
tlustého kabelu a 0,5 metru u tenkého kabelu. Nejvetším omezením však bývá maximální délka souvislého
segmentu kabelu, a to 500 metru u tlustého a 200 metru (presneji 185) u tenkého kabelu. Jak se ale zachovat v
prípade, když se dostanete do konfliktu s temito omezeními? Minimální odstup mezi dvema uzly asi nebude
vetším problémem, ale co když potrebujete pripojit víc než povolený maximální pocet uzlu? Nebo – a to je
zrejme nejcastejší prípad - potrebujete preklenout vetší vzdálenost než maximálních 500, resp. 200 metru?
Možných rešení tohoto problému existuje více. Všechna predpokládají použití dvou (ci více) souvislých
segmentu kabelu, mezi které se vloží jako propojující clánek zvláštní "krabicka". Rozdíl mezi jednotlivými
rešeními je pak v tom, jak tato "krabicka" funguje. Dnes se podrobneji zastavíme u jednoho z možných rešení,
které predpokládá, že príslušná "krabicka" funguje jako digitální zesilovac, a oznacuje se jako repeater (cesky:
opakovac). Jedním z hlavních duvodu, proc musí být maximální délka souvislého kabelu omezena, je
skutecnost, že šírí-li se kabelem signál, dochází k jeho útlumu (tj. k zeslabení). Má-li být signál dopravován na
vetší vzdálenosti, musí být po ceste vhodne zesílen. Práve toto je hlavní úkol opakovace. Při troše dobré vule si
lze predstavit, že vše, co toto zarízení "zaslechne" (na jednom segmentu kabelu), zase ihned "zopakuje" (do
druhého, resp. do všech ostatních segmentu) - odsud také jeho název. Další významnou funkcí opakovace je i
dohled nad "cistotou" digitálního signálu. Pri prenosu kabelem totiž krome útlumu dochází i k ruzným
deformacím a zkreslením signálu, a ty má opakovac za úkol kompenzovat (a prijímaný signál před jeho
opetovným odesláním vhodne vytvarovat). Podstatné je ovšem to, že opakovac funguje v reálném case a je
vlastne plne "pruchozí". Nemá žádnou pamet a vše, co z jedné strany prijme, zase ihned vyšle, a to všemi
ostatními smery, které pro nej existují. Díky tomu se také nemusí zajímat o to, co vlastne skrz nej prochází. A
práve tím se opakovac odlišuje od jiných druhu "krabicek", které se již snaží interpretovat to, co z ruzných stran
"slyší", a na základe toho se pak dokáží rozhodnout, co mají propustit, a co nikoli. Zpusob fungování
opakovace je tedy analogický k funkci rozbocovace (hub-u), kterým jsme se zabývali v minulém vydání této
rubriky. Tomu odpovídá i konstrukcní provedení opakovacu - ty nejjednodušší sice umožnují propojit mezi
sebou práve a pouze dva segmenty koaxiálního kabelu, ale tzv. vícevstupové opakovace (multiport repeaters)
nabízí více pripojných míst, z nichž ke každému lze pripojit jeden kabelový segment. Použití opakovacu v
lokálních sítích typu Ethernet však má i jedno duležité omezení: mezi žádnými dvema uzly nesmí být více než
dva opakovace. Duvodem je prístupová metoda (CSMA/CD, viz CW 33/93), založená na možnosti detektovat
kolize a na predpokladu, že kolizi dokáží rozpoznat všechny uzly. Použití opakovacu totiž vnáší nezanedbatelné
zpoždení do celkové doby, kterou signálu trvá, než urazí cestu z jednoho konce síte na druhý. Pokud by tato
doba presáhla urcitou hranici, mohlo by dojít k velmi zajímavé, ale bohužel velmi nežádoucí situaci: kolize by
byla detektovatelná jen v cásti síte, a nikoli v celé síti (napríklad jen "uprostred", a nikoli "na koncích").
Podmínka, že mezi žádnými dvema uzly nesmí být více než dva opakovace (spolu s maximální délkou
souvislého segmentu kabelu), zajištuje takovou dobu šírení signálu, která práve naznacenou situaci vylucuje.
Znamená ovšem tato podmínka soucasne i to, že v žádné ethernetovské síti nesmí být více než dva opakovace?
Odpoved je naštestí záporná. Jedním duvodem je skutecnost, že toto omezení platí jen do nejbližší "krabicky",
která funguje jiným zpusobem než jako opakovac (jak, o tom bude rec príšte). I bez této jiné "krabicky" však lze
najít takovou topologii síte, ve které muže být opakovacu více, ale zásada maximálne dvou opakovacu mezi
libovolnými dvema uzly bude dodržena – rešením je nám již dobre známá sbernicová topologie, v jejímž rámci
se jednotlivé segmenty kabelu pripojují pres opakovace na spolecný páterní segment.

Router
V posledních dvou vydáních této rubriky jsme se zabývali pojmy opakovac (repeater) a most (bridge). Rekli
jsme si, že v obou prípadech jde o "krabicku", která vzájemne propojuje dva ci více kabelových Segmentu
lokálních pocítacových sítí. Rozdíl mezi opakovacem a mostem pak spocívá v tom, jak vlastne fungují:
opakovac je pouhým digitálním zesilovacem, kterýzesiluje a regeneruje prijímané signály a okamžite je vysílá i
do všech ostatních kabelových segmentu, které jsou na nej pripojeny. Naproti tomu most (bridge) se chová
inteligentneji, a snaží se zbytecne neplýtvat prenosovou kapacitou jednotlivých segmentu. Jeho hlavní funkce
spocívá v odfiltrovávání takových dat, která mají svého odesilatele i príjemce v jednom a témže segmentu, a
která tudíž není nutné predávat i do Jiných segmentu. Další funkcí mostu je pak cílené predávání dat jen do toho
segmentu, ve kterém se nachází jejich skutecný príjemce (pokud jsou k mostu pripojeny více než dva segmenty).
Aby mohl tuto svou úlohu plnit, musí být schopen interpretovat prenášená data alespon do takové míry, aby z
Nich poznal odesilatele a príjemce. Jestliže jsme si opakovac minule zaradili v rámci vrstvových sítových
modelu do nejnižší, tzv. fyzické vrstvy, pak most je nutné zaradit do vrstvy bezprostredne vyšší, neboli vrstvy
linkové. Na úrovni této vrstvy jsou prenášené bloky dat oznacovány jako rámce (frames) a jsou vybaveny
adresou svého odesilatele a príjemce. Konkrétní forma této adresy pritom závisí na druhu síte, resp. na použité
prenosové technologii. Napríklad v sítích typu Ethernet se na úrovni linkové vrstvy používají 48bitové adresy,
zatímco napríklad v sítích Arcnet jsou tyto adresy jednobytové. Podstatné je ovšem to, že v rámci linkové vrstvy
jsou jednotlivé rámce prenášeny vždy jen mezi dvojicemi uzlu, které spolu bezprostredne sousedí (v tom smyslu,
že mezi nimi existuje prímé spojení). Most, který pracuje na úrovni linkové vrstvy, proto "vnímá" skutecnou
topologii síte jen "na prímou viditelnost", a o existenci takových uzlu, se kterými nemá prímé spojení, nic
netuší. Tretím druhem "krabicky", která muže propojovat dva ci více kabelových segmentu, je tzv. smerovac
(router). Ten si již uvedomuje topologii celé síte, a díky tomu je pak schopen rozhodnout, kudy vede cesta do
nejakého vzdáleného uzlu. Prijme-li nejaký blok dat, umí se rozhodnout, kterým smerem jej poslat dál, aby se
nakonec (po prípadném pruchodu dalšími mezilehlými uzly) dostal až ke svému konecnému adresátovi. K tomu
ovšem smerovac nevystací se stejnými informacemi, jaké má k dispozici most (bridge), ale musí se do
prenášených bloku dat dívat hloubeji. V praxi to znamená, že smerovac pracuje na úrovni tzv. sítové vrstvy,
která je bezprostredne nad vrstvou linkovou. Na této úrovni se prenášeným blokum dat ríká obvykle pakety
(packets). Ty jsou opatreny jiným druhem adres, než jaké se používají na úrovni linkové vrstvy, a jsou vkládány
do rámcu linkové vrstvy (proto se smerovac musí dívat do prenášených dat "hloubeji"). Hlavním úkolem
smerovace je tedy rozhodnout, kterým smerem posílat jednotlivé pakety tak, aby se dostaly až ke svým
koncovým adresátum. Tomuto rozhodování (a jeho praktickému naplnování, tj. posílání paketu ve zvoleném
smeru) se ne náhodou ríká smerování (routing). Smerovac pritom vychází ze znalosti topologie síte a na ni pak v
jednotlivých prípadech aplikuje algoritmus volby dalšího smeru prenosu. Tomuto algoritmu se ríká metoda
smerování. Muže mít mnoho ruzných podob - od neadaptivních statických algoritmu, které vychází z predem
dané tabulky a nijak nereagují na jakékoli zmeny stavu síte, až po takové algoritmy, které se dynamicky
prizpusobují zmenám v topologii síte, pretížení jednotlivých prenosových cest i jiným zmenám. Mezi
opakovacem na jedné strane a mostem se smerovacem na strane druhé existuje zásadní rozdíl v tom, že
opakovac prenáší data v reálném casu, zatímco most a smerovac nikoli. Ty totiž musí nejprve nacíst celý paket ci
rámec (nebo alespon jeho cást) do své vyrovnávací pameti, a teprve pak se podle jeho obsahu mohou
rozhodnout, co s ním. Mezi mostem a smerovacem pak existuje další zásadní rozdíl v tom, že most je pro ostatní
uzly neviditelný, zatímco existenci smerovace si ostatní uzly musí plne uvedomovat. Most totiž funguje na
principu odposlechu - odesilatel adresuje svuj rámec skutecnému príjemci, o kterém se domnívá, že s ním má
prímé spojení (tj. že se nachází ve stejném segmentu jako on sám). Ve skutecnosti ale jde pouze o iluzi, kterou
vytvárí most. Ten totiž toto vysílání zachytí, rámec prijme sám a na základe v nem obsažených adres jej zase
vyšle do toho segmentu, ve kterém se skutecný príjemce doopravdy nachází. Naproti tomu smerovac, který
pracuje na úrovni bezprostredne vyšší vrstvy, je pro odesilatele již plne viditelný. Pokud nejaký uzel potrebuje
odeslat paket príjemci v jiném segmentu, opatrí jej adresou tohoto príjemce a vloží jej do rámce linkové vrstvy,
který ale pošle smerovaci! Ten rámec "rozbalí", najde v nem paket sítové vrstvy a v nem adresu koncového
príjemce. Podle ní se pak rozhodne, kudy paket poslat dál. Když tak uciní, paket znovu vloží do rámce linkové
vrstvy a pošle jej ve zvoleném smeru. Príjemcem tohoto rámce pak muže být bud konecný adresát paketu (pokud
se v príslušném segmentu již nachází), nebo opet další smerovac, ve kterém se celý proces opakuje.Na rozdíl od
mostu jsou tedy smerovacum jednotlivé pakety explicitne adresovány. Zásadní rozdíl je tedy i v tom, jakou iluzi
vytvárí jednotlivým uzlum most a jakou smerovac. V prípade mostu je výsledný efekt takový, že jednotlivé
kabelové segmenty logicky splývají v jeden celek (a most, který tuto iluzi vytvárí, je sám o sobe neviditelný),
zatímco pri použití smerovace si jednotlivé segmenty z pohledu ostatních uzlu ponechávají svou vlastní identitu
a smerovac je plne viditelnou bránou mezi nimi.

Transceiver, drop cable, AUI, BNC


Predstava sbernicové topologie u lokálních pocítacových sítí (napríklad u sítí typu Ethernet) je vcelku
jednoduchá – na jedno spolecné prenosové médium se "navesí" jednotlivé uzlové pocítace. Jakým konkrétním
zpusobem se ale toto "navešení" musí udelat? Je možné již existující kabel prestrihnout ci alespon naríznout, vzít
jiný kus kabelu a pripojit jej jako odbocku? Tak jednoduché to bohužel není, ale je dobré vedet proc. Když jsme
si v CW 32/93 povídali v této rubrice na téma Ethernet, rekli jsme si, že síte tohoto typu mohou používat dva
druhy koaxiálních kabelu (tzv. tlustý a tenký), nebo tzv. kroucenou dvoulinku. Koaxiální kabel vdecí za svuj
název tomu, že jej tvorí dve vodivé vrstvy - jedna má formu stredového vodice, a druhá válcového plášte, který
stredový vodic obepíná (samozrejme je mezi nimi ješte tenká nevodivá vrstva). Oba vodice, jak stredový tak i
vodivý plášt, tak mají shodné osy, a proto se príslušnému kabelu ríká souosý (anglicky: co-axial, odsud: coaxial
cable neboli koaxiální kabel). Každý druh kabelu (nejen ten koaxiální) má vždy urcité obvodové vlastnosti, které
urcují jeho schopnost prenášet nejruznejší signály. U koaxiálního kabelu je nejduležitejší obvodovou
charakteristikou odpor, který kabel klade strídavému proudu, nebo-li tzv. impedance. Ta se udává v Ohmech, a v
sítích typu Ethernet se používají koaxiální kabely s impedancí 50 Ohmu. Této impedanci jsou pak prizpusobeny i
všechny obvody ( predevším budice), které se na koaxiální kabel pripojují. Mnohem duležitejší než konkrétní
hodnota impedance (a také dalších obvodových velicin), je spíše to, aby obvodové vlastnosti kabelu byly všude
stejné. Jen tak je totiž možné zajistit optimální šírení prenášeného signálu. A zde je práve kámen úrazu: pokud
bychom na koaxiálním kabelu udelali odbocku, výrazne bychom tím zmenili jeho obvodové vlastnosti (v míste
odbocky i v jejím okolí). S lokální zmenou obvodových vlastností kabelu by se pak zmenil i zpusob prenosu
"užitecných" signálu celým kabelem, neboť by docházelo napríklad k nežádoucím odrazum signálu v míste
prípojky, k interferenci prímého a odraženého signálu, k útlumu a k dalším nežádoucím jevum, jejichž
konecným efektem by bylo výrazné zhoršení prenosových schopností celého kabelového rozvodu. S
homogenitou obvodových vlastností kabelu pak souvisí ješte jeden duležitý moment, který si uživatelé lokálních
sítí často vubec neuvedomují: nutnost zakoncit každý konec koaxiálního kabelu správným zakoncovacím
clenem. Pokud bychom totiž ponechali konec koaxiálního kabelu "ve vzduchu", jeho obvodové vlastnosti by se
zde menily skokem, a v dusledku toho by na tomto konci docházelo k výrazným odrazum prenášeného signálu.
Již pomerne základní znalosti z elektrotechniky však stací na odvození toho, že odrazum na konci kabelu lze
zamezit, pokud se oba vodice na jeho volném konci zkratují odporem stejné hodnoty, jakou má impedance
kabelu. A práve toto je úkolem tzv. zakoncovacích clenu (anglicky: terminator), na které se ale velmi casto
zapomíná, a jejichž neexistence je pak zdrojem mnoha nepríjemným problému (protože bez nich neprenesete sítí
prakticky nic). Vratme se ale zpet k naší puvodní otázce: jakým zpusobem pripojovat jednotlivé uzly na sítový
rozvod koaxiálním kabelem, když jsme si práve naznacili, že na nem vlastne nesmíme delat žádné odbocky?
Odpoved je ruzná podle toho, zde používáme tzv. tlustý, nebo tenký koaxiální kabel. V prípade tlustého kabelu
budeme potrebovat zvláštní zarízení, oznacované jako transceiver (což je termín, vzniklý jako slovní spojení
anglického: TRANSmitter and reCEIVER, neboli: vysílac a prijímac). Jde totiž skutecne o obvod, který v sobe
sdružuje funkci vysílace a prijímace signálu, prenášených po daném typu koaxiálního kabelu. Lze jej chápat jako
jednobitový budic (a prijímac) pro jednobitovou sbernici, jakou koaxiální kabel ve své podstate je. V prípade
tlustého kabelu se transceiver nejcasteji zapojuje tak, že se vloží mezi dva volné konce kabelu
(resp. souvislý kabel se preruší, a oba vzniklé konce se pripojí na transceiver). Existuje však ješte jedna další
možnost, která sice není príliš rozšírená, ale zato má velmi pekné oznacení: vampire tap, doslova: upírí odbocka.
Spocívá v tom, že souvislý tlustý kabel se neprerušuje, ale pouze se nabodne dvojicí tenkých hrotu
(vycnívajících z transceiveru), které se musí "propíchnout" až na stredový vodic resp. jeho vodivý plášt tak, aby
se dosáhlo vodivého spojení. Toto sice urcitým zpusobem porušuje homogenitu obvodových vlastností kabelu,
ale príslušné zmeny mohou být zanedbatelne malé. Základním úkolem transceiveru je tedy vysílat po
koaxiálním kabelu jednotlivé bity, a stejne tak je zase prijímat. Jeho dalším úkolem je pak i detekování kolizí
(tedy situací, kdy více uzlu prostrednictvím svých transceiveru vysílá najednou). Data, která má transceiver
vysílat, dostává od uzlového pocítace, se kterým je spojen kabelem - tzv. transceiverovým kabelem, mnohem
casteji ale oznacovaným jako drop kabel (drop cable). Tento kabel je vícežilový (obvykle je tvoren nekolika páry
kroucených vodicu), a slouží jak pro sériový prenos dat z/do transceiveru, tak i pro signalizaci kolize (od
transceiveru smerem k pocítaci), a v neposlední rade i pro napájení transceiveru. transceiver je tedy napájen z
pocítace, a díky tomu, že sám funguje jako zesilovac, muže být zmínený drop kabel pomerne dlouhý - až do 50
metru. Co je velmi podstatné: délka tohoto drop kabelu se nepocítá do celkové maximální délky jednoho
kabelového segmentu (která v prípade použití tlustého koaxiálního kabelu nesmí prekrocit 500 metru).
Transceiver je nekdy oznacován také jako zarízení MAU (Media Attachment Unit). Jeho rozhraní pro pripojení
drop kabelu je standardizováno, a je oznacováno jako AUI (Attachment Unit Interface). Druhý konec drop
kabelu se pak pripojuje k té cásti pocítace, která vytvárí sítové rozhraní. Nejcasteji jde o samostatnou sítovou
kartu (napr. u pocítacu PC), oznacovanou též jako NIC (Network Interface Card), ale stejne tak je možné, aby
príslušné obvody pro pripojení k síti byly zaintegrovány již v systémové desce (tak tomu často bývá u
Unixových pracovních stanic). Sítová karta (resp. Její zabudovaný ekvivalent) samozrejme musí být vybavena
príslušným rozhraním AUI pro pripojení drop kabelu. Na druhé strane ale již nemusí sama obsahovat budice a
prijímace, které již jsou v transceiveru. V prípade použití tzv. tenkého kabelu je strategie pripojování ponekud
odlišná. Zde se predpokládá, že príslušné výstupní budice a prijímace (jinak obsažené v transceiveru), jsou již
prímo zabudovány v sítové karte, a koaxiální kabel se musí dovést až k této karte. V míste pripojení karty se
tenký kabel preruší, a udelá se v nem velmi krátká odbocka - pomocí speciální spojky ve tvaru písmene T (lidove
nazývané: técko), na jejíž dva konce se pripojí rozpojený kabel, a tretí konec se pripojí ke konektoru, který
vycnívá ze sítové karty. Samotná propojka musí mít velmi presný tvar a provedení, aby zpusobovala co možná
nejmenší narušení homogenity tenkého koaxiálního kabelu. Oba konce tenkého kabelu se však nejprve musí
osadit konektory bajonetového typu, které se pak nasunou na ramena spojky ve tvaru písmene T, a pootocením
zajistí. Obdobný zpusob uchycení je pak mezi spojkou a samotnou sítovou kartou. Príslušné konektory jsou
oznacovány jako BNC konektory, což je údajne zkratka od: Bayonet-Neill-Concelman. Pokud si tedy budete
nekdy kupovat do svého pocítace sítovou kartu pro sít typu Ethernet, dejte si pozor, aby mela správné rozhraní.
Pokud je osazena pouze tzv. BNC výstupem (resp. BNC konektorem bez bajonetového uzáveru, nebot ten je na
T spojce), pak má v sobe již zabudovány potrebné výstupní budice (ekvivalent transceiveru), a mužete ji prímo
pripojit na kabelový rozvod tenkým koaxiálním kabelem. Nikoli ovšem na jiný druh rozvodu (napr. tlustým
koaxiálním kabelem cikroucenou dvoulinkou). Dnes prodávané sítové karty pro pocítace PC jsou ale casto
vybaveny (vedle BNC výstupu) i rozhraním AUI. Duvod je jednoduchý -pro výrobce je to skoro zadarmo, a
užitná hodnota sítové karty je mnohem vyšší. Rozhraní AUI totiž ve své podstate není nic jiného, než vyvedené
spojení mezi zabudovaným ekvivalentem transceiveru a ostatními obvody Sítové karty. Pokud toto rozhraní
použijeme, a pres drop kabel pripojíme samostatný transceiver, vlastne tím pouze odpojíme výstupní obvody,
zabudované prímo do sítové karty. Pokud vlastníte sítovou kartu, která má pouze rozhraní AUI (a nikoli BNC
výstup, a tudíž ani zabudovaný transceiver), presto se stále mužete napojit i na kabelový rozvod tenkým
koaxiálním kabelem. Transceivery totiž existují i v provedení pro tenký kabel, a jsou zakoncené príslušnými
BNC konektory. Pokud takovýto transceiver použijete a pomocí drop kabelu jej pripojíte ke své sítové karte s
rozhraním AUI, je výsledný celek funkcne ekvivalentní jedné sítové karte s BNC výstupem (jen s tím rozdílem,
že se skládá ze dvou fyzických celku, které je treba propojit drop kabelem). Krome prípadu, kdy jiná možnost
není (tj. má-li vaše sítová karta pouze rozhraní AUI), se toto rešení používá zcela zámerne i v situacích, kdy
vznikají problémy s omezenou délkou souvislého kabelového segmentu (která u tenkého kabelu ciní 185 metru).
Pokud totiž pripojíme na tenký kabel transceiver (tedy tzv. BNC transceiver), mužeme od nej vést drop kabel až
do vzdálenosti 50 metru, a délka tohoto drop kabelu se pritom nepocítá do celkové délky segmentu tenkého
kabelu! Kdybychom toto rešení nepoužili, museli bychom místo drop kabelu vést vlastní tenký koaxiální kabel, a
to tam a zpet, neboli v délce 2x50 metru!! Termín "drop kabel" se však používá ješte v jedné další souvislosti.
V poslední dobe se stalo velmi oblíbeným používání zvláštních zásuvek (tzv. EAD zásuvek, v odborném
žargonu: krabicek), ne nepodobných telefonním ci zásuvkám 220 V, které ale slouží potrebám rozvodu
pocítacových sítí. Tyto zásuvky se používají pro rozvod tenkým koaxiálním kabelem, tj. tímto kabelem jsou
mezi sebou propojeny, a jsou opatreny speciálním konektorem, do kterého se zasouvá príslušný protikus. Pokud
zasunut není, je zásuvka pruchozí, tj. pouze propojuje mezi sebou oba konce tenkého kabelu, které jsou na ni
pripojeny. K zásuvce je nutné si prikoupit zvláštní EAD kabel, tvorený dvojicí soubežne vedených tenkých
koaxiálních kabelu, které vytvárí smycku - na jednom konci jsou totiž spojeny T spojkou (Která se zasouvá do
sítové karty pocítace), zatímco na druhém konci drop kabelu je speciální konektor, který se zasouvá do zásuvky.
Zasunutím EAD kabelu dochází uvnitr zásuvky k rozpojení obou koncu kabelu, které tvorí sítový rozvod, a k
jejich napojení na oba tenké kabely v rámci EAD kabelu. Na první pohled to sice vypadá tak, jako kdyby s v
míste zásuvky vytvárela odbocka (ve tvaru písmene T), ale ve skutecnosti jde o smycku. Do celkové délky
kabelového segmentu je pak samozrejme nutné pocítat délku EAD kabelu dvakrát. Výhodou použití EAD
zásuvky a kabelu je predevším velká flexibilita - kabel je možné pripojovat i odpojovat za chodu síte, aniž by jí
to jakkoli vadilo. Další nezanedbatelnou výhodou je i prehlednost a elegance místo zmeti kabelu. Menší
terminologickou nepríjemností je pak to, že EAD kabelu se obvykle ríká "drop kabel", tedy stejne, jako kabelu
mezi sítovou kartou a transceiverem.

Rozdělení počítačů a jejich využítí


Informace je význam jaký člověk přisuzuje údajům. Údaje (data) mohou mít různý tvar např. čísla, znaky,
příkazy, povely atd. Fyzikální veličina nesoucí informaci se nazývá signál. Způsoby zpracování a využití signálů
se zabývá informatika. Z hlediska počítačů jsou informace vstupující do počítače - informace vstupní a
informace výstupní.

Počítače dělíme

• analogové
• číslicové
• hybridní

analogové - Pracují se spojitě měnícími se signály (veličinami) např. proud a napětí.


číslicové - Počítače vyjadřují veličiny číslicemi, které se zobrazují elektrickými veličinami.
hybridní - Spojují v sobě číslicové i analogové části počítače.

ANALOGOVÉ POČÍTAČE
Pro svoji činnost využívají modelování na základě matematických podobností. Dělí se z mnoha hledisek.
Nejrozšířenější jsou elektronické a hlavní funkce vykonávají tzv. operační jednotky. Mohou být v provedení jak
ss tak i v st. Pro vlastní modelování se používají ss. K jeho základním jednotkám patří tzv. pasívní jednotky
(sčítací odpory, kondenzátory, derivační a integrační články).
K aktivním částem patří operační zesilovač. Spojení aktivních a pasívních částí jsou tvořená vlastní operační
jednotkou, které jsou určitý děj schopny modelovat. Podle funkce se dále dělí analogový počítač na matematické
stroje, simulátory, trenažéry (pro výcvik pilotů letadel, lodí). Analogové počítače se neustále zdokonalují a
slouží v technické praxi.

ČÍSLICOVÉ POČÍTAČE
Tyto počítače pracují se dvěma stavy 0 a 1. Od roku 1952 dominuje ve výpočetní technice Van Neumanova
architektura, která se vyznačuje minimálními hardwarovými nároky a částečně i velmi jednoduchými
softwarovými strukturami. Z těchto důvodů představuje tato architektura stále ještě páteř dnešní výpočetní
techniky.
CPU má střadač pro zpracování aritmetických a logických funkcí, instrukční registr pro čtení a dekódování
instrukcí, čítač instrukcí pro řízení adresové sběrnice a indexový registr pro krátkodobé uchovávání dat při
zpracování numerických a logických operací. pro vstup a výstup dat jsou navíc ještě zapotřebí odpovídající
rozhraní I/O porty (input, output).
Princip: mikroprocesor přečte instrukci tak, že nejprve vyšle adresu na adresovou sběrnici, přitom reaguje
programovatelná pamě? vysíláním datové informace pro datovou sběrnici. Mikroprocesor přečte instrukci z
datové sběrnice a uloží ji do registru instrukce, kde je dekódována a pak prováděna. V první fázi se instrukce čte
a dekóduje, ve druhé fázi se provádí vlastní funkce instrukce. Nevýhoda je v tom, že se musí čekat, než se
provede první instrukce. Teprve potom se může dekódovat další instrukce (postupným zpracováváním). Tuto
nevýhodu částečně odstraňuje pipeling, který dekóduje instrukce předem.

Číslicové počítače

• CISC
• RISC

CISC
Systémy s rozsáhlým komplexním souborem instrukcí jsou založeny na architektuře CISC (Complex Instruction
Set Computer). Jsou to např. procesory VAX firmy Digital Equipment, série mikroprocesorů 80X86 Intel a
680X0 firmy Motorola. Pro tyto procesory je typická implementace architektury pomocí mikroprogramování.
Výsledkem je velký počet specializovaných typů instrukcí, z časového pohledu mohou trvat až 300 strojových
cyklů. Mikroprogramování poskytuje možnost nabízet spektrum strojů se stejnou architekturou, ale přesto
rozdílnou hardwarovou realizací. S rostoucím objemem sady instrukcí však bylo pro překladače překládající
programy do strojového kódu využít celou škálu speciálních instrukcí. Z toho vyplývá, že komplexní instrukce
jsou používány jen zřídka. Při zpracování programu z vyššího programovacího jazyka se velká část času
spotřebuje na čtení informace z pracovní paměti a naopak. Tyto poznatky vedly ke vzniku nové architektury s
redukovanou sadou instrukcí (RISC)

RISC
I RISC procesor vystačí pouze se 30 typickými instrukcemi. RISC počítač musí s tímto souborem pracovat
častěji než CISC, ale díky většímu počtu registrů může program proběhnout rychleji, protože většina operací se
koná přímo mezi registry a pamětí. CISC CPU má sadu obvykle 16 registrů, zatím co RISC má až 100 volných
registrů. Z toho důvodu není centrální jednotka vůbec zatěžována a mimo to je mikrokód zbytečný. Instrukce
jsou implementovány hardwarově (nejsou dekódované). Podstatné vlastnosti RISC - architektury umožňující
vysokou propustnost dat, mají malý počet jednoduchých instrukcí, instrukce s pevnou délkou a pevným
formátem, přímá hardwarová interpretace instrukcí, jednocyklový příkazový režim a díky internímu režimu
Pipeling překrývané provádění po sobě následujících instrukcí. Hlavní nárůst rychlosti RISC byl dosažen
použitím velkého množství registrů. Tím, že odpadly mikroprogramy, mohla být uvolněna celá oblast na
povrchu čipu, která byla tradičně používaná pro mikroprogramy a použitá pro velmi rychlou pamě?. U procesorů
RISC je jednodušší a rychlejší změna návrhu čipu, než u komplikovaných a komplexních struktur CISC. Počítač
RISC se nevyznačují jen vysokou rychlostí, ale také silnou orientací na operační systém UNIX. Tato kombinace
dnes běžných počítačových systémů se na trhu PC pevně usadila. Architektura RISC má slabinu ve výpočtech v
plovoucí desetinné čárce, proto byl zaveden speciální koprocesor pro numerické výpočty.

Softwarová instalace pevného disku, program FDISK


Formátování

1. nízkoúrovňové formátování - ověření komunikace mezi řadičem a pevným diskem, vytvoření struktury
disku
2. vytvoření partition - rozdělení disku
3. vysokoúrovňové formátování s případnou instalací operačního systému

Nízkoúrovňové formátování
Z dokumentace je nutno znát základní parametry pevného disku (stopy, hlavy, sektory na stopu a počáteční stopu
pro předkompenzaci zápisu). Předkompenzace zápisu se používá od určité stopy směrem ke středu disku, jelikož
sektory mají menší plochu pro zapsání dat, jako vně disku.Proto se zapisuje jinou hodnotou zápisového proudu.
Nutno mít zaváděcí disketu se softwarem pro nízkoúrovňové formátování.Program pro nízkoúrovňové
formátování je uložen v ROM řadiče.Vyvolání příkazem DEBUG,po promptu se zadá G=XXXX:YYYY, kde
XXXXh je startovací adresa programu (většinou bývá uvedena v dokumentaci k řadiči).
obvykle

C800:0005h nebo C800:0006h pro primární disk

nebo

D00:0005h nebo D00:0006h pro sekundární disk

Ukončení : CTRL+ BREAK


Konec programu DEBUG - Q
Program se provede a jeho výstupem je informace o nízkoúrovňovém naformátování s upozorněním na
vytvoření partition a formátováním na vysokou úroveň. Druhým způsobem je toto možné provést programem
Disk-manažer.

Vytvoření partition (rozdělení disku)


Příklad rozdělení disku:
Pevný disk 320MB

• Primární oblast 200MB (Primární disk) --> C:200 MB


• Rozšířená oblast 120MB (vytvoří se logické disky) --> D:80 MB , E:40 MB

Provádí se programem FDISK.


Základní volby programu FDisk:

1. Create DOS partition or logical DOS drive (vytvoření DOS partition nebo logic.disku)
2. Set active partition (nastavení aktivní partition)
3. Delete DOS partition or logical DOS drive (smazání partition nebo logic jednotky)
4. Display partition information (zobrazení info o partition)

Jednotlivé položky se vybírají z nabídky zadáním čísla a enter.


Program se ovládá z příkazové řádky a není pro začátečníka velice intuitivní. Nevýhodou je, že pokud změníme
partition existujícího disku, přijdeme o všechna data. Proto je nutné data nejdříve zálohovat nebo použít některý
z komerčních programů, který umí změnit partions "za běhu" bez ztráty dat (např Partition Magic)
Program FDISK má své ekvivalenty i na jiných operačních systémech (Linux-Fips...)
Vysokoúrovňové formátování
Vytvoří se zaváděcí záznam prázdné FAT a základního adresáře a zjistí se správná komunikace s jednotlivými
clustery disku. V další části může být instalace jádra operačního systému do zaveditelné partition pevného disku.
Realizace příkazem FORMAT nebo pomocí programu Disk-manažer.

Co je to TeX?
Úvod

Snad se moc nezmýlíme, pokud budeme tvrdit, že největší část strávená prací s počítačem se týká zpracování
textu. Od vynálezu knihtisku roku 1450 Gutenbergem se toho, pravda, hodně změnilo, ale snaha efektivně a
esteticky předávat informace zůstala.
V současné době většina uživatelů prochází jakousi pyramidou programů na zpracování textů. Většinou začíná s
T602 nebo nějakým podobným jednoduchým editorem. Může se ale stát, že potřebuje používat větší množství
fontů, začlenit do textu obrázek, graf nebo tabulku. Pak má ovšem velmi bohatou nabídku, zejména pokud se
týká textových procesorů běžících pod MS-Windows (AmiPro, MS Word, WinText602, WordPerfect atd.).
Pokud ani to uživateli nestačí, jsou pro něj těsně pod vrcholem pomyslné pyramidy připraveny DTP programy
jako Ventura Publisher, PageMaker, 3B2 nebo QuarkXPress. Pokud by uživatel absolvoval tuto dlouhou cestu
formou legálně zakoupených programů (jak jinak by také mohl), přišlo by ho to na pěkných pár desítek tisíc. A
to ještě nedosáhl vrcholu pyramidy. Co se na něm skrývá? Ano, odpověď můžete naleznout v názvu článku, je to
TeX. Slovo TeX se čte "tech", pochází totiž z řeckého (dovednost, umění).
Zvídavý čtenář, který slyší o TeXu poprvé si asi položil otázku, proč by nejdokonalejší měl být program, o
kterém v žádném z mnoha počítačových magazínů, které čte, nebylo ani písmenko. O typografických kvalitách
TeXu se vás pokusím přesvědčit v následujících odstavcích článku. S kvalitou souvisí i cena, která je pro většinu
uživatelů důležitá. Tento program je "public domain", byl vytvořen na půdě Stanfordské university a jeho autor
Donald Ervin Knuth ho věnoval široké veřejnosti k používání. Komerčně se šíří pouze některé speciální verze.
Mezi TeXem a ostatními textovými editory jsou velké rozdíly. U většiny editorů se text píše a průběžně
zobrazuje už tak, jak bude vypadat (tzv. WYSIWYG -- What You See Is What You Get -- "co vidíš, to
dostaneš"). Narozdíl od nich TeX potřebuje na svůj vstup text připravený v podstatě libovolným ASCII
editorem, který kromě vlastního textu obsahuje příkazy, které určují jak se má s textem pracovat, tj. určují typ
použitého písma, druh zarovnávání atd. Někdy se tedy můžeme setkat s označením WYWIWYG (What You
Want Is What You Get -- "co chceš, to dostaneš"). Už nyní je tedy patrné, že zatímco z našich obvyklých
programů dostaneme pouze to, co vidíme, z TeXu obdržíme to, co opravdu potřebujeme.

Vznik a historie TeXu

Už samotný důvod vzniku TeXu může našinci připadat zvláštní. Na začátku roku 1977 byl Knuth nespokojen se
sazbou své knihy "The Art of Computer Programming", která byla připravována nedokonalou analogovou
fotosazbou. O pár týdnů později se seznámil s možnostmi digitální fotosazby, změnil plány na příští rok a
rozhodl se vytvořit jazyk počítačové typografie TeX. Na podzim roku už byla hotova verze programu, která
potvrdila možnost vytvoření takového programu. Pro nově vzniklý software bylo důležité ujmout se a získat
budoucí uživatele. TeX je určen především pro sazbu náročných matematických textů, a proto Knuth 4. ledna
1978 přednesl pro Americkou matematickou společnost přednášku, kde vyzdvihl možnosti a přednosti TeXu.
V srpnu 1978 se TeX dostal k prvním uživatelům. Dnes je tato verze označována jako TeX 78. O dva roky
později, 22. února 1980, byla založena organizace, sdružující uživatele TeXu, která se jmenuje TUG (TeX Users
Group) a téměř současně s jejím vznikem začal vycházet TUGBoat -- časopis plně věnovaný problematice
TeXu. Později vznikaly i lokální organizace TUG, u nás existuje CSTUG, který mimo jiné čtyřikrát ročně
vydává "Zpravodaj Československého sdružení uživatelů TeXu". Další významnou verzí je TeX82, který byl
rozšířen o vylepšenou skupinu fontů Computer Modern. V roce 1989 byl Knuthem TeX přepracován tak, aby
mohl pracovat se vstupním souborem, který obsahuje znaky s kódem 0-255 (do té doby podporoval pouze 128
kódů). Tak vznikl TeX 3.0, který je navíc multilinguální, tj. v jednom textu lze dělit slova podle pravidel různých
jazyků.
TeX je velice mocný a dokonalý "formátovač" zejména pro matematické texty. Z této jeho specializace a veliké
flexibility vyplývá pro začínajícího uživatele nepřátelskost a složitost celého programu. Aby bylo usnadněno
zpracování textu, byly vytvořeny soubory maker, které uživateli mnohé usnadní. Nejznámějšími jsou PlainTeX,
LaTeX, AmSTeX a LamSTeX. PlainTeX je nejjednodušší nadstavba a všechna ostatní makra ji používají jako
svůj základ. LaTeX je určen zejména pro sazbu rozsáhlých publikací, a to nejen matematických, podporuje
tvorbu obsahu, rejstříku a křížových referencí. AmSTeX je uzpůsoben pro sazbu složitých kratších
matematických dokumentů a v LamSTeXu je patrná tendence rozšiřovat makra o nové další funkce a tím je
vlastně sbližovat; je to totiž jakýsi "míšenec" AmSTeXu a LaTeXu.

Způsob tvorby stránky

Je velmi obtížné nějak stručně popsat způsob tvorby stránky TeXem, neboť v originální dokumentaci je tomuto
tématu věnováno skoro 100 stran. Dopustíme se tedy na tomto místě mnoha zjednodušení, které však nic nemění
na komplikovanosti a dokonalosti sázecího algoritmu TeXu.
Tvorba stránky má dvě fáze, které probíhají téměř současně. V první fázi se čte vstupní soubor a každému znaku
se přiřadí jeho kategorie. Ze vstupního textu jsou zároveň vypuštěny přebytečné mezery a komentáře. Druhou
fází je vlastní sazba stránky. Obecně lze říci, že se postupuje od nejjednodušších objektů k složitějším. Přitom za
nejjednodušší objekt považujeme písmeno, které je charakterizováno svou šířkou, výškou nad účaří a hloubkou
pod účaří. Tato písmenka jsou pak na základě těchto údajů skládány do slov a ta (s pomocí mezer, které mají
definováno kromě své optimální velikosti i to o kolik mohou být smrštěny či roztaženy) do řádků, ty pak
postupně do odstavců a ty po složení dají již konečný objekt -- stránku.
Z předchozího vypadá popis tvorby stránky velmi jednoduše, ve skutečnosti jsme ale opomněli spoustu
možností, jako umístění tabulek na stránku, obtékání textu kolem obrázků, sazbu do sloupců, horní a dolní
záhlaví, poznámky pod čarou a spoustu dalších. Vzhledem ke komplikovanosti sazby se TeX automaticky podle
potřeby pohybuje mezi šesti režimy práce. Každý z režimů má na starost specifické úkoly: skládání písmenek na
řádku a do slov, skládání řádek do odstavců, skládání odstavců na stránku (i do více sloupců), doplňování
stránky o záhlaví, sazbu matematických vzorců atd.
Velice zajímavý je například způsob tvorby odstavce. TeX nejprve zkusí vysázet odstavec tak, aby nemusel
použít dělení slov. Tato fáze je velmi rychlá, protože nemusí zjišťovat, jak je které místo slova vhodné k dělení.
Pokud se mu to nepodaří (není-li šířka řádky příliš malá, stane se to málokdy), doplní slova o údaje o vhodnosti
dělení a celý odstavec zpracuje znovu již s možností dělit slova.
TeX kontroluje i spoustu takových maličkostí, jako je to, aby odstavec nezačínal na poslední řádce stránky, nebo
naopak nekončil na první řádce stránky. Dále TeX kontroluje, aby poslední slovo odstavce nebylo na samostatné
řádce, a spoustu dalších "maličkostí", které ve skutečnosti velmi pozvednou estetický vzhled dokumentu.

Cyklus zpracování textu TeXem

Zpracování textu probíhá v cyklu, který se skládá ze tří částí. První část je příprava vstupního textu pomocí
libovolného textového editoru. Tento vstupní soubor obsahuje kromě textu i řídící posloupnosti, které určují
vzhled dokumentu, tj. formát řádky, odstavce a stránky, a které mohou ovlivnit mnoho dalších parametrů. TeX
obsahuje asi 300 primitivních funkcí; další složitější posloupnosti mohou být definovány v průběhu zpracování
textu (například již zmíněné balíky maker jako PlainTeX a další). Tak narozdíl od běžných textových procesorů,
kde se pro tisk speciálních matematických symbolů, řeckých písmen apod. používají různé klávesnice, TeX
obsahuje makra pro jejich sazbu; pokud tedy chceme například napsat , stačí do vstupního souboru zapsat
$\alpha$. Protože TeX vznikl v USA, jsou názvy řídících posloupností většinou odvozeny od anglických slov
nebo jejich zkratek.
Primitivní funkce je možné podle jejich činnosti zařadit do několika skupin:

• primitivní funkce řídící zlom a zarovnávání odstavců, a to včetně prostředků pro ovlivnění dělení slov;
• primitivní funkce ovlivňující celkový formát stránky -- velikost a umístění, zlom stránky, horní a dolní
záhlaví, poznámky pod čarou, umístění obrázků a tabulek;
• primitivní funkce řídící velikosti mezer -- mezi písmeny, slovy, odstavci a symboly v matematických
vzorcích;
• primitivní funkce pro speciální zarovnávání textu -- tabulky, matice atd.;
• primitivní funkce umožňující definováních nových řídících posloupností;
• primitivní funkce měnící chování TeXu;
• primitivní funkce ovládající práci TeXu;
• primitivní funkce umožňující pracovat s externími soubory -- začleňovat je do vstupního souboru, měnit
je a vytvářet nové.

Takto připravený vstupní soubor potom necháme přeložit TeXem, ten vytvoří .dvi soubor (device independant),
který popisuje vzhled jednotlivých stránek tak, že stránka je soubor kódů znaků a příslušných fontů s údajem o
jejich umístěná na stránce. Z těchto údajů pak může být dokument vytištěn nebo zobrazen na libovolném
výstupním zařízení; tento soubor je tedy naprosto nezávislý na výstupním zařízení. To je také jedna ze silných
stránek TeXu -- možnost tisknout dokumenty na čemkoliv, počínaje devítijehličkovou tiskárnou a konče
osvitovou jednotkou s rozlišovací schopností několik tisíc dpi.
O vlastní zobrazení dokumentu, tj. .dvi souboru, se stará ovladač příslušného zařízení, který z informace
obsažené v .dvi souboru a bitových map jednotlivých písmenek vytvoří konečnou podobu dokumentu a zobrazí
ji na obrazovce nebo tiskárně.

Sazba matematiky
Rozebírat zde podrobně všechny možnosti matematické sazby nemůžeme, a proto si jen na jednoduchém
příkladu ukážeme, jak se to dělá. Dejme tomu, že potřebuje vysázet následující vzorec:

Do vstupního souboru stačí zapsat: $$ \lim_{n \rightarrow \infty} \left(1 + {1 \over n} \right)^n = e $$, což není
vůbec nepodobné tomu, jak by vám tento vzorec v Americe nadiktovali do telefonu.

Začleňování grafiky do TeXu

Co se týče začleňování grafiky do textu, je na tom TeX na první pohled poněkud hůř. Umožňuje pouze
vynechání místa pro začlenění obrázku, popř. může do tohoto místa uložit informaci o obrázku pro ovladač
výstupního zařízení. Vysvětlení pro toto chování TeXu je jednoduché. TeX vytváří .dvi soubor, který je na
výstupním zařízení nezávislý, kdežto grafický obrázek je vždy určen pro výstupní zařízení s určitou rozlišovací
schopností.
Je tu však je ještě jedna možnost, vhodná zejména pro technické obrázky a grafy průběhu různých
matematických funkcí: pomocí METAFONTu, programu na generování fontů pro TeX, vytvořit font, který
obsahuje požadované obrázky. S nimi se pak pracuje jako s jednotlivými písmeny, které jsou stejně jako ostatní
písmena nezávislá na výstupním zařízení.
Poslední dobou se objevuje mnoho programů, které umožňují, většinou až na úrovni ovladače obrazovky nebo
tiskárny, začlenit do dokumentu obrázek v některém z rozšířených grafických formátů (PCX a jiné), nebo z
různých programů (např. MATHEMATICA).
Kromě bitmapových obrázků lze do dokumentu zařazovat i obrázky v PostScriptu (EPS), při jejichž použití není
ztrácena nezávislost na rozlišovací schopnosti výstupního zařízení.

A jak je to s češtinou?

Přizpůsobení nějakého softwaru pro určitý jazyk můžeme rozdělit do několika stupňů:

1. zpracování národních znaků, tj. pro češtinu znaků s akcenty (háček, čárka, kroužek a případně přehláska
a stříška);
2. národní speciality -- třídění, formát data a měny a ustálené typografické zvyklosti;
3. dělení slov podle pravidel příslušného jazyka;
4. převedení příkazů a klíčových slov do národního jazyka -- tento bod nacionalizace je velmi diskutabilní,
neboť s jeho splněním padá kompatibilita se systémy pro jiná národní prostředí.

Nejdůležitější věc, práce s českými písmy, je na první pohled velmi elegantně vyřešená už v původní anglofonní
verzi TeXu. Písmo Computer Modern totiž obsahuje tzv. létající akcenty, samostatné znaky, které mohou být
umístěny nad kterýmkoliv jiným písmenem. Bohužel kvůli malé zkušenosti D.E. Knutha s jazyky, které
používají háček, není tvar tohoto znaménka příliš povedený. Mnohem větším nedostatkem je ale algoritmus
používaný pro umísťování akcentů nad písmena. TeX to řeší nejjednodušším možným způsobem, akcent umístí
nad logický střed boxu písmenka. To bohužel vždy není opticky nejlepší, zejména u větších fontů, zvláště pak
skloněných (slanted a italica). Jisté problémy jsou ještě se znaky jako `ť' a `ď', neboť apostrof se nechová jako
typický akcent.
Jediné úplné řešení je tedy vytvořit nové fonty, které budou obsahovat znaky s již umístěnými akcenty (tyto
fonty ovšem budou nekompatibilní s ostatními), a používat TeX 3.0, který umožňuje zpracovat osmibitovou
vstupní abecedu. Na setkání uživatelů CS-TeXu v červenci, byla přednesena přednáška o nové verzi programu
(ten byl zároveň rozšířen mezi členy sdružení CSTUG), která mimo jiné obsahuje zmíněné osmibitové fonty s již
umístěnými akcenty.
Jelikož je TeX velmi variabilní systém, není problém předefinovat takové věci jako je formát data a typografické
zvyklosti. Tuto novou definici například obsahuje styl czech.sty.
Dělení slov je jednou z nejobtížnějších částí každého systému na zpracování textu. Pro češtinu, stejně tak jako
pro většinu jazyků, neexistují zcela jednoznačná pravidla pro dělení. Při dělení slova v češtině má přednost
dělení mezi příponou (případně předponou) a kořenem slova, slovo se může dělit po slabikách, ale jak bezpečně
rozeznat slabiku. Navíc ještě čeština obsahuje slabikotvorné souhlásky, které celou situaci značně komplikují.
Existuje samozřejmě mnoho dalších kritérií pro dělení slov, ale nemá smysl je zde jmenovat. V současné době
existují dva způsoby dělení slov, pomocí algoritmického popisu pravidel dělení a pomocí tabulky dělení. TeX
využívá druhou možnost, tj. algoritmus dělení řízený tabulkou. Ten poskytuje docela slušné výsledky a
dokonalost řádkového zlomu TeXu navíc omezuje potřebu dělení slov na minimum.
Na závěr se ještě zmíníme o jednom typografickém pravidlu, specifickém pro češtinu. Na konci řádky nesmí
zůstat neslabičná předložka. To lze v TeXu snadno vyřešit pomocí tzv. aktivního znaku `~', který představuje
mezeru, ale v místě použití zakazuje lámat řádku. Existuje krátký program vlnka.exe, který ve vstupním textu za
všechny neslabičné předložky automaticky doplní tento znak.

Závěr

O tom, zda používat TeX, či nikoli, musí rozhodnout každý uživatel sám. Pokud je se svým stávajícím systémem
na zpracování textu spokojen, není důvod, proč měnit, zvláště když je TeX, díky své zcela odlišné filozofii od
jiných systémů na zpracování textů, poměrně komplikovaný. Pokud však potřebujete sázet spoustu matematiky,
jinou možnost ani nemáte -- nic lepšího ještě dlouho existovat nebude.

You might also like