General Purpose Registers | Segment Registers | ||||
---|---|---|---|---|---|
AH/AL | AX | (EAX) | Accumulator | CS | Code Segment |
BH/BL | BX | (EBX) | Base | DS | Data Segment |
CH/CL | CX | (ECX) | Counter | SS | Stack Segment |
DH/DL | DX | (EDX) | Data | ES | Extra Segment |
(FS) | 386 and newer | ||||
(Exx) indicates 386+ 32 bit register | (GS) | 386 and newer |
Pointer Registers | Stack Registers | ||
---|---|---|---|
SI (ESI) | Source Index | SP (ESP) | Stack Pointer |
DI (EDI) | Destination Index | BP (EBP) | Base Pointer |
IP | Instruction Pointer |
FLAGS | Status Flags (see FLAGS) |
CR0 | Control Register 0 | DR0 | Debug Register 0 |
CR2 | Control Register 2 | DR1 | Debug Register 1 |
CR3 | Control Register 3 | DR2 | Debug Register 2 |
DR3 | Debug Register 3 | ||
TR4 | Test Register 4 | DR6 | Debug Register 6 |
TR5 | Test Register 5 | DR7 | Debug Register 7 |
TR6 | Test Register 6 | ||
TR7 | Test Register 7 |
Register | Default Segment | Valid Overrides |
---|---|---|
BP | SS | DS, ES, CS |
SI or DI | DS | ES, SS, CS |
DI strings | ES | None |
SI strings | DS | ES, SS, CS |