debug_方法简介.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
debug_方法简介

DEBUG 学习 因为系统是win7 x64 , 需要下载DosBo 0.74 安装 并且下载放在下 DosBox 之后, 用指令 Z:\mount C: E:\masm5.0 Z:\C: C:\debug 进入debug模式 debug命令的作用是测试和调试MS-DOS中的可执行文件。 命令格式:debug [盘符] [路径] [文件名] [parameters] 参数说明: parameters:表示指定要测试的可执行文件所需要的任何命令行信息。 Debug 命令功能如下: debug a : 汇编8086/8087/8088记忆码。 debug c :比较内存的两个部分。 debug d :显示部分内存的内容。 debug e :从指定地址开始,将数据输入到内存。 debug f :使用指定值填充一段内存。 debug g 运行在内存中的可执行。 debug h:执行十六进制预算。 debug i:显示来自特定端口的1字节值。 debug l:将文件活磁盘扇区内容加载到内存。 debug m:复制内存快中的内容。 debug n:为1或w命令指定文件,或者指定正在测试的文件的参数。 debug o:向输入端口发送1个字节的值。 debug p:执行循环、重复的字符串指令,软件中断活子例程。 debug q:推出debug程序。 debug r:显示或改变一个或多个寄存器。 debug s:在部分内存中搜索一个或多个字节值的模式。 debug t:执行一条指令,然后显示所有寄存器的内容、所有标志的状态和debug下一步要执行的指令的加码形式。 debug u:反汇编字节并显示相应的原语句。 debug w:将被测试文件写入磁盘。 debug xa:分配扩展内存。 debug xd:释放扩展内存。 debug xm:映射扩展内存页。 debug xs:显示扩展内存的状态。 先在目录下面创建一个文档以下代码改为hello.asm首先进入masm5.0所在路径(装入-连接-调试均在masm5.0所在目录中进行) 路径E:\masm5.0\) 1、装入 格式:masm asm文件及路径1 obj文件目标路径 如:E:\masm5.0 masm .\MYDOC\hello.asm .\MYDOC\ 结果:程序无错 在E:\masm5.0\MYDOC中增加文件HELLO.OBJ 2、连接 格式:link obj文件路径1 E:\masm5.0 LINK .\MYDOC\HELLO.OBJ (此后当前目录就会出现HELLO.EXE) 格式:exe文件全名(即 HELLO.EXE)E:\masm5.0 HELLO.EXE 调试 -u 反汇编 -r 显示寄存器内容 -g [=address1][address2][address3] 执行到断点行,如:-g 12 为执行到第12行 -t [=address][value] 跟踪,配合-g使用 如:-t 12 1 为从第12行开始,每执行1条指令后停下来 -d 查看数据 -q 退出返回操作系统 作业二 在上次的作业中,介绍。 当时遇到了那个问题: 这个程序是没有办法运行的。 所以不同程序的反汇编的代码是一样的也就不足为奇了。但是当时没有找到答案,因为根本没有意识到这个是因为什么引起的。 经过老师课堂上的讲解,我知道了这是一个报错的过程。接下来我便对这个过程进行了探索。 的实验,对不同的代码进行反汇编。虽然运行但是发现了“This program cannot be run in DOS mode”后面有一段乱码。并且一段乱码之后,都会有一个的单词Rich”,那么中间的乱码是什么呢?“Rich”是什么? 这部分数据包含了一些加密数据,来标识编译这个PE文件的组件。可用来检举某些病毒程序所编译的程序来自哪台机器。 而Rich后面是 header部分。 为什么会出现这样的语句呢? PE的意思是Portable Executable。他是环境自身的执行文件格式意味着格式似乎跨Win32的,即使在非Intel的CPU上任何32平台的PE都能识别和使用此文件格式。文件的,这些文件磁盘上存储的格式是有一定规律的。 如何去除使程序正常运行。 相应解决办法。 debug测试计算机端口 计算机串行端口不正常的时候,用debug进行。端口(RS-232C)接收端,为检查,讲和相连,用debug命令向COM1端口发送和接,只要看接收的数据和发送的是否。发送接收的两个寄存器的地址均为F8,用O发送数据,用I接收数据。 -I 3F8 00 -O 3F8 66 -I 3F8 xx 如果xx是则说明芯片是好的。同样可以用来检查其他芯片。

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档