Monday, 5 December 2011

Registers of 80386

There are sixteen registers in 80386 which are used by general purpose programmers. These registers are grouped into these basic categories:
General registers
Segment registers
Status and instruction registers

General Registers
They are used primarily to contain operands for arithmetic and logical operations. There are 8 general purpose, 32-bit registers.
32-bit registers : EAX, EBX, ECX, EDX, EBP, ESP, ESI, EDI

The 32 bit regsiters are broken down into 16 bit or 8 bit.

The lower word of each of 32 bit register can be addressed as a separate unit. This is useful for handling 16-bit data items.
16-bit registers : AX, BX, CX, DX, BP, SP, SI, DI

Each byte of the 16-bit registers AX, BX, CX, and DX has a separate name and can be treated as a unit. This feature is useful for handling characters and other 8-bit data items.
8 bits registers :  AH, BH, CH, DH , AL, BL, CL, DL

All of the general-purpose registers are available for addressing calculations and storing the results of most arithmetic and logical calculations; however, a few functions are dedicated to certain registers.