OKOne 发表于 2014-7-1 13:19:30

看看我的有什么错误怎么无法编译

本帖最后由 OKOne 于 2014-7-1 13:21 编辑

assume cs:code

a segment
db 1,2,3,4,5,6,7,8
a ends

b segment
db 1,2,3,4,5,6,7,8
b ends

c segment
db 0,0,0,0,0,0,0,0
c ends

code segment

start: mov ax,cs
mov ss,ax
mov ds,ax
mov dx,11h
mov sp,18h
mov cx,8

p: push
sub dx,1
loop p

mov dx,10h
mov cx,8
t: pop ax
add ,ax
inc dx
loop t

mov ax,4c00h
int 21h
code ends

end start
这个无法编译编译器提示如图
这是什么原因



七月你好 发表于 2014-7-1 13:48:01

错误的是11 12 13 24 31 这5处


c segment       ‘汇编编辑器里貌似不能写c你换个其他的字母 d
db 0,0,0,0,0,0,0,0
c ends                ‘同样换成d

24 和第31排的错误是不能使用dx间址寻址,只有BX、SI、DI才可以,你换成bx

我理解是这样的 不知道正不正确,你可以试下

OKOne 发表于 2014-7-1 13:59:01

七月你好 发表于 2014-7-1 13:48 static/image/common/back.gif
错误的是11 12 13 24 31 这5处




谢了我把BX写成DX 太马虎了

2799061936 发表于 2014-7-3 16:23:47

Must be index or Base Register, 也就是说只有数字或者是BX可用了
页: [1]
查看完整版本: 看看我的有什么错误怎么无法编译