汇编 | 8086 DEBUG调试学习笔记

技术汇编 | 8086 DEBUG调试学习笔记 汇编 | 8086 DEBUG调试学习笔记在8086汇编中DEBUG是个非常实用的工具,并且可以非常明了的查看每一步指令每一个段的相对状态,有利于学习。下

汇编| 8086 DEBUG学习笔记

DEBUG是8086汇编中一个非常实用的工具,它可以清晰的查看每一步指令的相对状态,有利于学习。下面是一些使用DEBUG的方法:

-A:你可以在相应的位置开始写代码,在代码中可以跟一个地址来表示写的位置;从下图可以看出,参数2000加在A之后,即从段偏移量2000的位置开始存储代码。

-C:

-c [add1]L[length] [add2]是显示和比较从add1和add2开始的长度数据;

键入下图:-C 50L20 100第二列显示0050-006F的数据内容,第三列显示0010-011F的数据内容,长度为20。数据显示非常直观。

-D:显示存储空间的内容。

如上图,0200原来是空的。通过A命令将其写入代码后,可以发现其中存储了一个新的操作代码。

此外,您还可以通过指示显式段和偏移量来直接查询特定位置的内容。(如CS:200)

-E:修改特定存储空间中的内容

-E 100

073F:0100 B8.12

您也可以通过连续输入来更改连续的内容:

-F:它用于填充一段存储单元,但要注意它的格式,并清楚地写下段地址和段偏移量。

如下图所示,L10表示填充长度为10,后跟填充内容。通过两个命令可以发现,如果我只写\(n\)个填充内容,写\(m\)个填充长度(\(nm\)),就会自动按顺序循环填充。

-G:不当使用此命令将导致系统崩溃。使用方法是:G[=address],意思是从当前\ (CS3360IP \)?指示的位置被执行以寻址。

技巧:首先用-U检查一些指令,然后用-G快速执行。

-H:这个选项比较简单,就是输入两个参数,加减这两个参数,把要加的结果显示在第一列,把减法的结果放在第二列,其中我们可以看到,当它减为负数的时候,是以补码的形式表示的。

-I:输入并显示某个端口的一个字节,后跟端口号。

-L:我发现L命令不能用了。我查阅了数据。在dos下运行调试时,禁止所有涉及直接写入硬盘扇区的操作。这是窗户的保护功能。如果你想运行所有的调试命令,你必须在真实模式下运行它们。

-M:将\(cs\)的一部分移动到内存单元,默认情况下,内存单元是指\(DS\)部分。

-N:曾经给文件命名。-n[姓名]。

-O:过去常常向港口发送数据,

;将数据4F发送到2F8端口

O-2 F8 4F

-Q:使用q命令退出调试。

-R: R命令是一个非常方便的命令,可以查看和修改8086中寄存器的值。使用-R直接查看所有寄存器,使用-R【指定寄存器】修改一个寄存器。如上图所示,AX中的值已经修改成功。其中,使用-R F可以检查标志寄存器的状态,如图所示。不是简单的0和1,不容易记住。可以参考实验书进行对比。可以看到,当前寄存器属于无溢出、正方向、允许中断、正号、非0、无辅助进位、奇数和无进位的状态。

-F:用于搜索指定位置的字符,并返回准确的地址。

-T:单步调试

-U:反汇编指令,可以将内存中存储的机器码反编译成汇编语言。参数之一是起始地址。

由于与L命令相同的原因,-W:调试没有成功。为了保护硬盘,windows不允许在这种情况下使用此命令。

通过学习可以发现,立即数在使用时默认为\(16\)十进制,不需要加H,反而在末尾加H会给出错误,调试时不区分大小写。

Emu8086也是一款非常不错的调试软件,操作简单,可以在线下载。

因为windows版本太高,无法在debug中打开,所以可以下载Dosbox在其中运行调试。

他灵魂的渴望是他命运的预言

你灵魂的欲望是你命运的先知。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/88692.html

(0)

相关推荐

  • DG主库忘记force logging情况下insert append了nologgin表操作是怎样的

    技术DG主库忘记force logging情况下insert append了nologgin表操作是怎样的这篇文章给大家介绍DG主库忘记force logging情况下insert append了nologgin表操作是

    攻略 2021年11月30日
  • MongoDB和MySQL的区别有哪些

    技术MongoDB和MySQL的区别有哪些这篇文章主要讲解了“MongoDB和MySQL的区别有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MongoDB和MySQ

    攻略 2021年12月2日
  • UML包图中包引入和包合并怎么用

    技术UML包图中包引入和包合并怎么用这篇文章主要介绍了UML包图中包引入和包合并怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。UML包图中的包引入和

    攻略 2021年12月4日
  • 指南针s代表什么方向,指南针怎么看,红白针代表什么

    技术指南针s代表什么方向,指南针怎么看,红白针代表什么使用指南针指南针s代表什么方向,可使地图和实际地形的方位一致,探知现在你所在的地点和寻找的目的地的方位。指南针务必水平地拿着,而且要远离以下列举的各种物品,才可避免磁

    生活 2021年10月23日
  • 分数化小数,小学生数学分数和小数互化的方法

    技术分数化小数,小学生数学分数和小数互化的方法1. 小数化成分数分数化小数:原来有几位小数,就在1的后面写几个零作分母,把原来的小数去掉小数点作分子,能约分的要约分。 2. 分数化成小数:用分母去除分子。能除尽的就化

    生活 2021年10月28日
  • 怎么解决关于Zabbix忘记admin登录密码的问题

    技术怎么解决关于Zabbix忘记admin登录密码的问题本篇内容主要讲解“怎么解决关于Zabbix忘记admin登录密码的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎

    攻略 2021年11月2日