汇编语言之程序调试技术.ppt

汇编语言之程序调试技术.ppt

ID:56480332

大小:41.50 KB

页数:17页

时间:2020-06-19

汇编语言之程序调试技术.ppt_第1页
汇编语言之程序调试技术.ppt_第2页
汇编语言之程序调试技术.ppt_第3页
汇编语言之程序调试技术.ppt_第4页
汇编语言之程序调试技术.ppt_第5页
资源描述:

《汇编语言之程序调试技术.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、程序调试基本技术8/26/20218086/8088宏汇编语言程序设计程序调试我们以前学习了通过汇编程序MASM来将汇编语言源程序汇编成目标程序,使用连接程序LINK来将目标程序连接成可执行文件。而调试汇编语言程序的基本工具是DEBUG。在使用DEBUG调试程序时,能使程序员触及计算机内部,能观察并修改寄存器和存储单元的内容,能够监视程序的执行情况。所有DEBUG命令为单一字母,其后跟着一个或多个参数。命令中的参数之间必须用分界符号(空格或逗号)隔开。每个名字以回车键作为结束符。在DEBUG命令中,使用逻辑地址的格式是:段基值:偏移量。其

2、中段基值可以用段寄存器名表示,也可以用十六进制数。在DEBUG状态下,命令参数中的数据和机器显示的数据均是十六进制数,且不以“H”结尾。8/26/20218086/8088宏汇编语言程序设计程序调试一、DEBUG的进入和退出在命令行状态宏汇编程序的当前目录下,输入DEBUG然后回车,就能进入DEBUG状态了,此时出现提示符“-”,调试人员就可以使用DEBUG的各命令了。首先应该装入待调试的可执行文件。方法是在提示符“-”后面输入N可执行文件名,然后回车,可执行文件名必须包含扩展名。也可以在调用DEBUG的同时转让可执行文件,方法是,在命令

3、行状态宏汇编程序的当前目录下,输入DEBUG可执行文件名,然后回车。当完成可执行文件转入后,程序的目标代码、数据已全部装入内存指定单元。8/26/20218086/8088宏汇编语言程序设计程序调试程序装入内存后,CPU各寄存器内容处于初始状态:CS:程序开始运行的段基值IP:第一条要执行的指令的偏移量SS:段定义语句中组合类型指定为堆栈段的段基值SP:栈底+2单元的偏移量DS、ES:程序段前缀(PSP)的段基值标志寄存器:各标志位均为0状态DEBUG状态的退出:在提示符“-”后面输入Q,然后回车,就能退出调试状态。8/26/202180

4、86/8088宏汇编语言程序设计程序调试二、显示命令1、显示内存单元内容:D命令命令格式:D地址或D范围例如:-DDS:100;从(DS)+100H开始显示80H个字单元的内容-D100;用上次使用的段寄存器从偏移量为100H开始显示80H个字单元内容-DDS:100110;显示DS数据段中偏移量从100H开始到110H结束的字单元内容在屏幕上显示的结果内容分为3部分:左边是每一行存储单元的起始地址(段基值:偏移量),中间是各字节单元两位十六进制数内容显示,右边是把中间各字节单元用相应的ASCII码字符表示,若为不可显示字符,便用”.”表

5、示。8/26/20218086/8088宏汇编语言程序设计程序调试2、显示寄存器命令-R命令命令格式:-R输入R然后回车,在屏幕上将会显示各寄存器的内容。如下图所示:在第二行后半段显示标志寄存器的各标志位状态。各标志位的复位和置位状态用字符表示(显示字符见P209表11.1)。第三行表示现在CS:IP指向的一条指令,也就是下一条即将执行的指令。8/26/20218086/8088宏汇编语言程序设计程序调试3、显示源程序指令(反汇编):U命令在DEBUG状态下运行程序是执行内存区域内的目标代码,如果要知道执行的是什么指令,操作数在哪里,就需

6、要把目标代码还原成源程序中的汇编指令。这就是所谓的反汇编。U命令就是把目标代码反汇编成源程序中的汇编指令。命令格式:U地址(从指定地址开始显示32个字节目标代码)或U范围(指定起始地址和结束地址或者指定起始地址和长度)如:UCS:12或UCS:1228或UCS:12L16都表示显示从CS:12开始32个字节目标代码的汇编指令。8/26/20218086/8088宏汇编语言程序设计程序调试三、修改命令1、修改内存单元内容-E命令E命令有两种格式:(1)用内容表修改内存单元格式:E地址内容表内容表为内存单元的新数据,各字节单元的数据以空格分开

7、。例如–EDS:056‘ABC’23表示将以DS:0为起始地址的连续5个字节单元中依次存放数据56H,字符‘A’,‘B’,‘C’的ASCII码和数据23H。8/26/20218086/8088宏汇编语言程序设计程序调试(2)逐个内存单元修改命令格式:-E地址键入上述命令后,屏幕上显示出命令指定的单元地址及其内容。这时可输入新的两位十六进制数,以代替原来的内容。修改完此存储单元数据后可进行下面3种操作:键入空格:屏幕上显示下一个高字节单元的内容,并等待输入新数据,如果再键入空格则显示更高一个字节的内容,可以从低字节到高字节修改存储单元内容。

8、键入连接号“-”:屏幕显示上一个低字节单元内容,并等待输入新数据,可从高字节到低字节修改。键入回车:结束这次内存修改。如果前两种操作未输入新数据就回车,则此单元数据未做修改。8/26/2021

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

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

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