汇编语言程序上机过程.

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

8086汇编语言程序上机过程汇编语言程序的上机过程要运行调试汇编语言程序,需要以下程序文件:编辑程序•EDIT.COM或其他文本编辑工具软件,用于编辑源程序。汇编程序•MASM.EXE,用于汇编源程序,得到目标程序。连接程序•LINK.EXE,用于连接目标程序,得到可执行程序。调试程序•DEBUG.EXE,用于调试可执行程序。8086汇编语言程序上机过程上机过程汇编语言程序上机操作包括以下几个阶段:编辑、汇编、连接和调试。1.编辑源程序用文本编辑软件创建、编辑汇编源程序。常用编辑工具有:EDIT.COM、记事本、Word等。无论采用何种编辑工具,生成的文件必须是纯文本文件,所有字符为半角,且文件扩展名为.asm(文件名不分大小写,由1~8个字符组成)。8086汇编语言程序上机过程上机过程(续)2.汇编用汇编软件MASM对上述源程序文件(.asm)进行汇编,产生目标文件(.obj)等。汇编软件MASM的主要功能是:•检查源程序的语法,给出错误信息;•建立目标程序文件;•展开宏指令。如果汇编过程中发现有语法错误,则屏幕上会显示出错语言的位置和出错的类型。此时,需要进行修改,然后再进行汇编。如此进行,直至汇编无错误,得到目标文件为止。8086汇编语言程序上机过程上机过程(续)对源程序MYFILE.ASM进行汇编的方法:在DOS状态下,输入命令即启动了汇编程序。MASMMYFILE.ASM(回车)此命令执行后,会出现下面的3行信息,依次按回车键(即选择默认值)即可建立目标文件MYFILE.OBJ。ObjectFilename[MYFILE.OBJ]:SourceListing[Nul.LST]:CrossReference[Nul.CRF]:8086汇编语言程序上机过程上机过程(续)3.连接汇编产生的目标文件(.OBJ)并不是可执行的程序,还要用连接程序把它转换为可执行的EXE文件。连接方法如下:在DOS状态下,输入命令即可完成连接:LINKMYFILE.OBJ(回车)如果连接过程中出错,那么程序会在屏幕上显示提示信息。此时,需要对源程序进行查错、修改,然后再进行汇编、连接,直至连接无错误,得到可执行文件(.EXE)为止。8086汇编语言程序上机过程上机过程(续)4.程序运行在DOS提示符下输入可执行程序的文件名即可运行程序。若程序能够运行但不能得到预期结果,则就需要检查源程序,改错后再汇编、连接、运行。5.程序调试在程序运行阶段,有时不容易发现问题,这时就需要使用调试工具进行动态查错。常用的动态调试工具为DEBUG。8086汇编语言程序上机过程利用DEBUG进行程序的运行调试DEBUG是为汇编语言设计的一种调试工具。它通过单步、设置断点等方式为汇编语言程序员提供了非常有效的调试手段。它可以直接调试COM文件和EXE文件。DEBUG状态下的所有数据都采用十六进制形式显示,无后缀H。8086汇编语言程序上机过程运行调试(续)1.DEBUG的运行在DOS状态下,输入下列命令之一,就可以进入DEBUG调试状态。命令一:DEBUG↙(回车)格式二:DEBUG可执行文件名↙(回车)进入DEBUG调试状态后,将显示提示符“-”,此时,可输入所需的DEBUG命令。8086汇编语言程序上机过程运行调试-DEBUG的主要命令(1)显示内存单元内容的命令D格式为:-D[地址]或-D[范围]说明:上面格式中的“-”符号是DEBUG的提示符,下同。例如,显示指定范围(DS:100~DS:1FF)内存单元内容的命令是:-D10010F这里没有指定段地址,D命令自动显示DS段的内容。8086汇编语言程序上机过程运行调试-DEBUG的主要命令(2)修改内存单元内容的命令E格式一:用给定内容代替指定范围的单元内容-E地址内容表例如,-EDS:100F358595A8D格式二:逐个单元相继地修改-E地址例如:-EDS:100↙18E4:010089.78↙•此命令是将0100单元内容89改为78。•78是程序员从键盘输入的。•程序员在修改完一个单元后,可按空格键继续修改下一单元内容,直至按回车键结束该命令。8086汇编语言程序上机过程运行调试-DEBUG的主要命令(3)检查和修改寄存器内容的命令R格式一:显示CPU内部所有寄存器内容和标志寄存器中的各标志位状态-R格式二:显示和修改某个指定寄存器内容-R寄存器名例如:-RAX格式三:显示和修改标志寄存器内容-RF8086汇编语言程序上机过程运行调试-DEBUG的主要命令(4)运行命令G格式为:-G[=地址1][地址2[地址3…]]其中,地址1指定了运行的起始地址,后面的均为断点地址。当指令执行到断点时,就停止执行并显示当前所有寄存器及标志位的内容和下一条要执行的指令。8086汇编语言程序上机过程运行调试-DEBUG的主要命令(5)跟踪命令T格式一:逐条指令跟踪-T[=地址]该命令从指定地址起执行一条指令后停下来,显示所有寄存器及标志位的内容。若未指定地址,则从当前的CS:IP开始执行。格式二:多条指令跟踪-T[=地址][值]该命令从指定地址起执行n条指令后停下来,n由[值]确定。8086汇编语言程序上机过程运行调试-DEBUG的主要命令(6)汇编命令A格式为:-A[地址]该命令允许输入汇编语言语句,并能把它们汇编成机器代码,相继地存放在从指定地址开始的存储区中。必须注意:输入的数字均默认为十六进制数。8086汇编语言程序上机过程运行调试-DEBUG的主要命令(7)反汇编命令U格式一:从指定地址开始,反汇编32字节-U[地址]格式二:对指定范围内的存储单元进行反汇编-U[范围]8086汇编语言程序上机过程运行调试-DEBUG的主要命令(8)执行命令P格式为:-P[=地址][指令数]该命令控制CPU执行指定地址处的指令。若指定了指令数,则CPU执行从指定地址开始的若干条指令。若未指定地址和指令数,则CPU执行由(CS:IP)指定地址处的一条指令。P命令与T命令的差别在于:P命令把子程序调用(CALL)、重复字符串指令(REP)或软件中断(INT)当成一条指令来执行,简化了跟踪过程。8086汇编语言程序上机过程运行调试-DEBUG的主要命令(9)退出DEBUG命令Q格式为:-Q该命令退出DEBUG程序,返回DOS。8086汇编语言程序上机过程运行调试-DEBUG使用说明①在DEBUG中的提示符“-”下才能输入命令,在按回车键后,该命令才开始执行。②命令是单个字母,命令和参数的大小写可混合输入。③命令和参数、参数和参数之间要用空格、逗号或制表符等分隔。④可以用“段值:偏移量”的形式来表示地址,也可以用段寄存器来代表“段值”。例如,1000:0,DS:10,CS:30等。8086汇编语言程序上机过程运行调试-DEBUG使用说明(续)⑤范围:用来表示地址范围,从哪个地址开始,到哪个地址结束。它有两种表示方式:地址地址——前者表示起始地址,要用“段值:偏移量”来表达,后者表示终止地址,只用“偏移量”来表示。•例如:100:50100地址长度——前者表示起始地址,要用“段值:偏移量”来表达,后者表示该区域的大小,用字母“L”开头的数值来表示。•例如:100:50L1008086汇编语言程序上机过程运行调试-DEBUG使用说明(续)⑥当命令出现语法错误时,将在出错位置显示^Error。⑦可用组合键Ctrl+C或Ctrl+Break来终止当前命令的执行,还可用组合键Ctrl+S来暂停屏幕显示(当连续不断地显示信息时)。

1 / 20
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功