INTRODUCTION
interrupt return addresses), the BP register is available to the programmer for whatever use he desires. The BP register can contain an old stack pointer value, or it can mark a place in the subroutine stack independent of the SP register. Using the separate BP register to mark the stack saves the juggling of a single stack pointer to reference subroutine parame- ters and addresses.
The two index registers are the SI (source index) register and the DI (destination index) register (Fig.
Control Registers
Figure 1-9 shows two l6-bit control registers. First is the IP or instruction pointer which points to the next instruction the bus inter- face unit will fetch. (The instruction pointer is similar to a Program Counter used in other microprocessors, except that the IP points to the next instruction being fetched, whereas the traditional program counter points to the next instruction to be executed). The second l6-bit control register (Fig. 1-9) contains flags or condition codes that reflect the results of
arithmetic or logical operations as they are performed by the execution unit.
Segment Registers
The fourth group of registers, called the seg- ment registers, are used by the 8088 in the formulation of memory addresses. Segment register usage is described in the following section on memory addressing.
THE iAPX 88 MEGABYTE MEMORY ADDRESSING MEANS QUICK ACCESS TO COMPLEX DATA STRUCTURES
As mentioned, the 8088 generates a
Every
INSTRUCTION | I | IP |
POINTER |
|
I
FLAGS I