ARCHITECTURE AND INSTRUCTIONS
Programs can be dynamically relocated by changing the segment registers, provided the program itself does not load or manipulate the segment registers;
Flag Register File
Six flags provide processor status informa- tion (Fig.
The 8088 also contains three flags that con- trol processor operations. These are the DIRECTION flag, which controls the direc- tion of the string manipulations; the INTER~ RUPT FLAG, which enables or disables external interrupts; and the TRAP flag, which puts the processor into a
A more detailed discussion of the flags ,follows:
1)If AF (the auxiliary carry flag) is set, there has been a carry out of the low nibble (the low order
REGISTER | OPERATIONS . |
AX | Word Multiply, Word Divide, |
| Word 1/0 |
AL | Byte Multiply, Byte Divide, Byte |
| 1/0, Translate, Decimal |
| Arithmetic |
AH | Byte Multiply, Byte Divide |
BX | Translate |
CX | String Operations, Loops |
CL | Variable Shift and Rotate |
OX | Word Multiply, Word Divide, |
| Indirect I/O |
SP | Stack Operations |
SI | String Operations |
01 | String Operations |
Figure 2-3. Implicit Use of General Registers
low nibble of an
2)If CF (the carry flag) is set, there has been a carry out of, or a borrow into, the high- order bit of the result (8- or
3)If OF (the overflow flag) is set, an arith- metic overflow has occurred; that is, a signifi- cant digit has been lost because the size of the computation exceeded the capacity of its des- tination location. An optional Interrupt On Overflow instruction generates an interrupt in this situation.
4)If SF (the sign flag) is set, the
in standard two's complement notation, SF indicates the sign of the result (0 =positive, 1 =negative).
5)If PF (the parity flag) is set, the result has even parity, an even number of
6)If ZF (the zero flag) is set, the result of the operation is o.
Three additional control flags (Fig.
1)Setting DF (the direction flag) causes string instructions to
2)Setting IF (the