debug命令学习指导

debug命令学习指导

ID:41849650

大小:600.29 KB

页数:13页

时间:2019-09-03

debug命令学习指导_第1页
debug命令学习指导_第2页
debug命令学习指导_第3页
debug命令学习指导_第4页
debug命令学习指导_第5页
资源描述:

《debug命令学习指导》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、调试程序阳BUGEXE解析1、debug是什么?DEBUG.EXE是DOS捉供的可用于调试可执行程序的一个工具软件,也是可用于汇编语言程序设计的一种调试工具。DEBUG也是软件开发的重要调试工具,这是因为DEBUG除了可运行汇编语言程序外,还可肓接用来检杳和修改内存单元,装入、存储及启动运行程序,检杳及修改寄存器。也就是说DEBUG可深入到计算机的基本级上,可使用户更紧密的与计算机中真正进行的工作相联系。2、如何启动debug命令来调试程序?启动DEBUG的一般命令如下:DEBUG[路径文件名][参数1][参数2]其屮:文件名指定被调试的文件

2、,包括文件名和后缀,参数表是被调试文件运行时所需要的参数。被调试的文件可以是系统中的任何文件,但通常它们的后缀为EXE或COMo当DEBUG启动成功后,将显示连接符“•”,这时,可输入各种命令。注意:•运行Debug程序时,如果不带被调试程序,则所冇段寄存器值相等,都指向当前可用的主存段;除SP之外的通用寄存器都设置为0,而SP指示当前堆栈顶在这个段的尾部;IP=0100h;状态标志都是清0状态。•运行Debug程序时,如果带入的被调试程序扩展名是.EXE,则需要重新定位。此时,CS:IP和SS:SP根据被调试程序确定,分别指向代码段和堆栈段。

3、DS=ES指向当而可用的主存段,BX.CX包含被调试文件大小的字节数(BX为高16位),其他通用寄存器为0,状态标志都是清0状态。标志名称溢出OF方向DF中断IF负号SF零ZF辅助进位AF奇偶PF进位CF置位状态1OVDNElNGZRACPECY复位状态0NVUPDIPLNZNAPONC表1DEBUG屮标志位的符号表示3、DEBUG的命令及其参数(-*)DEBUG的命令Debug的命令都是一个字母,后跟一个或多个参数:字母[参数]。命令的使用中注意:(1)字母不分大小写;(2)只使用16进制数,并且不加尾缀“H”;(3)分隔符(空格或逗号)只在

4、两个数值之间是必须的,命令和参数间可无分隔符。因此下列这些命令是等价的:des:100110dcs:100110d,cs:100,110(4)只有在按ENTER键Z后,输入的命令才有效。可以用Ctrl+Break中止命令的执行;(5)如果遇到语法出错,那么就显示“eiror”字样,如:dcs:100cs:110Aerror错误原因是,命令D要求笫二个地址中只包含16进制的偏移值。(6)不能使用符号常量和符号地址。(1)不能使用绝大部分伪指令,但两个最常用的伪指令DB和DW能被使用,用于直接把字节和字数据置人相应存储单元。如:DB1,2,3,4,

5、“ABCD”DW1234,5678(2)可以使用属性操作符“PTR”对DEBUG不能明确类型的操作数进行说明。如:INCBYTEPTR[BX]o(3)DEBUG的A命令汇编程序能根据转移目标地址的距离自动地汇编出短、近或远的转移或调用指令。当然,这也能由“SHORT”、“NEARPTR”或"FARPTR”对转移目标地址进行说明来实现。(4)远返回指令的助记符在DEBUG中为RETFo(5)指令前缀助记符必须在和关的指令Z前输入,也町以分別放在不同的行。(6)串操作指令只能用其字节型或字型的助记符形式,如:MOVSB、CMPSW等。(7)nJ以使

6、用段超越前缀助记符CS:、DS:、ES:和SS:。如:DS:MOVAL,[BP](二)DEBUG的命令参数许多命令的参数是主存逻辑地址,形式是“段地址:偏移地址”。其中,段地址可以是段寄存器或数值;偏移地址是数值。如果不输入段地址,则采用默认值,可以是缺省段寄存器值。如果没有提供偏移地址,则通常就是当前偏移地址。例如:1000:0,ds:10,cs:30等;对主存操作的命令还支持地址范围这种参数,从哪个地址开始,到哪个地址结束。它有二种表示方式:①地址地址——前者表示起始地址,要用“段值:偏移量”来表达,后者表示终止地址,只用“偏移量”来表示;

7、例如:200:50100——段值为200,偏移量从50至I」100的内存区域,②地址长度——前者表示起始地址,要用“段值:偏移最”来表达,后者表示该区域的大小,用字母'L'开头的数值來表示。例如:200:50L100——段值为200,偏移量从50开始的100个字节区域。4、DEBUG命令的使用DEBUG的命令共有19条,这里具体介绍常用的几条,其余的请同学们课示自行消化。(1)装人命令(Load)用途:把文件或特定磁盘扇区的内容加载到内存。说明:用单个Load命令可装入的最大扇区数是80H。如果出现读盘错,则DEBUG显示出错信息。装入命令有两

8、种形式:形式1——用于在没冇参数或只用一个地址参数时,装入文件。L[地址];形式1:装入由N命令指定的文件当使用不带参数的L命令时,在debug命令行

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。