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.