230 likes | 305 Vues
Přehled registrů. Střední odborná škola Otrokovice. Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Miloš Zatloukal Dostupné z Metodického portálu www.rvp.cz, ISSN: 1802-4785, financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
E N D
Přehled registrů Střední odborná škola Otrokovice Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Miloš Zatloukal Dostupné z Metodického portálu www.rvp.cz, ISSN: 1802-4785, financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze. www.zlinskedumy.cz
Přehled registrů Obsah tématuRegistr – definice, parametryDruhy registrů - systémové - datové - střadačové - zápisníkové - paměť RWM - zásobník - registry podsystémů mikropočítače
Registr Jde o samostatně adresovatelnou část paměti, umístěnou na čipu mikroprocesoru nebo jednočipového mikropočítače. Jaké jsou parametry registru? - typ – zařazení do skupiny - šířka – počet bitů - druh adresování – bajtové, bitové - jeho adresa Příklad: registr P1 (Intel 8051) - skupina registrů podsystémů mikropočítače – registry vstupů a výstupů (porty) - 8 bitový -adresování symbolické - bajtové: P1 - bitové P1.0 až P1.7 - adresa - symbolická: P1 - číselná: 90H
Systémové registry Mají přesně definovanou funkci (jsou spojeny s nějakou hardwarovou funkcí) Patří k nim: - Instrukční registr - Dekodér instrukce - Čítač instrukcí - Registr příznaků
Instrukční registr - obsahuje aktuální instrukci (její číselný kód) - přečtení instrukce z paměti programu zajistí řadič - na něj pak navazuje dekodér instrukce Dekodér instrukce - rozpozná přesně instrukci - provede dekódování (převod číselného kódu) na řídicích signály pro řadič - řadič pak dále pracuje podle informací v instrukci obsažené (řídí načtení vstupních hodnot a uložení výsledků do paměti) - dekodér dále řídí činnost ALU (provedení operace požadované instrukcí) Čítač instrukcí – programový čítač – Program Counter(PC) - jde o jakýsi ukazatel řádku v programu – počítadlo - slouží k automatickému adresování instrukcí programu - po vykonání běžné instrukce se jeho obsah zvětší automaticky o jedničku – tím číselně označuje adresu následující instrukce programu (běžné jednobajtové adresování) - u delších instrukcí se obsah čítače zvětší o 2, 3, 4 (podle počtu bajtů instrukce)
Čítač instrukcí – pokračování - obsah může být změněn skokově – jak? - instrukcemi skoků - nepodmíněné (skok vždy) - podmíněné (skok na určenou adresu nastane až po splnění podmínky) - příkazem pro spuštění podprogramu (jeho tzv. volání) - vždy je nutné zajistit návrat do aktuálního místa v programu Registr příznaků ( příznakový registr – Flag Register– F) Co je příznak (flag)? - informační bit, který svojí hodnotou signalizuje výsledek nějaké operace - Flag – praporek je odvozen od signalizačního praporku (např. atletika, stadion, rozhodčí – rekord, přešlap…) - příznakové bity jsou na výstupu ALU - jejich význam se může lišit v závislosti na typu procesoru - mnohé z nich jsou univerzální
Registr příznaků – pokračování - příznakové bity se sdružují do společného registru příznaků (říká se mu stavový – Status) - může tvořit spolu s obsahem střadače tzv. stavové slovo programu (PSW – Program Status Word) - příznakové bity - mohou vyjadřovat výsledek poslední operace, která na ně měla vliv (uložený údaj) - mohou odrážet aktuální stav obsahu střadače (pak se neustále mění a nejsou dlouhodobě pamatovány) - jsou automaticky nastavovány (nula nebo 1) hardwarově - existuje i možnost programové změny obsahu příznaku (instrukcí – tedy softwarově).
Příklady příznaků : C (CY) – CARRY – přenos - mění stav při aritmetických operacích, porovnáních, posunech a rotacích - nastaví se při přenosu z nejvyššího řádu(tj. z 8. do 9. bitu) AC – AUXILIARY CARRY – pomocný přenos - používá se při práci se čtyřbitovými čísly – např. v BCD kódu - nastaví se v případě přenosu ze 4. bitu do 5. (číslováno od 1) Z – ZERO – příznak nuly - používá se např. u cyklů se snižováním počítadla - nastaví se, je-li výsledek ve střadači nulový P – PARITY – parita - nastaví se do takového stavu (0 nebo 1) aby svojí hodnotou doplnil počet jedniček ve střadači v závislosti na požadavku, aby byl počet sudý či lichý
Příklady příznaků – pokračování: OV – OVERFLOW – přetečení - nastaví se při přenosu z předposledního (7.) do 8. bitu (výsledek je v intervalu 128 až 255, 8. bit může být znaménkový a je pak přepsán) - při zakázaných operacích – např. při dělení nulou
Ukládání dat Data určená ke zpracování nebo ukládaná jako mezivýsledky nebo konečné výsledky výpočtů se ukládají do pamětí (registrů). Datové registry se dělí na: Střadačové registry Střadač = akumulátor (také pracovní registr – registr W – Work) - bývají v procesoru jeden nebo dva (např. u Intel 8051 jde o registr A (hlavní) a B (pomocný) - nepoužívají se pro dlouhodobé uložení dat - jsou nejvíc používány při aritmetických a logických operacích - jejich obsah je nejčastějším operandem (číslem pro výpočty) - nejčastěji se do nich ukládá výsledek
Zápisníkové registry - sdruženy do skupin – sad registrů (registrová banka) - aktuálně se pracuje pouze s jednou sadou (např. celkově ze 4) - slouží pro uchovávání mezivýsledků operací - jejich počet je omezen (zabírají významně místo na čipu) - k jejich obsahu je rychlejší přístup než k vnější datové paměti - jednoduše se pracuje s jejich obsahem - jde o univerzální registry Paměť dat typu RWM (ReadWriteMemory – paměť pro čtení a zápis) - do ní se ukládají rozsáhlejší nebo méně používaná data (čísla – operandy pro aritmetické a logické operace)
Zásobník – Stack - jde o paměť se zvláštním přístupem (jde o postupný (sekvenční) přístup k obsahu této paměti Použití zásobníku: - k dočasnému uložení obsahu důležitých registrů (např. střadače, registru příznaků… jejichž obsah by se během různých operací přepsal) - k uložení návratových adres při volání podprogramů (včetně těch pro obsluhu přerušení)
Umístění zásobníku: a) v běžné paměti dat - přístup k němu je přes registr nazvaný ukazatel zásobníku (Stack pointer – SP) - číslo v ukazateli zásobníku určuje místo vrcholu zásobníku - při ukládání do zásobníku se číslo v jeho ukazateli zvýší o jedničku - při výběru informace ze zásobníku se zase sníží b) v registrovém bloku - v procesoru jsou pro něj vyhrazeny speciální registry (určené pouze pro uchování obsahu čítače instrukcí a jeho pozdější obnovu) - počet těchto registrů bývá mezi 2 a 8 - není tedy možné pracovat s přímo daty uloženými v zásobníku
Typy zásobníků podle pořadí vkládání a vybírání obsahu: a) FIFO(FirstInput FirstOutput) - co jako první vstoupí dovnitř, to jako první vyjde ven (číslo umístěné jako první v pořadí, bude také jako první získáno nazpět, vyňato, přesunuto pryč) - tato paměť se ale jako zásobník běžně nepoužívá b) LIFO (Last Input FirstOutput) - co jako poslední vstoupí dovnitř, to jako první vyjde ven (číslo umístěné jako poslední v pořadí, bude naopak jako první získáno nazpět (vyňato, přesunuto pryč) - tato paměť se je pro zásobník nejčastěji používána
Registry podsystémů mikropočítačezahrnují řídicí a pomocné registry pro složitější celky jednočipového mikropočítače. Registry mohou být také označovány zkratkou SFR (speciální funkční registry) K těmto celkům patří např. čítač/časovač (Counter / Timer) přerušovací podsystém (InterruptSystem) registry vstupů a výstupů (porty – brány) regisry sériové komunikace hlídací obvod typu Watchdog (WDT) časový obvod – RTC – (Real TimeClock)
1. Instrukce je v programu pro procesor zapsána jako: Zkratka z 1 až 4 písmen Kombinace písmene (písmen) a dvojkového čísla Dvojkové n-bitové číslo Kontrolní otázky 2. Jako pomyslné pravítko – ukazovátko v programu slouží: Čítač/časovač Čítač instrukcí Časovač typu WDT 3. Informační bit, který slouží jako indikátor typu Platí – neplatí se nazývá: Příznak Návěstí Ukazatel zásobníku
1. Instrukce je v programu pro procesor zapsána jako: Zkratka z 1 až 4 písmen Kombinace písmene (písmen) a dvojkového čísla Dvojkové n-bitové číslo Kontrolní otázky – správné odpovědí červeně 2. Jako pomyslné pravítko – ukazovátko v programu slouží: Čítač/časovač Čítač instrukcí Časovač typu WDT 3. Informační bit, který slouží jako indikátor typu Platí – neplatí se nazývá: Příznak Návěstí Ukazatel zásobníku
Seznam obrázků: Obr. 1: vlastní, Složení procesoru z hlediska systémových registrů Obr. 2: vlastní, Paměť typu LIFO a FIFO - porovnání
Seznam použité literatury: [1] Matoušek, D.: „Číslicová technika“, BEN, Praha, 2001, ISBN 80-7232-206-0 [2] Blatný, J., Krištoufek, K., Pokorný, Z., Kolenička, J.: „Číslicové počítače“, SNTL, Praha, 1982 [3] Kesl, J.: „Elektronika III – Číslicová technika“, BEN, Praha, 2003, ISBN 80-7300-075-X