03.01.2015 Views

80C186EC/80C188EC Microprocessor User's Manual

80C186EC/80C188EC Microprocessor User's Manual

80C186EC/80C188EC Microprocessor User's Manual

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

OVERVIEW OF THE 80C186 FAMILY ARCHITECTURE<br />

The BX or BP register can be specified as the base register for an effective address calculation.<br />

Similarly, either the SI or the DI register can be specified as the index register. The displacement<br />

value is a constant. The contents of the base and index registers can change during execution. This<br />

allows one instruction to access different memory locations depending upon the current values in<br />

the base or base and index registers. The default base register for effective address calculations<br />

with the BP register is SS, although DS or ES can be specified.<br />

Direct addressing is the simplest memory addressing mode (see Figure 2-13). No registers are involved,<br />

and the effective address is taken directly from the displacement of the instruction. Programmers<br />

typically use direct addressing to access scalar variables.<br />

With register indirect addressing, the effective address of a memory operand can be taken directly<br />

from one of the base or index registers (see Figure 2-14). One instruction can operate on various<br />

memory locations if the base or index register is updated accordingly. Any 16-bit general register<br />

can be used for register indirect addressing with the JMP or CALL instructions.<br />

In based addressing, the effective address is the sum of a displacement value and the contents of<br />

the BX or BP register (see Figure 2-15). Specifying the BP register as a base register directs the<br />

Bus Interface Unit to obtain the operand from the current stack segment (unless a segment override<br />

prefix is present). This makes based addressing with the BP register a convenient way to access<br />

stack data.<br />

Opcode<br />

Mod R/M<br />

Displacement<br />

EA<br />

A1016-0A<br />

Figure 2-13. Direct Addressing<br />

2-30

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!