Intel 8080: Porovnání verzí

Z Wikipedie, otevřené encyklopedie
Smazaný obsah Přidaný obsah
Vaclav.Makes (diskuse | příspěvky)
interwiki odkazy
m nahrazení spojovníků pomlčkami
Řádek 2: Řádek 2:
'''Intel 8080''' je [[procesor]] firmy [[Intel]], vyvinutý v roce [[1974]]. Po několika měsících výroby byl nahrazen zdokonalenou verzí 8080A s posílenými výstupy. Obvykle se procesorem 8080 myslí tato vylepšená verze. Procesor byl často [[slang|slangově]] nazýván "BOBO".
'''Intel 8080''' je [[procesor]] firmy [[Intel]], vyvinutý v roce [[1974]]. Po několika měsících výroby byl nahrazen zdokonalenou verzí 8080A s posílenými výstupy. Obvykle se procesorem 8080 myslí tato vylepšená verze. Procesor byl často [[slang|slangově]] nazýván "BOBO".


Jedná se o 8[[bit|bitový]] procesor technologie [[NMOS]], s adresovatelným [[elektronická paměť|paměťovým prostorem]] 64 KB, 256 adresovatelnými [[IO port|V/V bránami]]. Taktovací frekvence procesoru je cca 1-2 MHz, čas potřebný k vykonání instrukce je minimálně 4 hodinové takty. Byl to jeden z nejrozšířenějších procesorů své doby, který měl široké využití od průmyslových aplikací po první domácí počítače.<br />
Jedná se o 8[[bit|bitový]] procesor technologie [[NMOS]], s adresovatelným [[elektronická paměť|paměťovým prostorem]] 64 KB, 256 adresovatelnými [[IO port|V/V bránami]]. Taktovací frekvence procesoru je cca 1–2 MHz, čas potřebný k vykonání instrukce je minimálně 4 hodinové takty. Byl to jeden z nejrozšířenějších procesorů své doby, který měl široké využití od průmyslových aplikací po první domácí počítače.<br />
Jeho přímý 8-bitový nástupce je procesor [[Intel 8085]], 16bitový nástupce je [[Intel 8086]]. Na procesor navazoval i procesor [[Z80]] firmy [[Zilog]].
Jeho přímý 8-bitový nástupce je procesor [[Intel 8085]], 16bitový nástupce je [[Intel 8086]]. Na procesor navazoval i procesor [[Z80]] firmy [[Zilog]].


Procesor byl často kopírován jinými výrobci. Vyráběl se například i v bývalém [[Československo|Československu]] pod označením - [[Tesla (podnik)|Tesla]] MHB8080A.
Procesor byl často kopírován jinými výrobci. Vyráběl se například i v bývalém [[Československo|Československu]] pod označením [[Tesla (podnik)|Tesla]] MHB8080A.


== Specifikace ==
== Specifikace ==
Řádek 23: Řádek 23:
Procesor umožňuje použití až 8 rutin [[obsluha přerušení|obsluhy přerušení]] od V/V zařízení.
Procesor umožňuje použití až 8 rutin [[obsluha přerušení|obsluhy přerušení]] od V/V zařízení.


Procesor není úplně monolitický, k jeho činnosti jsou nutné dva pomocné obvody - generátor hodin Intel 8224 a řadič sběrnice Intel 8228. Pro vytvoření mikropočítače je potřeba celá sada nejméně 6 obvodů.
Procesor není úplně monolitický, k jeho činnosti jsou nutné dva pomocné obvody generátor hodin Intel 8224 a řadič sběrnice Intel 8228. Pro vytvoření mikropočítače je potřeba celá sada nejméně 6 obvodů.


=== Všeobecné registry ===
=== Všeobecné registry ===
Řádek 47: Řádek 47:


==== Ukazatel zásobníku ====
==== Ukazatel zásobníku ====
''Zásobník'' (''stack'') slouží k ukládání adres pro návrat z podprogramů a přerušení. Lze jej používat i pro ukládání mezivýsledků. Na rozdíl od předchozích typů procesorů Intel může být zásobník umístěn kdekoli v paměti RAM. Vrchol zásobníku je adresován registrem SP. Zásobník roste k nižším adresám. Do zásobníku se ukládá vždy dvojice bytů. Registr SP (''stack pointer'') obsahuje adresu poslední uložené položky. Při ukládání na zásobník (instrukce PUSH), se před uložením každého z dvojice bytů SP dekrementuje - zmenšuje o 1. Naopak při čtení ze zásobníku (instrukce POP) je po přečtení každého ze dvojice bytů ukazatel inkrementován - zvýšen o 1.
''Zásobník'' (''stack'') slouží k ukládání adres pro návrat z podprogramů a přerušení. Lze jej používat i pro ukládání mezivýsledků. Na rozdíl od předchozích typů procesorů Intel může být zásobník umístěn kdekoli v paměti RAM. Vrchol zásobníku je adresován registrem SP. Zásobník roste k nižším adresám. Do zásobníku se ukládá vždy dvojice bytů. Registr SP (''stack pointer'') obsahuje adresu poslední uložené položky. Při ukládání na zásobník (instrukce PUSH), se před uložením každého z dvojice bytů SP dekrementuje zmenšuje o 1. Naopak při čtení ze zásobníku (instrukce POP) je po přečtení každého ze dvojice bytů ukazatel inkrementován zvýšen o 1.


