汇编语言上机指导及例示
http://tech.ddvip.com 2006年12月01日 社区交流
本文详细介绍汇编语言上机指导及例示
error.ASM(19): error A2049: Illegal use of register
End of file encountered on input file
error.ASM(23): warning A4085: End of file, no END directive
51566 + 406450 Bytes symbol space free
2 Warning Errors
4 Severe Errors
说明这个程序有错误,并在第3,4,16,19,23行有错,
我们再执行PROCEDURE c去逐一检查
第三行:3 ax db 'My name is DJX'
它的错误在于AX不能作为变量名,更正:
3 out2 db 'My name is DJX'
注意刚才我们定义AX为变量时在后面的程序中用过'变量AX'在第19行
19 lea dx,ax
在出错报告中也报第19行错,因为不能将AX的有效地址赋给DX,更正:
19 lea dx,out2
这样一下就解决了两个错误
第四行:4 data ens
这行为一个段的结束,但语句漏打了字母,更正:
4 data ends
第十六行:16 moo ah,2
这行也是语句打错,更正:
16 mov ah,2
第二十三行:
出错信息:error.ASM(23): warning A4085: End of file, no END directive
说明本程序没有结束伪操作,更正:
加入:在第七、八行加入地址标志: start:
原23 end start
执行PROCEDURE a将源程序修改如下:
data segment
out1 db 'Hello world'
out2 db 'My name is DJX'
data ends
code segment
assume cs:code;ds:data
start:
lea dx,out1
mov ah,2
int 21h
mov dl,0ah
mov ah,2
int 21h
mov dl,0dh
mov ah,2
int 21h
lea dx,out2
mov ah,9
int 21h
code ends
end start再次进行PROCEDURE b进行编译,屏幕显示:
责编:豆豆技术应用