汇编语言程序上机过程
当汇编语言源程序编好后,要使其实现功能,需经过建立、汇编、连接、运行的过程,如果出现错误,还要进行跟踪调试。
建立
对于汇编语言源程序,其文件名的扩展名部分必须是.ASM。
汇编
汇编语言源程序经过汇编,才可以生成目标程序,这个过程由汇编程序实现。其基本功能是把用汇编语言书写的源程序翻译成机器语言的目标代码、检查用户源程序中的错误且显示出错信息、生成列表文件等。
在DOS平台上使用较普遍的汇编程序是MASM和TASM。下边介绍的是Microsoft公司Macro Assembler Version 5.X版的汇编操作。
语法: MASM 源文件名, 目标文件名, 列表文件名, 交叉引用文件名;
其中都不必给出扩展名。若只想对部分提示给出回答,则在相应位置用逗号隔开;若不想对剩余部分作答,则用分号结束。
连接
连接程序的功能是连接分别产生的目标模块、解决外部交叉调用、产生一个可重定位的装入模块、以及产生可选的内存映象文件等。
在DOS平台上使用较普遍的连接程序是LINK和TLINK。下边介绍的是Microsoft Linker的连接操作。
语法: LINK 目标文件名, 可执行文件名, 内存映象文件名, 库文件名;
其中都不必给出扩展名。若只想对部分提示给出回答,则在相应位置用逗号隔开;若不想对剩余部分作答,则用分号结束。
从6.0 版以后,Microsoft公司把MASM和LINK的功能由一个ML.EXE程序完成,只需一个命令就可把源程序汇编连接生成.EXE文件。
ML [/Fl][/Fm][/Fr][/c] source_filename.ext
注意:其中source_filename.ext为汇编语言源程序的文件名,扩展名不能省略。[ ]中的F必须大写,l(字母)、m、r和c必须小写。
运行
当生成.EXE文件后,就可以键入该文件名运行它,注意不必键入扩展名。
调试
静态查错即检查源程序,并在源程序级用文本编辑器进行修改,然后再汇编、连接、运行。但有时静态检查不容易发现问题,这时就需要使用调试工具动态查错。当程序结果不能在屏幕上显示时也需要用调试工具查看结果。这里使用DEBUG程序进行调试。
① 用反汇编命令U显示可执行代码。
注意反汇编出来的指令与源程序表示的不同点:其中的数据一律为不带H后缀的十六进制形式表示,地址用其值而不是用符号表示。
② 用R命令显示寄存器值
③ 用G命令执行正在被调试的程序到断点处
④ 用D命令查看数据
⑤ 用T命令跟踪执行程序
⑥ 用Q命令退出DEBUG返回到操作系统