汇编的一个小问题
我的汇编代码是这样的assume cs:abc
abc segment
start: mov ax,0ffffh
mov ds,ax
mov ax,0020h
mov es,ax
mov cx,6
mov ax,0
lo:mov dx,ds:
mov es:,dx
inc ax
inc ax
loop lo
mov ax,4c00h
int 21h
abc ends
end start
然后编译的时候出错了,提示如下
1.asm(11) : error A2031: must be index or base register
1.asm(12) : error A2031: must be index or base register
好像是不能用ax作为递增的寄存器,为什么呢?
求各位大大解释一下,为什么上面用了ax,下面就不能用ax了,我把递增换成dx就不报错了!!!为什么呢? jackonly 发表于 2017-5-9 21:53
求各位大大解释一下,为什么上面用了ax,下面就不能用ax了,我把递增换成dx就不报错了!!!为什么呢?
说错了,是换成bx jackonly 发表于 2017-5-9 21:54
说错了,是换成bx
正常,ax寄存器不能参与寻址 人造人 发表于 2017-5-9 21:59
正常,ax寄存器不能参与寻址
哦哦,谢谢啦
页:
[1]