8086处理器有几种寻址方式

 我来答
匿名用户
2013-12-14
展开全部
以 MOV 指令为例

1. 立即寻址方式* —— 操作数在指令中给出
MOV AL, 5
MOV AX, 3064H
* 只能用于SRC字段 ? MOV 5, AL
* SRC 和 DST的字长一致 ? MOV AH, 3064H

2. 寄存器寻址方式* —— 操作数在指定的寄存器中
MOV AX, BX
MOV AL, BH

* 字节寄存器只有 AH AL BH BL CH CL DH DL
* SRC 和 DST的字长一致 MOV AH, BX
* CS不能用MOV指令改变 MOV CS, AX

3. 直接寻址方式* —— 有效地址EA由指令直接给出
有效地址EA:操作数的偏移地址
物理地址PA = 16d ? (DS) + EA
例:MOV AX, [2000H]
EA=2000H, 假设(DS)=3000H, 那么(PA)=32000H

例:操作数地址可由变量(符号地址)表示
MOV AH, VALUE ( VALUE DB 10 )

* 隐含的段为数据段 DS

* 可使用段跨越前缀 MOV AX, ES :[2000H]

* 使用变量时,要注意变量的属性

VALUE DB 10

MOV AX, VALUE ;错误

MOV AL, VALUE

MOV AX, WORD PTR VALUE

* 适于处理单个变量

4. 寄存器间接寻址方式

* ——EA在基址寄存器(BX/BP) 或变址寄存器(SI/DI)中

BX, SI, DI ->(DS)

物理地址 = 16d * (DS) + (BX)

物理地址 = 16d * (DS) + (SI)

物理地址 = 16d * (DS) + (DI)

BP ->(SS)

物理地址 = 16d * (SS) + (BP)

MOV AX, [BX]

PA = 16d *(DS) + (BX)

MOV ES:[BX] , AX

PA = 16d *(ES) + (BX)

MOV DX, [BP]

PA = 16d *(SS) + (BP)

寄存器间接寻址方式*

* 不允许使用AX、CX、DX存放EA

MOV AX, [CX];错误

* SRC 和 DST的字长一致

MOV DL, [SI] ; [BX]指示一个字节单元

MOV DX, [DI] ; [BX]指示一个字单元

* 适于对数组、字符串、表格中的数据连续处理

5. 寄存器相对寻址方式*

有效地址 = (BX) + 8位或者16或位移量

有效地址 = (BP) + 8位或者16或位移量

有效地址 = (SI) + 8位或者16或位移量

有效地址 = (DI) + 8位或者16或位移量

例: MOV AX, COUNT[SI] 或 MOV AX, [COUNT+SI]

假设(DS)=3000H, (SI)=2000H, COUNT=3000H 那么 PA = 35000H

假设(35000H)=1234H, 那么 (AX)=1234H

* 适于数组、字符串、表格的处理

6. 基址变址寻址方式*

有效地址 = (BX) + (SI)

有效地址 = (BX) + (DI)

有效地址 = (BP) + (SI)

有效地址 = (BP) + (DI)

MOV AX, [BX][DI]

PA=(DS)×16d+(BX)+(DI)

或 MOV AX, [BP+DI]

PA=(SS)×16d+(BX)+(DI)

MOV AX, ES:[BX][SI]

PA=(ES)×16d+(BX)+(SI)

* 适于数组、字符串、表格的处理

* 必须是一个基址寄存器和一个变址寄存器的组合

MOV AX, [BX][BP] ;错误

MOV AX, [SI][DI] ;错误

7. 相对基址变址寻址方式*

有效地址 = (BX) + (SI) + 8位或者16或位移量

有效地址 = (BX) + (DI) + 8位或者16或位移量

有效地址 = (BP) + (SI) + 8位或者16或位移量

有效地址 = (BP) + (DI) + 8位或者16或位移量

MOV AX, MASK[BX][SI]

或 MOV AX, MASK[BX+SI]

或 MOV AX, [MASK+BX+SI]

* 适于堆栈处理和数组处理
匿名用户
2013-12-14
展开全部
有8种
立即数寻址方式
寄存器寻址方式
直接寻址方式
寄存器间接寻址方式
寄存器相对寻址方式
基址变址寻址方式
相对基址变址寻址方式
隐含寻址
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-12-14
展开全部
记得貌似学的时候有9种
基本的有6种
立即寻址
直接寻址
寄存器寻址
寄存器间接寻址
变址寻址
基+变址寻址
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-12-14
展开全部
立即寻址,寄存器寻址,直接寻址,寄存器间接寻址,寄存器相对寻址,基址变址寻址,相对基址变址寻址共七种
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式