在笔记的第11篇的时候,我们下载了debug.exe。

DEBUG是一个DOS实用程序,是供程序员使用的程序调试工具,可以用它检查内存中任何地方的字节以及修改任何地方的字节。它可以用于逐指令执行某个程序以验证程序运行的正确性,也可以追踪执行过程、比较一个指令执行前后的值以及比较与移动内存中数据的范围,读写文件与磁盘扇区。

选项说明
-U反汇编命令将内存中的机器指令翻译成汇编指令 
-R所有14个寄存器的内容
-R(寄存器名字)更改特定寄存器的内容
-T跟踪命令,每执行一条指令就显示运行结果,使程序员可以细致地观察程序的执行情况
-DCS 偏移范围输出代码段偏移范围的内容
-DDS 偏移范围输出数据段偏移范围的内容
-DSS 偏移范围输出堆栈段偏移范围的内容
-G从当前命令退出执行
-G 偏移运行命令,从指定地址处开始运行程序,并在指定的偏移处终止
-Q调试器程序DEBUG关闭

DEBUG下的标志位表示

值为1值为0
状态标志CF
PF
AF
ZF
SF
OF
CY (carry) 
PE (even parity)   
AC (auxiliary carry)   
ZR (zero)   
NG (negative)  
OV (overflow)
NC (no carry)   
PO (odd parity)
NA (no auxiliary carry)
NZ (nonzero)
PL (plus)
NV (no overflow)
控制标志DF
IF

DN (down)   
EI (enable interrupts)
UP (up)
DI (disable interrupts)

在DOSBOX里面运行debug的方法: 直接输入debug 回车
(前提是你挂载的目录里面有debug程序)

调试某个程序,输入debug 程序文件名 比如这里我们调试前面的一个例子

debug 3_1.exe

这里调试的是编译好后的可执行程序(exe),只需要将3_1.exe替换为你的程序的文件名即可

如图所示:

最后修改:2022 年 03 月 08 日
如果觉得我的文章对你有用,请随意赞赏