1.02k likes | 1.25k Views
Opakovanie 8051. 9415. 10. 8E. H. 752. 8. VII. Číselné sústavy. 10110010. 2. Základné pojmy. Číselná sústava je systém jednoznačných pravidiel pre zobrazenie číselných hodnôt pomocou konečného počtu znakov (číslic, cifier)
E N D
9415 10 8E H 752 8 VII Číselné sústavy 10110010 2
Základné pojmy • Číselná sústava je systém jednoznačných pravidiel pre zobrazenie číselných hodnôt pomocou konečného počtu znakov (číslic, cifier) • Číslo je reprezentované v danej číselnej sústave postupnosťou číslic • Číselnú sústavu charakterizuje z vonkajšieho pohľadu použitá množina znakov - číslic
Delenie číselných sústav • Polyadické (pozičné) – význam číslice vždy závisí od jej pozície v zápise • Pozičné sústavy sú napr. desiatková, osmičková, dvojková, šestnástková • Nepolyadické (nepozičné) – význam číslice nemusí vždy závisieť od jej pozície v zápise • Nepozičné sústavy sú napr. rímska alebo „pivná“ • Vo výpočtovej technike sa používajú len pozičné sústavy
Príklad Príklad: Preveďte číslo 39 z desiatkovej do dvojkovej sústavy. Dané: Nc=Nc0=39 z=2 A=? Vzťahy: ai = zvyšok po delení (Nci /z) Nci je celočíselný podiel Nci-1/z V Ý Z N A M (39)10 = (100111)2
Príklad Príklad: Preveďte číslo 100111 z dvojkovej do desiatkovej sústavy. Dané: z=2 a5=1,a4=0,a3=0, a2=1,a1=1,a0=1 Nc=? Vzťahy: Riešenie: Nc = a5*25 + a4*24 + a3*23 + a2*22 + a1*21 + a0*20 Nc = 1*32 + 0*16 + 0*8 + 1*4 + 1*2 + 1*1 Nc = 32 + 0 + 0 + 4 + 2 + 1 Nc = 39 (100111)2 = (39)10
Príklad Príklad: Preveďťe číslo 1110011.1101 z dvojkovej do osmičkovej sústavy Riešenie: Základ dvojkovej sústavy je 2=21, teda j=1. Základ osmičkovej sústavy je 8=23, teda k=3. 1. K celej časti pridáme nuly zľava tak, aby počet číslic bol násobkom k. Počet číslic celej časti je 7. Najbližší násobok čísla 3 je 9. Teda celá časť čísla bude mať 9 číslic => 001110011 2. K desatinnej časti pridáme nuly sprava tak, aby počet číslic bol násobkom k. Počet číslic desatinnej časti je 4. Najbližší násobok čísla 3 je 6. Teda desatinná časť čísla bude mať 6 číslic => 110100
Príklad 3. Z cifier ai vytvoríme k-tice, ktoré potom prevádzame na cifry pi. Teda z cifier čísla 001110011.110100 vytvoríme trojice, ktoré potom prevádzame. 001 | 110 | 011 . 110 | 100 1 6 3 . 6 4 (1110011,1101)2 = (163,64)8
Príklad Príklad: Preveďťe číslo 163.64 z osmičkovej do dvojkovej sústavy Riešenie: Základ osmičkovej sústavy je 8=23, teda j=3. Základ dvojkovej sústavy je 2=21, teda k=1. 1. Jednotilvé číslice ai prevádzame na trojice 1 6 3 . 6 4 001 110 011 . 110 100 (1110011,1101)2 = (163,64)8
Reprezentácia informácie v počítači
Úvod • Informácie v počítači sa reprezentujú prostredníctvom hodnôt určitých fyzikálnych veličín • V reálnych počítačoch môžu tieto fyzikálne veličiny nadobúdať hodnoty iba z istej konečnej množiny hodnôt • Otázka: Aká fyzikálna veličina je nositeľom informácie v počítačoch? • Odpoveď: Elektrické napätie.
Analógové zobrazovanie informácií • Pri analógovom zobrazení ide o spojité zobrazenie, tj. každej hodnote vstupnej veličiny zodpovedá istá hodnota fyzikálnej veličiny (ktorá je nositeľom informácie) • Tento spôsob zobrazenia sa používal v analógových počítačoch a v súčasnosti sa s ním nestretneme.
Číslicové zobrazenie informácií • Pri číslicovom zobrazovaní informácie sa na uchovanie informácií používajú pamäťové prostriedky, ktoré sa nazývajú registre a pamäte. • Registre a pamäte sa skladajú z pamäťových elementov, tzv. buniek, ktoré sú schopné uchovávať jednu z dvoch hodnôt a to: • H (high) – vysokú úroveň fyzikálnej veličiny • L (low) – nízku úroveň fyzikálnej veličiny
Číslicové zobrazenie informácií • Týmto dvom hodnotám môžeme priradiť logické hodnoty 0 a 1. • V kladnej logike reprezentuje H logickú 1 a L logickú 0. V zápornej je to naopak. • Register je usporiadaná n-tica pamäťových buniek. Počet týchto buniek vyjadruje veľkosť registra. • Otázka: V čom sa vyjadruje veľkosť registrov a pamätí? • Odpoveď: V bitoch.
1. bit (n-1). bit 0. bit Registre • Jednotlivé bity registra sa označujú sprava doľava a číslovanie bitov začína od 0. • Posledný bit osembitového registra bude mať poradové číslo 7.
Pamäte • Pamäť je množina rovnakých buniek, z ktorých každá je samostatne identifikovateľná svojou pozíciou - adresou. • Pre reprezentáciu informácií v pamäti čislicového počítača sa používa kódovanie pomocou postupnosti číslic 0 a 1 . • Sú to číslice, ktoré používa dvojková (binárna) číselná sústava. Preto uvedené postupnosti 0 a 1 budeme nazývať binárny kód .
Pamäte vs. registre • Pamäte majú väčšiu veľkosť ako registre, ich veľkosť sa udáva v násobkoch Byte-ov • Registre majú menšiu veľkosť ako pamäte, ich veľkosť sa udáva v bitoch alebo byte-och • V registroch nás väčšinou „zaujímajú“ jednotlivé bity a v pamätiach byte-y
Typy informácií • V číslicovom počítači sú binárne (bitovo) zobrazované (kódované) všetky druhy informácií: • údaje (údajové štruktúry) - informácie, ktoré sú predmetom alebo výsledkom spracovania (operandy, výsledky) • inštrukcie - informácie, ktoré definujú spôsob spracovania (operácie s operandami, operácie bez operandov)
Základné pojmy • Počítač je stroj na spracovanie údajov, ktorý pracuje samočinne podľa programu vopred zadaného a uloženého v pamäti. • Program je postupnosť inštrukcií vyjadrujúcich postup riešenia určitého problému • Procesor je základná jednotka počítača, t.j. logický automat pre spracovanie informácií.
Procesor • Hlavnými stavebnými prvkami procesora je ALJ a RJ • ALJ – aritmeticko logická jednotka slúži na vykonávanie aritmetických a logických operácií ( v angličtine sa označuje ako ALU ) • RJ – riadiaca jednotka pomocou riadiacich signálov riadi činnosť počítača
Procesor • Procesor okrem ALJ a RJ obsahuje ešte: • Registre (ACC, B, ...) • Programové počítadlo (PC) • Register inštrukcií • Hodiny • Dekóder inštrukcií • ...
Architektúra von Neumanna • Spojenie pamäte + ALU + RJ sa nazýva centrálna jednotka. • Styk počítača s okolím sa realizuje prostredníctvom V/V obvodov (jednotiek) • Sled inštrukcií – program, je uložený v pamäti, ktorej často hovoríme operačná pamäť. • Činnosť ČP riadi riadiaca jednotka.
Architektúra von Neumanna • Počítač von Neumanna používa jednu pamäť pre program a pre dáta a jeho jadrom je procesor, ktorý pozostáva z: • Inštrukčného registra • Čítača inštrukcií • Akumulátora • ALJ • RJ
A B ALJ C Architektúra von Neumanna Inštrukčný register Programové počítadlo Akumulátor n-bitová obojsmerná zbernica
Architektúra von Neumanna • V inštrukčnom registry je v uložený kód práve vykonávanej inštrukcie • V čítači inštrukcií je v uložená adresa nasledujúcej inštrukcie. Inkrementuje sa po vykonaní inštrukcie. • Akumulátor – zapamätáva dáta, ktoré budú spracovávané alebo výsledky operácií • ALJ vykonáva operácie s dátami na vstupoch A,B a výsledok je na výstupe C • Architektúra je sústredená okolo obojsmernej zbernice, po ktorej sa prenášajú dáta aj inštrukcie
Architektúra von Neumanna • Hlavnou zásadou von Neumana je, že počítač by sa nemal prispôsobovať potrebám konkrétnej aplikácie svojou vnútornou štruktúrou, ale len programovým vybavením. • Typické znaky architektúry riešenia von Neumana: • pevná inštrukčná sada • pevný operačný kód • pevný dekodér inštrukcií.
Harvardská architektúra • Používa dve oddelené pamäte pre dáta a program Pamäť dát Riadiaca pamäť ALJ Riadiaca jednotka
Harvardská architektúra • Riadiaca pamäť obsahuje informácie o riadení systému. • Informácie z tejto riadiacej pamäte sú dekódované riadiacou jednotkou, ktorá zabezpečuje následnosť výberu riadiacich signálov z riadiacej pamäti. • Podstatným znakom, ktorý odlišuje túto architektúru od von Neumanna je, že zmenou obsahu riadiacej pamäte je možné meniť riadenie systému, tj. meniť inštrukčnú sadu systému a operačný kód.
Rozdiel architektúr • PC register u von NEUMANovskej koncepcie adresuje RAM pamäť a u HARWARDskej adresuje ROM pamäť. • HARWARDská architektúra nemá v inštrukčnom cykle krok prenášajúci kód inštrukcie z RAM pamäte do Registra inštrukcií. ROM pamäť supluje funkciu Registera inštrukcií. Jej výstup je priamo napojený na RJ a tak stačí mať v PC registri adresu inštrukcie, ktorá sa bude vykonávať. • U von NEUMANovskej koncepcie v RAM sa nachádzajú inštrukcie aj dáta (t.j. premenné aj konštanty), u HARWARDskej sa v RAM nachádzajú z len premenné dáta a v ROM sa nachádzajú inštrukcie a z dát len konštanty (zapísujú sa tam spolu s programom).
ROM RAM Styková jednotka Magnet. pamäť adresová zbernica dátová zbernica riadiaca zbernica Vstupná jednotka Výstupná jednotka Hodiny Bloková schéma CPU
CPU • CPU (central processor unit) – centrálna procesorová jednotka slúži na vykonávanie inštrukcií a riadi činnosť počítača • CPU=ALJ + RJ • CPU potrebuje k svojej činnosti tzv. hodiny, ktoré udávajú taktovaciu frekvenciu, teda počet impulzov za sekundu, počas ktorých dokáže CPU vykonať práve jednu operáciu
Pamäte • Mikropočítač Intel 8051 má dva typy pamätí: • ROM – read only memory, nazýva sa tiež riadiaca pamäť a obsahuje inštrukcie, ktoré má vykonať procesor • RAM – random access memory, nazýva sa tiež pamäť dát a obsahuje dáta, ktoré vstupujú do výpočtu, resp. z neho vystupujú
Vstupno-výstupné jednotky • Realizujú styk počítača s okolím • Vstupná jednotka slúži na načítanie informácií z okolia počítača, je akýmisi „očami a ušami“ počítača • Výstupná jednotka poskytuje informácie z počítača do okolia, je akýmisi „ústami“ počítača • V/V jednotky komunikujú so svojim okolím prostredníctvom elektrických signálov
Porty • Ako vstupno-výstupné jednotky slúžia v ČP 8051 takzvané porty • 8051 má 4 porty (P0 až P3) • Na porty je možné zapisovať údaje alebo z nich môžeme údaje čítať • Údaje, ktoré chceme zapísať/čítať zapisujeme/čítame do/z RAM (oblasť SFR), kde má každý port vyhradené svoje miesto o veľkosti 1B
Styková jednotka a magnetická pamäť • Magnetická pamäť je prídavná pamäť, ktorá sa dá pripojiť ako ďalšia RAM v prípade, že základná RAM nepostačuje k riadnemu chodu programu • Styková jednotka slúži na styk počítača s magnetickou pamäťou
Zbernice • Sú to paralelne vedené vodiče, po ktorých sa vysiela binárny kód ku rôznym častiam počítača • Podľa toho, aké signály sa vysielajú po zbernici, rozlišujeme zbernice na: • Dátovú – prenášajú sa po nej dáta • Adresovú – prenášajú sa po nej adresy • Riadaciu – prenášajú sa po nej riadiace signály
Porty P0-P3 • P0 - P3 sú tvorené špeciálnym zapojením registrov, ktoré umožňuje využívať porty oboma smermi. • Aby sme mohli prečítať vstupujúci údaj z pinu daného portu, musíme najprv na port vyslať logickú "1". Pri reštarte počítača sa tento stav nastavuje automaticky.
Pin EA (External Access) • Má význam len pre I8051 a ovplyvňuje používanie CODE memory (ROM) v ktorej sa nachádza programový kód. • V prípade že EA = 0 tak sa program vykonáva iba z vonkajšej CODE pamäti. • Ak sa EA = 1 potom sa kombinuje vnútorná pamäť pre kód od adresy 0-0FFFH a externá pamäť 1000H-FFFFH. • Do prekrytej externej pamäte (internou pamäťou) sa pristupuje cez rozdielne inštrukcie.
ALE, PSEN*, RD*, RW* • ALE - Adress Low Enable • Pretože nižších 8 bitov adresovej zbernice sa musí deliť o port P0 s dátovou zbernicou, rieši sa to v priebehu inštrukčného cyklu tak, že najprv sa na porte objaví adresa a jej prítomnosť signalizuje signál ALE. • Ten sa využíva na zápis adresy do pomocných externých registrov. • Po odovzdaní adresy signál ALE sa vracia na pôvodnú hodnotu "1" a port P0 je uvoľnený pre dátovú zbernicu. • PSEN*,RD*,WR* • Sú riadiace signály, ktoré sú generované pri vykonávaní inštrukcií MOV, MOVX a MOVC. • Spolu s Adresnou a Dátovou zbernicou (Porty P0 a P1) a so signálom ALE sa podieľajú na komunikácii s externou ROM pamäťou (PSEN* - čítanie) a s externou RAM pamäťou (RD*- čítanie, WR*- zápis). • Hviezdička (*) znamená, že signál je aktívny, ak je na príslušnom pine logická 0
Ostatné piny • INT0*, INT1* - obsluha externých prerušení • RXD, TXD – pin pre prijímanie a vysielanie údajov pri sériovej komunikácii dvoch zariadení • T0,T1 umožňujú riadiť vnútorné časovače pre synchronizáciu toku dát • VCC, GND – pin pre napájanie mikropočítača (VCC) a pre uzemnenie mikropočítača (GND)
Inštrukčný cyklus • Je to postupnosť krokov, počas ktorých procesor vyberie inštrukciu, dekóduje inštrukciu, spracuje inštrukciu a uloží výsledky vykonania inštrukcie • Po ukončení IC sa programové počítadlo zvýši o požadovanú hodnotu, najčastejšie o 1
Fázy inštrukčného cyklu • F (Fetch) – fáza výberu inštrukcie • D (Decode) – fáza dekódovania inštrukcie • O (Operate) – fáza výberu operandu • E (Execute) – fáza vykonania inštrukcie • S (Store) – fáza uloženia výsledku