140 likes | 327 Views
Tomáš Uhrín Ján Mišút. ZAČIATOK PREZENTÁCIE. AUTORI. PRINCÍPY POČÍTAČOV. OBSAH Strojové Inštrukcie Vektorové Riadenie Logické Inštrukcie. STROJOVÉ INŠTRUKCIE. CPU podľa programu uloženého v operačnej pamäti vykonáva strojové inštrukcie a riadi činnosť celého počítača.
E N D
Tomáš Uhrín Ján Mišút ZAČIATOK PREZENTÁCIE AUTORI
PRINCÍPY POČÍTAČOV OBSAH • Strojové Inštrukcie • Vektorové Riadenie • Logické Inštrukcie
STROJOVÉ INŠTRUKCIE • CPU podľa programu uloženého v operačnej pamäti vykonáva strojové inštrukcie a riadi činnosť celého počítača. • Strojová inštrukcia je základný prvok programu. Je najmenšou jednotkou, ktorá sa mimo procesora ďalej nerozkladá a ktorá udáva jeden krok práce procesora. • Strojová inštrukcia pozostáva z operačného kódu (čo sa má urobiť) a z operandov (argumentov), ktorých počet závisí na konkrétnej operácii.
INŠTRUKČNÝ (STROJOVÝ) CYKLUS • Pojmominštrukčný (resp. strojový) cyklus označujeme postupnosť činností riadiacej jednotky, ktorá sa pri spracovaní inštrukcií neustále opakuje (kým sa neobjaví inštrukcia STOP). • Strojový cyklus je postupnosť niekoľkých taktov. Čas, ktorý procesor potrebuje na jeden prechod inštrukčným cyklom sa nazýva doba cyklu. Je to jedno z kritérií pri hodnotení pracovnej rýchlosti procesora.
ARGUMENTYSTROJOVÝCHINŠTRUKCIÍ • Každá strojová inštrukcia sa skladá z operačného kódu a operandov (argumentov) inštrukcie. • OPERAČNÝ KÓD OPERAND 1 OPERAND 2 • Všetky inštrukcie majú 2 operandy (až na negáciu). Operandy sa odvolávajú na adresy registrov, adresy pamäťových miest, či relatívne adresy.
TYPYSTROJOVÝCHINŠTRUKCIÍ V nasledujúcom zozname sa nachádzajú najčastejšie používané inštrukcie: • Presunové inštrukcie slúžia na presun údajov medzi registrami procesora, medzi registrom a pamäťou, registrom a V/V zariadením alebo medzi pamäťovými miestami navzájom Napr. MOV - presun dát , (MOV AX,BX) • Výpočtové (operačné) inštrukcie predpisujú vykonanie aritmetických, logických alebo iných operácií s operandmi. Napr. ADD – sčítanie (ADDSI,OFFSET_ARRAY) SUB – odčítanie (SUB CX,4)
INÉ TYPY INŠTRUKCIÍ • Riadiace inštrukcie sú určené na vykonanie špeciálnych operácií, ktoré priamo súvisia s riadiacou alebo operačnou časťou, prípadne s reakciou na externé stimuly. Sú to napr. inštrukcie na nastavenie alebo vynulovanie príznakov, povolenie alebo zakázanie externého prerušenia,softvérovéprerušenie atď. Napr. CLD, STC, STI, INT 21H. 4. Logické inštrukcie
PRERUŠENIE (INTERRUPT) • Prerušenie je špeciálny stav, kedy je procesor nútený na základe rôznych interných alebo externých podnetov prerušiť svoju činnosť a vykonať obsluhu spravidla určitých abnormálnych udalostí. Po ich obslúžení sa procesor vráti k pôvodne vykonávanej činnosti. Podľa zdroja prerušenia činnosti procesora rozoznávame prerušenie: • externé (vonkajšie) alebo tiež asynchrónne prerušenie • interné (vnútorné) alebo tiež synchrónne prerušenie
Vektorové riadenie • Hovoríme o tabuľke vektorov prerušení, lebo sa „skáče“ na adresu uvedenú v tejto tabuľke. Keby sme mali v operačnej pamäti rezervované presne vymedzené miesto na kód prerušenia (resp. na ovládač), nemuselo by nám na niektoré zložité obslužné programy stačiť. A naopak, pre jednoduché kódy by bolo veľké rezervované miesto zbytočným mrhaním vzácnou operačnou pamäťou. Takto je to flexibilnejšie, kód môže byť hocikde a jeho veľkosť určuje výrobca operačného systému.
VEKTOROVÉ RIADENIE • Rozlišujesa 256 rôznych prerušení a výnimiek ( zaberajú 256*4 bajtov = 1 KB RAM). Po prijatí požiadavky o prerušenie procesor dokončí práve vykonávanú inštrukciu (aj keď ide o inštrukciu trvajúcu mnoho strojových taktov, napríklad ak ide o inštrukciu kopírovania veľkého bloku dát) a automaticky vykoná niekoľko akcií: • 1. na zásobník (používa sa aj výraz do zásobníka) uloží obsah stavového registra (nazýva sa aj príznakový register) FLAGS, • 2. vynulujú sa príznaky IF a TF (zakážu sa ďalšie prerušenia a zakáže sa krokovací režim), • 3. do zásobníka sa uloží register CS, (pod uložením registra myslíme skopírovanie jeho obsahu) • 4. register CS sa naplní 16 bitovým obsahom z adresy n x 4 + 2, • 5. do zásobníka sa uloží register IP ukazujúci na nevykonanú inštrukciu, • 6. register IP sa naplní 16 bitovým obsahom adresy n x 4.
LOGICKÉ INŠTRUKCIE • AND-súčin • XOR- antivalencia • OR- logický súčet • NOT- negácia. • AND: je logický súčin bitov. To znamená, že pre každú dvojicu bitov obsahu oboch parametrov sa vykoná konjunkcia (teda obidva bity musia byť nastavené na jednotku, aby bol nastavený i výstup na jednotku, ináč je výstupný bit nulový) a výsledok sa uloží na miesto určené prvým parametrom • Príklad (AND AL,MASK)
XOR: je logický exkluzívny súčet bitov. To znamená, že pre každú dvojicu bitov obsahu oboch parametrov sa vykoná alternatíva (teda obidva bity musia byť rôzne, aby bol nastavený i výstup na jednotku, ak sú rovnaké, je výstupný bit nulový) a výsledok sa uloží na miesto určené prvým parametrom. Príklad (or bl,00001000b) OR: je logický súčet bitov. To znamená, že pre každú dvojicu bitov obsahu oboch parametrov sa vykoná disjunkcia (teda obidva bity musia byť nulové, aby bol nulový i výstup, ináč je výstupný bit jednotka) a výsledok sa uloží na miesto určené prvým parametrom.Príklad (xor al,11110000b ; al := 10100101b) KONIEC PREZENTÁCIE LOGICKÉ INŠTRUKCIE