Debug在学习汇编的过程中,担任着一个非常重要的角色,是一个极其重要的调试工具,所以学会它是必须的。

命令格式 功能说明
A [地址] 输入汇编指令
C [范围] 起始地址 对由“范围”指定的区域与“起始地址”指定的同大小区域进行比较,显示不相同的单元
D [范围] 显示指定范围内的内存单元内容
E 地址  字节值表 用值表中的值替换从“地址”开始的内存单元内容
F 范围  字节值表 用指定的字节值表来填充内存区域
G [=起始地址][断点地址] 从起点(或当前地点)开始执行,到终点结束
H 数值1  数值2 显示二个十六进制数值之和、差
I 端口地址 从端口输入
L [地址 [驱动器号 扇区 扇区数]] 从磁盘读
M 范围  地址 把“范围”内的字节值传送到从“地址”开始的单元
N 文件标识符 [文件标识符…] 指定文件名,为读/写文件做准备
O 端口地址  字节值 向端口输出
P [=地址]  [指令数] 按执行过程,但不进入子程序调用或软中断
Q   退出DEBUG,不保存正在调试的文件
R [寄存器名] 显示和修改寄存器内容
S 范围  字节值表 在内存区域内搜索指定的字节值表。如果找到,显示起始地址,否则,什么也不显示
T [=地址]  [指令数] 跟踪执行,从起点(或当前地点)执行若干条指令
U [范围] 反汇编,显示机器码所对应的汇编指令
W [地址 [驱动器号  扇区 扇区数]] 向磁盘写内容,(BX、CX)为写入字节数

关于参数的几点说明:

1. 进制:在DEBUG中输入或显示的数据都是十六进制形式

2. 分隔:命令和参数、参数和参数之间要用空格、逗号或制表符等分隔

3. 地址:用“段值:偏移量”的形式来表示地址,也可用段寄存器来代表“段值”
例如:1000:0,ds:10,es:200,cs:30等

4. 范围:表示地址范围,它有二种表示方式:“地址1 地址2”和“地址1 长度”。
其中:“地址1”表示起始地址,要用“段值:偏移量”来表达;
“地址2”表示终止地址,只用“偏移量”来表示;
“长度”用字母’L’开头的数值来表示。
例如:100:50 100——段值为100,偏移量从50到100的内存区域;
100:50 L100——段值为100,偏移量从50开始的100个字节区域。

5. 端口地址:二位十六进制数值

6. 字节值:二位十六进制数值

7. 字节值表:由若干个字节值组成,也可以是用引号括起来的字符串

8. 驱动器号:0—驱动器A、1—驱动器B、2—驱动器C、3—驱动器D等

出处:http://www.shelwee.com/html/archives/65556.html

Debug命令详解的更多相关文章

  1. Docker命令详解

    Docker命令详解   最近学习Docker,将docker所有命令实验了一番,特整理如下: # docker --help Usage: docker [OPTIONS] COMMAND [arg ...

  2. android adb 命令详解

    ADB (Android Debug Bridge)  是android SDK中的工具,需要先配置环境变量才能使用.起调试桥的作用,可以管理安卓设备.(也叫debug工具) ---------查看设 ...

  3. netstat命令详解

    它主要的用法和详解! (netstat -na 命令),本文主要是说Linux下的netstat工具,然后详细说明一下各种网络连接状态. netstat -nat |awk ‘{print $}’|s ...

  4. Android Studio系列教程五--Gradle命令详解与导入第三方包

    Android Studio系列教程五--Gradle命令详解与导入第三方包 2015 年 01 月 05 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://s ...

  5. samtools常用命令详解(转)

    转自:samtools常用命令详解 samtools的说明文档:http://samtools.sourceforge.net/samtools.shtml samtools是一个用于操作sam和ba ...

  6. adb调试命令详解-2016.02.01

    adb(Android Debug Bridge),调试桥可以让设备的调试监测过程在远端进行,而不必在运行实际运行应用的设备上,方便调试的输出. 1 命令详解 a 查看帮助信息         adb ...

  7. xm 命令详解

    xm 命令详解 xm addlabel label dom configfile [policy] xm addlabel label res resource [policy] 增加了名称为labe ...

  8. 把java文件打包成.jar (jar命令详解)

    把java文件打包成.jar (jar命令详解) 先打开命令提示符(win2000或在运行框里执行cmd命令,win98为DOS提示符),输入jar Chelp,然后回车(如果你盘上已经有了jdk1. ...

  9. GDB scheduler-locking 命令详解

    GDB scheduler-locking 命令详解 GDB> show scheduler-locking     //显示线程的scheduler-locking状态GDB> set ...

随机推荐

  1. select中option的onclick事件失效

    html: <select id="pageSelect"> <option value="1" selected onclick=" ...

  2. LOJ #6509. 「雅礼集训 2018 Day7」C

    神仙题 LOJ #6509 题意 给定一棵树,点权为0/1,每次随机一个点(可能和之前所在点相同)走到该点并将其点权异或上1 求期望的移动距离使得所有点点权相同 题解 根本不会解方程 容易发现如果一个 ...

  3. 【转】Java中的新生代、老年代、永久代和各种GC

    JVM中的堆,一般分为三大部分:新生代.老年代.永久代: 1 新生代 主要是用来存放新生的对象.一般占据堆的1/3空间.由于频繁创建对象,所以新生代会频繁触发MinorGC进行垃圾回收. 新生代又分为 ...

  4. 阿里云服务器ftp连接后21端口无法使用的问题

    今天在阿里云Centos上搭了一个ftp 服务,开启了20和21端口的权限.但是用工具和ftp命令登录,均超时. ftp命令登录成功后不能使用ls 命令,直接超时. 工具登录成功后 获取根目录失败,也 ...

  5. 「JavaScript面向对象编程指南」基础

    DOM标准是独立的(即并不依赖JS)操作结构化文档的方式 BOM实际是个与浏览器有关的对象集合,原来没任何标准可言,H5诞生后才被定义了一些浏览器间通用的对象标准 ES5严格模式"use s ...

  6. 手把手教你写vue插件并发布(二)

    前记:上一篇 https://www.cnblogs.com/adouwt/p/9211003.html, 说到了一个完整的vue插件开发.发布的流程,总结下来就讲了这么一个事,如何注入vue, 如果 ...

  7. linux环境变量问题

    在使用jenkins进行自动化部署的时候遇到一个问题,通过jenkins进行自动化部署的时候执行java命令时,提示java不知道是啥命令,确定是装好了java的,猜测是环境变量问题,但是在/etc/ ...

  8. lambda-基于谓词筛选值序列

    此方法通过使用延迟执行实现. 即时返回值为一个对象,该对象存储执行操作所需的所有信息. 只有通过直接调用对象的 GetEnumerator 方法或使用 Visual C# 中的 foreach(或 V ...

  9. 从头开始学gradle【各系统安装gradle】

    所有的环境都是基于jdk1.8 java -version windows安装 下载对应的gradle.zip安装包,解压到指定文件即可,然后配置相应的环境变量即可使用 linux/mac 安装 mk ...

  10. (转)理解maven命令package、install、deploy的联系与区别

    我们在用maven构建java项目时,最常用的打包命令有mvn package.mvn install.deploy,这三个命令都可完成打jar包或war(当然也可以是其它形式的包)的功能,但这三个命 ...