As Figure 2-5 shows, the low-order word of each of these eight
registers has a separate name and can be treated as a unit. This
feature is useful for handling 16-bit data items and for
compatibility with the 8086 and 80286 processors. The word
registers are named AX, BX, CX, DX, BP, SP, SI, and DI. Figure
2-5 also illustrates that 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. The byte registers are named AH, BH, CH, and DH
(high bytes); and AL, BL, CL, and DL (low bytes). All of the
general-purpose registers are available for addressing
calculations and for the results of most arithmetic and logical
calculations; however, a few functions are dedicated to certain
registers. By implicitly choosing registers for these functions,
the 80386 architecture can encode instructions more compactly.
The instructions that use specific registers include: double-
precision multiply and divide, I