实验13(3)编译连接出错,怎么回事
assume cs:codecode segment
s1: db 'Good,better,best,','$'
s2: db 'Never let it rest,','$'
s3: db 'Till good is better,','$'
s4: db 'And better ,best.','$'
s : dw offset s1,offset s2,offset s3,offset s4
row: db 2,4,6,8
start:mov ax,cs
mov ds,ax
mov bx,offset s
mov si,offset row
mov cx,4
ok:mov bh,0
mov dh,
mov dl,0
mov ah,2
int 10h
mov dx,
mov ah,9
int 21h
inc si
add bx,2
loop ok
mov ax,4c00h
int 21h
code ends
end start
我刚才试了一下,,将代码中的是s1,s2,s3,s4,s,row后的冒号:去掉,发现程序就可以运行了,为啥去掉冒号就行了呢? 不去冒号。。。s1,s2,s3,s4,s,row代表的是标签。。。就像20页。。30页。。。这中。。。
去掉貌似。。。s1,s2,s3,s4,s,row代表的字符串首地址。。。就像第20页,第30页。。。
ps: 比方可能有点坑哈。。。淡定。。淡定 你看一下,我把冒号没去掉,程序也可以运行,我估计你用的编译器是masm6.0吧!而我用的是masm5.0不同版本的编译器它支持的标准是不同的对于masm6.0来说的话,可能不支持前面有冒号吧!你要么用masm5.0,不用去掉冒号,也可以通过:
谢谢,也许是编译器的问题 不同的编译器,语法有丢丢不同
页:
[1]