Registry procesoru 8086
Procesor 8086 poskytuje celkem 14 šestnáctibitových registrů.
Všeobecné registry
16 bitové registry AX, BX, CX, DX jsou vždy rozděleny na 2 osmibitové. Například horních 8 bitů regsiru AX se nazvá AH (high) a dolních 8 bitů AL (low).
AX - všeobecný střádač
BX - bázový registr, jeho obsah lze použít jako offsetová část adresy
CX - je používán jako čítač při použití cyklů
DX - používá se u V/V instrukcí a při celočíselném násobení a dělení
SI - registr pro uložení offsetové části adresy zdrojového operandu
DI - registr pro uložení offsetové časti adresy cílového operandu
Segmentové registry
- slouží k uložení segmentové části adresy
Řídící registry
- sem patří velice důležitý registr IP - Instruction Pointer a registr příznaků (flags)
Význam jednotlivých příznaků:
CF (Carry Flag) - nastaví se na logickou hodnotu 1, jestliže při právě prováděné operaci, jež ovlivňuje tento příznak, došlo k přenosu z nejvyššího bitu a to jak u 8 bitového tak i u 16 bitového operandu. Lze měnit i ručně pomocí instrukcí STC, CLC a CMC.
PF (Parity Flag) - je nastaven na jedničku, pokud výsledek právě prováděné operace obsahuje sudý počet 1 v dolní osmici bitů (sudá parita výsledku). Při lichém počtu jedniček se tento příznak nuluje. Vypočítává se pouze z dolní osmice bitů.
AF (Auxiliary Carry Flag) - je nastaven na 1, pokud došlo k přenosu z 3 do 4 bitu bez ohledu na šířku operandu, má význam pro BCD aritmetiku.
ZF (Zero Flag) - nastaven na 1, pokud výsledek právě dokončené operace je nulový
SF (Sign Flag) - se nastaví na nulu, pokud výsledek právě prováděné operace je kladný. V případě záporného výsledku je nastaven na 1. V podstatě je to je kopie znaménkového bitu výsledku operace.
OF (Overflow Flag) - se nastaví na jedničku, pokud došlo k aritmetickému přeplnění (přenosu do znaménkového bitu)
TF (Trap Flag) - pokud je nastaven na 1, procesor je uveden do tzv. "krokovacího režimu", ve kterém je po první provedené instrukci generováno přerušní (INT 1)
IF (Interrupt Enable Flag) - je-li nastaven na 0, zakáže procesoru provádět vnější maskovatelná přerušní generovaná signálem INTR
DF (Direction Flag) - řídí směr zpracovávání řetězcových operací. Je-li nastaven na 1, obsah registrů SI a DI je dekrementován (snižován). Lze měnit instrukcemi STD a CLD.