回 帖 发 新 帖 刷新版面

主题:以下8086CPU指令是错误的是!

(1)MOV BX,[DX]
(2) MOV DS,AX
错误的那个为什么错啊?

回复列表 (共4个回复)

沙发

(1)MOV BX,[DX]
dx不能用来寻址

板凳

呵呵,其实我也是知道第二个是对的,那个是很常用的
MOV AX,DSEG
MOV DS,AX
不过我不知道怎么DX不能用来寻址,我怎么没有看过。

3 楼

可以看看书上 写的 寻址方式

其中[bx]是寄存器间接寻址,
但只能用SI、DI、BX和BP等四个寄存器之一来指定
所以dx不行。

用汇编语言来编程,不同的寄存器有不同的用途,
像 SP 就是用来保存堆栈的栈顶指针
 

4 楼

80386可以用所有通用32位积存器定值:
[A+B*c+d]
A:所有通用寄存器(基址)
B:除ESP以外的通用寄存器(变址)
c:1/2/4/8粒度
d:8/32位立即数

我来回复

您尚未登录,请登录后再回复。点此登录或注册