DEBUG的使用.ppt

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DEBUG的使用

实验一 使用DEBUG调试工具 实验一 使用DEBUG调试工具 补充材料 (1) 进入DEBUG   方法1:在Windows开始菜单中单击运行命令,直接在运行对话框中输入DEBUG ??? 方法2:在运行对话框中输入CMD启动DOS命令窗口后输入DEBUG ??? 方法3:在程序、附件、命令提示符,启动DOS命令窗口后输入DEBUG (2) DEBUG命令格式 DEBUG的每个命令都是一个字母,后跟一个或多个参数。下面对DEBUG命令作几点说明。 ·字母不分大小写。 ·只使用16进制数,且不能带后缀H。 ·以空格或逗号作为命令各项之间的分隔符。分隔符只在两个数值之间是必须的。 ·可以用Ctrl-C或Ctrl-Break终止命令的执行。 ·若输入的命令有语法错误,则提示“Error”,并用“^”指出错误位置。 (3) 常用DEBUG命令 用Debug的R命令查看、改变CPU寄存器的内容; 用Debug的D命令查看内存中的内容; 用Debug的E命令改写内存中的内容; 用Debug的U命令将内存中的机器指令翻译成汇编指令; 用Debug的T命令执行一条机器指令 用Debug的A命令以汇编指令的格式在内存中写了一条机器指令 (4) 用Debug的R命令查看、改变CPU寄存器的内容; ??? R命令用来显示和修改寄存器的值,包括以下两种格式。 ?1. R ??? 显示所有寄存器和8个标志位的值,并反汇编CS:IP所指的指令。 ?2. R寄存器名 ??? 显示指定寄存器的值,并等待用户键入新的值,按回车键结束R命令。 (5)用Debug的D命令查看内存中的内容 ??? D命令可以查看内存中的内容,D命令的格式较多,只介绍本次实验中用到的格式,8086/8088CPU能够访问1M内容,D命令可以显示0000:0000H-FFFF:FFFFH中的任何一个单元的内存 如果想知道内存10000H处的内容,可以用d 段地址:偏移地址的格式来查看,如输入 ?? -d 1000:0  使用 d 1000:9查看1000:9处的内容。 ? 使用 d 1000:0 9查看1000:0-1000:9的内容 ? 一进入Debug,可直接使用D命令直接查看,将列出Debug预设的地址处的内容 (6)用Debug的E命令改写内存中的内容 用Debug的E命令改写内存中的内容;? ??? 使用e 起始地址 数据? 数据 数据...的格式来进行 ??? 如将内存1000:0-1000:9单元中的内容分别写为0、1、2、3、4、5、6、7、8、9 ??? -e 1000:0 0 1 2 3 4 5 6 7 8 9 ??? 也可以采用提问方式一个一个修改内存中的内容,如 ??? 输入e 1000:0,按Enter键 输入修改的数据,再按空格键输入下一个要修改的数据,最后Enter键结束操作。 ??? 输入字符串的格式:如-e 1000:10 1 a 2 c++ 3 IBM将输入1 a+b 2 c++ 3IBM到相应单元 ?? ? 向内容中写入机器码,如 b80100 (代表 mov ax, 0001), b90200 (代表 mov cx, 002), 01c8 (代表 add ax, cx), 那么输入-e 1000:0 b8 01 00 b9 02 00 01 c8就将该程序输入内容1000:0处 使用u命令-u 1000:0可以将内存单元中的内容翻译成汇编指令 如果要执行该程序,首先用r命令将cs修改成1000,ip修改成0,再执行t命令,单步执行程序。执行T命令时,CPU执行CS:IP执行的指令并将IP加1. (7)用Debug的A命令以汇编指令的形式在内存中写了机器指令 ??? 示例:用A命令,输入下列程序并运行 ???? -a 1000:0 ????? mov ax, 1 ????? mov bx, 2 ????? mov cx, 3 ????? add ax, bx ????? add ax, cx ????? add ax, ax ????? 直接按Enter键结果输入。 用r命令将cs修改成1000,ip修改成0,再执行t命令,单步执行程序。执行T命令时,CPU执行CS:IP执行的指令并将IP加1. 实验一的主要作业 (1) 使用Debug,将下面的程序段写入内容,逐条执行,观察每条指令执行后,CPU中相关寄存器中内容的变化。 ?????? 机器码??????????????? 汇编指令 ?????? b0 20 4e???????? mov ax, 4E20H ?????? 05 16 14???????? add bx, 1416H ?

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档