x86

Z Wikipedie, otevřené encyklopedie

Skočit na: Navigace, Hledání

x86 je označení architektury procesorů. Jedna se o architekturu 16bitovou, registrovou, s CISCovou instrukční sadou. Vyznačuje se až extrémní asymetrií architektury: z jeho osmi aritmetických registrů nejsou žádné dva zcela zaměnitelné. Jako x86 jsou často označovány i procesory na ní navazující kompatibilní architektury IA-32.

Obsah

[editovat] IBM PC

Tato architektura byla použita v osobních počítačích IBM PC, které slavily obrovský úspěch. Díky tomu a nepřenositelnosti napsaného software je i dnes nutné udržovat zpětnou kompatibilitu až k prvnímu procesoru této architektury - a tím je vlastně tato architektura definovaná, protože neexistuje žádný návrh nebo popis architektury předcházející první procesor Intel 8086.

Politika IBM v době, kdy uvažovalo o použití této architektury (konkrétně procesoru 8088) v IBM PC, vyžadovala alespoň dva zdroje čipů, proto v roce 1982 AMD podepsalo kontrakt s Intelem a stalo se licencovaným druhým výrobcem procesorů 8086 a 8088. Později pod stejným kontraktem vyrábělo 80286. Intel ovšem smlouvu v roce 1986 vypověděl a odmítl předat AMD technické detaily 80386.

[editovat] Registry x86

  • aritmetické
    • AX - akumulátor (řada instrukcí ho má jako implicitní operand)
    • BX - bázový registr (tj. určený pro adresaci)
    • CX - čítač (tj. určený pro počítání cyklů)
    • DX - rozšíření akumulátoru (někdy nazýván data register)
    • SI - source index - index pro zdroj (tj. pro čtení)
    • DI - destination index - index pro cíl (tj. pro zápis)
    • BP - base pointer - určen jako ukazatel na záznam aktivní procedury na zásobníku (tím, že se implicitně spojoval s SS)
    • SP - stack pointer - ukazatel vrcholu zásobníku
  • segmentové
    • CS - segment kódu
    • DS - datový segment
    • ES - extra segment
    • SS - zásobníkový (stack) segment
  • registr IP (instrukční pointer neboli čítač instrukcí), vždy odkazovaný implicitně
  • registr FLAGS (příznaky)

Všechny registry mají šířku 16 bitů. Kromě toho šlo přistupovat k registrům AX-DX po částech, tj. jen k dolním (AL-DL) a horním (AH-DH) osmi bitům. Architektura x86 má i skupinu instrukcí pro práci s řetězci, kde jednotlivé instrukce zahrnují čtení nebo zápis z/do dohodnutých dvojic registrů (segmentu a indexu) – čtení většinou z DS:SI a zápis do ES:DI.

Podrobněji viz Intel 8086, pro popis registrů u článků Intel 80386 či IA-32, kde můžete vidět jak byly rozšířeny.

[editovat] Výrobci

[editovat] Předchozí architektura

Jedná se pouze o návaznost, nikoliv kompatibilitu.

[editovat] Procesory této architektury

[editovat] Navazující architektury

[editovat] Externí odkazy