![](https://csdnimg.cn/release/download_crawler_static/88525778/bg7.jpg)
7
1.答:
指令中关于如何求出操作数有效地址的方法称为寻址方式。
8086CPU 支持多种寻址方式,根据操作数的类型及来源大致分为 3 类:数据寻址、转
移地址寻址和 I/O 寻址。
2.答:
8086 汇编指令可以采用 7 种基本的数据寻址方式:①立即寻址;②寄存器寻址;③直
接寻址;④寄存器间接寻址;⑤寄存器相对寻址;⑥基址变址寻址;⑦相对基址变址寻址。
与存储器寻址方式(后 5 种)相比,寄存器寻址方式最快。
3.答:
如果指令中没有用前缀说明操作数存放在哪个段,则操作数默认存放在数据段。
8086 系统允许操作数存放在代码段、堆栈段或附加段。此时,就需要在指令中利用前
缀指明段超越。例如:
MOV ES:[1225H],AX
4.答:
(1)寄存器寻址方式
(2)寄存器间接寻址方式,PA=10300H
(3)寄存器间接寻址方式,PA=20200H
(4)直接寻址方式,PA=10060H
(5)基址变址寻址方式,PA=10500H
(6)相对基址变址寻址方式,PA=12300H
(7)直接寻址方式,PA=11000H
(8)寄存器相对寻址方式,PA=10306H
(9)直接寻址方式,PA=10065H
5.答:
(1
)
(2
)
(3
)
(4
)
(5
)
(6
)
(7
)
(8
)
(9
)
(10
)
(11
)
× × × √ × √ × × √ × ×
6.答:
(1)源操作数的寻址方式不同。MOV AX,3000H 指令的源操作数采用的是立即数寻
址方式,MOV AX,[3000H]指令的源操作数采用的是直接寻址方式。
(2)指令执行后,AX 的值不同。MOV AX,MEM 指令执行后,AX 得到的是 MEM
单元的内容,而 MOV AX,OFFSET MEM 指令执行后,AX 得到的是 MEM 单元的地址。
(3)指令不同。MOV AX,MEMMOV AX,MEM 指令执行后,AX 得到的是 MEM 单
元的内容,而 LEA AX,MEM 指令执行后,AX 得到的是 MEM 单元的地址。
(4)转移的类型不同。JMP SHORT L1 指令实现的是段内转移,而 JMP NEAR PTR
L1 指令实现的是段间转移。
(5)指令的执行结果不同。CMP DX,CX 指令执行后,DX 的值不变,而 SUB DX,CX
指令执行后,DX 的值是两寄存器值的差。
(6)操作数所在段不同。MOV [BP][SI],CL 指令访问的是堆栈段的存储单元,而 MOV
DS:[BP][SI],CL 指令访问的是数据段的存储单元。