我是靠谱客的博主 开放刺猬,最近开发中收集的这篇文章主要介绍汇编语言Debug命令详解教程,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

参考书籍《汇编语言》——王爽

Debug的命令比较多,这里我介绍常用的命令,其余的等需要的时候再进行查询。

命令 用途
Debug-R 查看、改变CPU寄存器的内容
Debug-D 查看内存中的内容
Debug-E 改写内存中的内容
Debug-U 将内存中的机器指令翻译成汇编指令
Debug-T 执行一条机器指令
Debug-A 以汇编指令的格式在内存中写入一条机器指令

Debug的由来?

主人公:Grace.Hoper(格雷斯.霍普)
1937年,美国青年霍德华.艾肯找到IBM公司为其投资200万美圆研制计算机,第一台成品艾肯把它取名为:马克1号,又叫“自动序列受控计算机”,从这时起IBM公司由生产制表机,肉铺磅秤,咖啡研磨机等乱七八糟玩意儿的行业,正式跨进“计算机”领地。
为马克1号编制程序的是一位女数学家雷斯.霍波,有一天,她在调试程序时出现故障,拆开继电器后,发现有只飞蛾被夹扁在触点中间,从而“卡”住了机器的运行。于是,霍波诙谐的把程序故障统称为“臭虫(BUG)”,把排除程序故障叫DEBUG,而这奇怪的”称呼“,竟成为后来计算机领域的专业行话。如DOS系统中的调试程序,程序名称就叫DEBUG.

实例讲解:

1. Debug-R命令

话不多说,直接上图  

1. 查看寄存器中的内容

2. 改变寄存器中的内容

2. Debug-D命令

1. 查看内存中的内容,如果没有明确指出查看多少内存单元则默认为128字节存储单元。

2.给出具体的查看范围,这里我要查看内存单元是2000:1000~2000:1009这10个存储单元。

 

3.查看某一个具体的存储单元,情况类似,例如我查看2000:1024指向的存储单元中的内容。  

3. Debug-E命令

1. 连续改写内存中的内容,比如我要改写从2000:1000指向内存单元开始连续的6个字节。用E命令修改后,再用D指令显示内存单元中的数据。

2. 逐个改写内存中的内容,比如我要改写从2000:1000指向内存单元开始连续的6个字节。

 (1)输入E 2000:1000 Enter键结束
 (2)光标停在“.”后面,“.”前面是以前内存单元中的数据,后面是要修改的值,输入值后点击空格键,跳到下一个内存单元进行修改,如果不输入直接点击空格键则表示不对当前内存单元进行修改(图中我并没有对2000:1001指向的内存单元进行修改)。
 (3)所有内存单元的值均修改完毕后,点击Enter键退出E命令。
 流程图展示步骤:

最终结果:

 

3.E命令向指定的内存单元中写入字符、字符串。D命令显示内存单元中的数据,显示的是其对应的ASCII码。

4.E命令向内存中写入机器码,后面介绍U命令时,再用其查看机器码的含义。

机器码      对应的汇编指令
B80100      MOV AX,0001
B90200      MOV CX,0002
01C8       ADD AX,CX   

4. Debug-U命令

1. 将内存中的机器指令翻译成汇编指令。用上面的例子进行说明:

5. Debug-T命令

1. 执行一条机器指令。对上面给出的机器指令进行执行,结果如下:

6. Debug-A命令

1. 命令以汇编指令的格式在内存中写入一条机器指令。用D命令显示,U命令将将内存中的机器指令翻译成汇编指令。

至此收官

另附:
1. 关于Windows 64 位系统下如何安装配置 DosBox 及 debug.exe。请参考以下文章:

汇编语言DOSBox及debug.exe在Windows64下环境搭建

2. 王爽的《汇编语言》

3. Debug命令大全

4. 仅用于学习交流,如有侵权请告知,后会删除。

以上就是汇编语言Debug命令详解教程的详细内容,更多关于汇编语言Debug命令的资料请关注靠谱客其它相关文章!

最后

以上就是开放刺猬为你收集整理的汇编语言Debug命令详解教程的全部内容,希望文章能够帮你解决汇编语言Debug命令详解教程所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(94)

评论列表共有 0 条评论

立即
投稿
返回
顶部