DEBUG调试程序的使用
一、DEBUG的启动
DOS系统提示符下,运行DEBUG命令即可启动。
命令格式:DEBUG  [文件名全称]
功能:启动DEBUG调试程序,并把指定名字的文件装载入内存,以供调试。
说明:启动DEBUG,实际就是让计算机执行DEBUG.EXE这个调试程序。若该程序不在当前目录下,需要在命令中指定该程序所在的位置路径(包括其所在磁盘和文件夹)。
文件名全称指定要调试的文件名及其所在的位置路径。若指定该选项,则在启动DEBUG时把该文件装载入内存,以供调试,该文件一般是EXE文件或COM文件。若不指定该选项,则只启动DEBUG,不装载文件。
二、DEBUG常用命令
1D——显示内存单元内容的命令
格式:D[开始地址  [结束地址]]
说明:①若“开始地址”和“结束地址”都指定,则显示指定地址范围内的内存单元的内容;若只指定“开始地址”,省略“结束地址”,则显示从“开始地址”开始的80H个字节的内容;若“开始地址”和“结束地址”都省略,则显示从上次显示的末字节单元的下一个字节开始的80H个字节的内容。
②“开始地址”可包含段地址,若省略段地址,则默认使用DS的值作段地址。
2E——输入内容(修改内存单元内容)命令
格式:E开始地址  [数据表列]dos命令运行exe程序
说明: ①若指定数据表列,则用数据表列中的数据存入从指定地址开始的内存单元中;若省略数据表列,则先显示指定开始地址的内存单元的内容,等待你修改。若需要修改,输入其内容,按空格键显示、修改下一个内存单元内容;若不需要修改,直接按空格键显示、修改下一个内存单元内容,修改完成后按回车键。
②“开始地址”可包含段地址,若省略段地址,则默认使用DS的值作段地址。
3F——填充内容(修改内存单元内容)命令
格式:F开始地址  结束地址  数据表列
说明:①用数据表列中的数据存入由开始地址和结束地址指定范围内的内存单元。若数据表列中的数据少于指定地址范围的内存单元数,则循环使用表列中的数据存入内存单元,若数据表列中的数据多于指定地址范围的内存单元数,则多余的数据被忽略。
②“开始地址”可包含段地址,若省略段地址,则默认使用DS的值作段地址。
4R——显示和修改寄存器内容命令
格式:R[寄存器名]
说明:省略寄存器名时,显示所有寄存器的内容;当指定寄存器名时,系统先显示指定名字的寄存器的内容,并等待用户输入新的内容,若不需修改,可直接按回车键。用F代表Flags寄存器的名字,即RF命令可显示修改Flags的内容。
5A——汇编命令
格式:A[开始地址]
说明:①允许用户输入汇编指令(程序段),系统自动把其转变成机器指令,并依次存入指定地址开始的内存单元中。若省略开始地址,则第一次使用A命令时默认开始地址为CS0100H,以后使用时的默认开始地址为上次用A命令后的下一个内存单元的地址。
②开始地址一般不指定段地址,默认使用CS的值作段地址。
6U——反汇编命令
格式:U[开始地址  [结束地址]]
说明:①若“开始地址”和“结束地址”都指定,则反汇编指定地址范围内的内存单元的内容;若只指定“开始地址”,省略“结束地址”,则反汇编从“开始地址”开始的20H个字节的内容;若“开始地址”和“结束地址”都省略,则反汇编从上次反汇编的末字节单元的下一个字节开始的20H个字节的内容。
②开始地址一般不指定段地址,默认使用CS的值作段地址。
7T——逐条指令跟踪执行命令
格式:T[=开始地址]  [数值N]
说明:①从指定的开始地址,执行N条指令,并显示执行结果。省略开始地址时,则从当前的CSIP处开始执行;省略数值N时,默认为1
②开始地址一般不指定段地址,默认使用CS的值作段地址。
8G——程序运行命令
格式:G[=开始地址]  [断点地址1  [断点地址2]  ……]
说明:从指定“开始地址”处开始运行程序,运行到断点地址处,显示运行结果。省略开始地址时,则从当前的CSIP处开始运行;若省略断点地址,则一直执行,直到遇到一条结束指令时停止(若一直遇不到结束指令,则死机)。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。