Sunteți pe pagina 1din 2

Regiştrii familiei 80X86

1. Regiştrii generali:

- de date:
15 87 0
AX AH AL Acumulator (*, /, I/O)

BX BH BL Bază (translatări)

CX CH CL Contor (şiruri,bucle)

DX DH DL Date (*, /, I/O indirecte)

- de pointer:
15 0
SP Pointer de stivă
( pointează vârful stivei )

BP Pointer bază
( adresarea datelor din
segmentul de stivă )

- de index:
15 0
SI Index sursă ( şiruri )

DI Index destinaţie
( şiruri )

2. Regiştrii de segment:

15 0
CS Pointează segmentul de cod
curent.
SS Pointează segmentul de stivă
curent.
DS Pointează segmentul de date
curent .
ES Pointează extrasegmentul
curent.
3. Registrul de instrucţiuni:
15 0
IP Conţine deplasamentul în
octeţi a instrucţiunii
următoare faţă de
începutul segmentului de
cod curent.

4.Registrul indicatorilor de stare şi control („Flags” – steguleţe, fanioane)

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
- - - - - OF DF IF TF ZF - AF - PF - CF

CF – Transport (Carry) 1 – dacă o operaţie generează transport sau împrumut


de la un operand destinaţie
0 – în caz contrar
1 – pentru paritate impară
PF – Paritate (Parity)
0 – pentru paritate pară
1 – dacă o operaţie generează transport
la sau împrumut de la cei mai
puţin semnificativi 4 biţi ai unui
operand
AF – Transport auxiliar (Auxiliary carry)
0 – în caz contrar
1 – rezultat nul
ZF – Rezultatul nul (Zero)
0 – rezultat nenul
1 –rezultat negativ
SF – Rezultat cu semn(Sign)
0 – rezultat pozitiv

1 – întrerupere după executarea fiecărei instrucţiuni


TF – Depanare (Trace/Trap) 0 – fără întrerupere

1 – activare întrerupere
IF – Întrerupere (Interrupt) 0 – dezactivare întrupere

1 – adresele vor fi parcurse crescător ( şirurile vor fi parcuse


de la stânga la dreapta )
DF – Direcţie (Direction) 0 – adresele vor fi parcurse descrescător ( şirurile vor fi
parcurse de la dreapta la stânga )

1 – depăşire aritmetică (dimensiunea rezultatului depăşeşte


capacitatea locaţiei de destinaţie şi a fost pierdut ( cel
puţin ) un bit )
OF – Depăşire (Overflow)
0 – fără depăşire

S-ar putea să vă placă și