ARCHITECTURE AND INSTRUCTIONS

FIRST OPERAND CHOICE DEPENDS ON ADDRESSING MODE:'

 

FIRST OPERAND IN MEMORY

INDIRECT ADDRj:SSING

DIRECT ADDRESSING

00';DISP = 0

MOD = 00

MOD=01

; OISP = DISP-LO SIGN

AND

 

EXTENDED

R/M = 110

10 ; DISP = DISP-HI; DISP-LO

OPERAND EFFECTIVE

 

 

 

OPERAND

"ADDRESS =

RIM:

EFFECTIVE ADDRESS

DISP-HI, DISP-LO

000(BX) + (SI) + DISP

001(BX) + (DI) + DISP

010(BP) + (SI) + DISP

011(BP) + (DI) + DISP

100(SI) + DISP

101 (DI) + DISP

i110 (BP) + DISP

-, 111 (BX) + DISP

,

Where ( ) means "contents of" 'Exception-directaddressing mode

Figure 2-5. Determining First Operand

FIRST OPERAND

IN REGISTER

 

MOD = 11

 

 

REGISTER

RIM:

'8-BIT

16-BIT

 

(W = 0)

(W = 1)'

000

AL

AX

001

CL

CX

010

DL

DX

011

BL

BX

100

AH

SP

101

CH

BP

110

DH

SI

111

BH '

DI

,DATA

STRUCTURE

SIMPLE VARIABLE

ARRAYS

ARRAYS

OF RECORDS

DATA MEMORY

STACK

,WITHOUT BASE

WITH BASE

 

DIRECT

BX +: OFFSET

BP + OFFSET

SI

BX + SI

BP -+-SI

DI

BX + DI

BP + DI,

SI + OFFSET

BX + SI + OFFSET

BP + SI+ OFFSET

DI + OFFSET

BX + DI +: 9FFSET

BP + DI + OFFSET

Figure 2~6. Effective Addresses Used with Different Data Structures'

TYPE OF MEMORY REFERENCE

DEFAULT

ALTERNATE

LOGICAL ADDRESS

SEGMENT

SEGMENT

 

BASE

BASE

 

Instruction Fetch

CS

NONE.

IP

Stack Operation

SS

NONE

SP

String, Source

DS

CS,ES,SS

SI

String Destination

ES

NONE

DI

BP Used As Base Register

SS

CS,DS,ES

Effective Address

General Data Read/Write

DS

CS,ES,SS

Effective Address

Figure 2-7. 8088 Address Components

 

2-7

Page 42
Image 42
Intel 210200-002 manual Direct Addressing