欢迎来到天天文库
浏览记录
ID:46231338
大小:314.74 KB
页数:80页
时间:2019-11-21
《汇编实验指导书》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验一熟悉汇编语言程序上机过程及相关软件的使用【实验目的】1、掌握常用工具软件EDIT、MASM、LINK和DEBUG的使用。2、拿握汇编语言程序的上机步骤。3、熟悉汇编语言源程序的框架,指令及伪指令的使川。4、熟练应JIJDEBUG相关命令。【实验涉及的主要知识】一、汇编语言源程序的汇编过程编语言源程序的汇编过程是是利用汇编程序(MASM)对已编辑好的源程序文件(.ASM)进行汇编,将源程序文件中以ASCII码表示的助记符指令逐条翻译成机器码指令,并完成源程序中的伪指令所指出的各种操作,最后可以建立3个文件:扩展名为・OBJ的目标文件、扩展名为.LST的列表文件和扩展名为.
2、CRF的交叉索引文件。1=1标文件是必须建立的,它包含了程序中所有的机器码指令和伪指令指出的各种有关信息,但该文件中的操作数地址还不是内存的绝对地址,只是一个可浮动的相对地址。列表文件(.LST)中包含了源程序的全部信息(包括注释)和汇编后的目标程序,列表文件可以打印输出,可供调试检查用。交叉索引文件(.CRF)是用來了解源程序中各符号的定义和引用情况的。.LST和.CRF两个文件不是必须建立的,可有有无,可以通过汇编时的命令加以选择。在对源程序文件(ASM文件)汇编时,汇编程序将对ASM文件进行两遍扫描,若程序文件屮有语法错误,则结朿汇编,汇编程序将指出源程序中存在的错误,
3、这时应返回编辑环境修改源程序中的错误,再经过汇编,直到最后得到无错•误的口标程序,即OBJ文件。因此,汇编程序的主要功能可以概括为以下三点:(1)检查源程序中的语法错误,并给出错误信息;(2)产生目标程序文件(OBJ文件),并可给出列表文件(.LST文件);(3)展开宏指令。汇编程序是系统提供的用于汇编的系统软件,丨I前常川的汇编程序有Microsoft公司推出的宏汇编程MASM(MACROASSEMBLER)和BORLAND公司推出的TASM(TURBOASSEMBLER)两种。Microsoft公司推出有宏汇编程序MASM和小汇编程序ASM两种,二者的区别在于:MASM有
4、宏处理功能,而ASM没有宏处理功能,因此,MASM比ASM的功能强大,但MASM需要占据较大的内存空间,当内存空间较小时(如64KB),只能使用ASMo二、目标程序的连接过程汇编后产牛的目标程序(0町文件)并不是nJ执行程序文件(EXE文件),还不能直接运行,它必须通过连接程序(LINK)连接成一个可执行程序后才能运行。连接程序进行连接时,其输入有两个部分:一是目标文件(.OBJ),目标文件可以是一个也可以是多个,可以是汇编语言经汇编后产生的目标文件,也可以是高级语言(例如C语言)经编译后产生的目标文件;另一是库文件(.LIB),库文件是系统中已经建立的,主耍是为高级语言提供
5、的。连接后输出两个文件,一是扩展名为.EXE的可执行文件,另一个是扩展名为.MAP的内存分配文件,它是连接程序的列表文件,又称为连接映像(LinkMap),它给出每个段在存储器中的分配情况,该文件对有可无。连接程序给出的“无堆栈段的警告性错误”并不彩响程序的运行。所以,至IJ此为止,连接过程已经结朿,可以在操作系统下执行该.EXE程序了。三、debug的使用通过编辑、汇编和连接后的程序是可以执行的程序。但是,一个程序特别是比较复杂的程序不能保证没有一点错谋。因此,在投入正式运行前必须进行调试,以检查程序的正确性。调试程序Debug就是用来调试汇编语言程序的一种工具。Debug
6、的主要功能有显示和修改寄存器及内存单元的内容;按指定地址启动并运行程序;设置断点使程序分段运行,以便检查程序运行过程中的中间结果或确定程序出错的位置;反汇编被调试程序,它将一个可执行文件中的指令机器码反汇编成助记符指令并同时给岀指令所在的内存地址;单条追踪或多条追踪被调试程序,它可以逐条指令执行或儿条指令执行被调试程序,每执行一条(或儿条)指令后,Debug程序将中断程序的运行并提供有关结果信息;汇编一段程序,在Debug的汇编命令下可以直接输入助记符指令,并将其汇编成可运行程序段。此外,Debug还可以将磁盘指定区的内容或一个文件装入到内存或将内存的信息写到磁盘上等等。1、
7、启动debug程序在DOS状态下可以用下面的命令启动debug程序:DEBUG[路径文件名.扩展名]debug后而的文件名及路径是指被调试程序的文件名及路径,debug后而的文件必须是程序的可执行文件,其扩展名可以是.EXE或.COM。在此命令后,DOS将调试程序debug调入内存,debug接着将被调程序送入内存。比如:DEBUG123.EXEo2、debug的主耍命令(1)显示内存单元内容的命令D①格式1:-D地址从指定地址开始,显示128个字节的内容,每一行的左边显示段内偏移地址,接着显示16个单
此文档下载收益归作者所有