EasyManua.ls Logo

Intel 386

Intel 386
691 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Intel386™ EX EMBEDDED MICROPROCESSOR USERS MANUAL
E-26
E.2.2.4 Encoding of Address Mode
Except for special instructions, such as PUSH or POP, where the addressing mode is pre-deter-
mined, the addressing mode for the current instruction is specified by addressing bytes following
the primary opcode. The primary addressing byte is the “mod r/m” byte, and a second byte of ad-
dressing information, the “s-i-b” (scale-index-base) byte can be specified.
The s-i-b byte is specified when using 32-bit addressing mode and the “mod r/m” byte has r/m =
100 and mod = 00, 01, or 10. When the s-i-b byte is present, the 32-bit addressing mode is a func-
tion of the mod, ss, index, and base fields.
The primary addressing byte, the “mod r/m” byte, also contains three bits (shown as TTT in Fig-
ure E-1) sometimes used as an extension of the primary opcode. The three bits, however, may
also be used as a register field (reg).
When calculating an effective address, either 16-bit addressing or 32-bit addressing is used. 16-
bit addressing uses 16-bit address components to calculate the effective address while 32-bit ad-
dressing uses 32-bit address components to calculate the effective address. When 16-bit address-
ing is used, the “mod r/m” byte is interpreted as a 32-bit addressing mode specifier.
The following tables define all encodings of all 16-bit addressing modes and 32-bit addressing
modes.

Table of Contents

Related product manuals