==== Programový čítač ====
==== Programový čítač ====
Řádek 53: Řádek 53:


=== Pomocné registry ===
=== Pomocné registry ===
W, Z - jsou nepřístupné programátorovi, využívají se pro vnitřní potřebu [[Procesor|CPU]] při vykonávání instrukcí.
W, Z jsou nepřístupné programátorovi, využívají se pro vnitřní potřebu [[Procesor|CPU]] při vykonávání instrukcí.


{{Procesory_od_Intelu}}
{{Procesory_od_Intelu}}

Verze z 30. 8. 2014, 22:39

Procesor Intel C8080A

Intel 8080 je procesor firmy Intel, vyvinutý v roce 1974. Po několika měsících výroby byl nahrazen zdokonalenou verzí 8080A s posílenými výstupy. Obvykle se procesorem 8080 myslí tato vylepšená verze. Procesor byl často slangově nazýván "BOBO".

Jedná se o 8bitový procesor technologie NMOS, s adresovatelným paměťovým prostorem 64 KB, 256 adresovatelnými V/V bránami. Taktovací frekvence procesoru je cca 1–2 MHz, čas potřebný k vykonání instrukce je minimálně 4 hodinové takty. Byl to jeden z nejrozšířenějších procesorů své doby, který měl široké využití od průmyslových aplikací po první domácí počítače.
Jeho přímý 8-bitový nástupce je procesor Intel 8085, 16bitový nástupce je Intel 8086. Na procesor navazoval i procesor Z80 firmy Zilog.

Procesor byl často kopírován jinými výrobci. Vyráběl se například i v bývalém Československu pod označením – Tesla MHB8080A.

Specifikace

  • výrobní proces 4,5 μm (pro srovnání: intel Core i7 – 32 nm)
  • 4500 tranzistorů
  • 0,64 MIPS
  • Vylepšená načítací logika NMOS.
  • Programovací jazyk Assembler zpětně kompatibilní s intel 8008.
  • Teoreticky až 10× výkonnější než intel 8008.
  • Používán v Altair 8800, ovládání světelných křižovatek, střely s plochou dráhou letu.
  • Potřebuje 6 podpůrných čipů proti 20 u 8008.

Vnitřní struktura 8080

Intel 8080 má jeden 8bitový akumulátorový registr (střadač pro aritmetické a logické/bitové operace) a 6 univerzálních 8bitových registrů. Registry jsou paměťová místa umístěná v mikroprocesoru.

Procesor umožňuje použití až 8 rutin obsluhy přerušení od V/V zařízení.

Procesor není úplně monolitický, k jeho činnosti jsou nutné dva pomocné obvody – generátor hodin Intel 8224 a řadič sběrnice Intel 8228. Pro vytvoření mikropočítače je potřeba celá sada nejméně 6 obvodů.

Všeobecné registry

Většina aritmetických a logických instrukcí mikroprocesoru 8080 je jednoadresních - u binárních operací je vždy jeden operand ve střadači (akumulátoru), adresuje se pouze druhý operand. Výsledek se ukládá vždy do střadače.

Označení  Použití
A         střadač (Accumulator)
F         příznakové registry (Flags)
B    C    čítač a všeobecný registr
D    E    všeobecný registr
H    L    pár <HL> 16bitový ukazatel, všeobecný registr

Převážná většina instrukcí pracuje s 8bitovými daty. Několik málo instrukcí pracuje šestnáctibitovými daty uloženými ve dvojicích registrů BC, DE a HL.

Indexové a ukazatelové registry

SP        (Stack Pointer) ukazatel zásobníku
PC        (Program Counter) ukazatel prováděné instrukce

Ukazatel zásobníku

Zásobník (stack) slouží k ukládání adres pro návrat z podprogramů a přerušení. Lze jej používat i pro ukládání mezivýsledků. Na rozdíl od předchozích typů procesorů Intel může být zásobník umístěn kdekoli v paměti RAM. Vrchol zásobníku je adresován registrem SP. Zásobník roste k nižším adresám. Do zásobníku se ukládá vždy dvojice bytů. Registr SP (stack pointer) obsahuje adresu poslední uložené položky. Při ukládání na zásobník (instrukce PUSH), se před uložením každého z dvojice bytů SP dekrementuje – zmenšuje o 1. Naopak při čtení ze zásobníku (instrukce POP) je po přečtení každého ze dvojice bytů ukazatel inkrementován – zvýšen o 1.

Programový čítač

Registr PC obsahuje adresu další programové instrukce, která se má provést. Po přečtení každého bytu instrukce je automaticky inkrementován (zvýšen o 1).

Pomocné registry

W, Z – jsou nepřístupné programátorovi, využívají se pro vnitřní potřebu CPU při vykonávání instrukcí.