谈起Debug,更多的给人们带来了对DOS时代的回忆。虽然现在的WINDOWS操作系统已经工作在保护模式下,但是DEBUG却仍然有其特殊的用途。要想研究一些技术上的难点,用DEBUG来进行反汇编仍然是最有效的方法之一。下面简要介绍一下DEBUG的简单使用方法。
DEBUG 中最常用的有以下几个命令:
1、-R 参数 :查看寄存器的状态。列出了在当前的所有寄存器的情况。在分析程序时,可以先用此命令来看下某个语句未运行之前的状态,以便与运行后的状态来进行分析。
2、-D 参数: 查看寄存器的具体内容。默认是DS寄存器。可以在后面加上偏移地址来查看其内容。也可以加上段地址及偏移来查看其它段寄存器的内容。
3、-U 参数:对程序进行反汇编。显示出来的就是反汇编语句。也可以在后边加偏移地址来指定从某个位置来开始。
4、-A 参数:对程序进行汇编操作。也就是修改某一位置的反汇编语句。需要注意的是,往往修改之后的语句由于转换成机器码的长度不同,会影响到编译器对下边汇编语句的解释。故需要注意查看修改后的机器码长度。
5、-G 参数:有点类似于VC++中的F5键。若后边未加任何地址则会运行到程序结束。若加了地址则会运行到指定地址处停下。
6、-T 参数:类似与VC++中的F11,可以跳到函数体中执行。
简单来说,DEBUG常用的参数就是以上的6个。用DEBUG来分析程序是一件很需要耐心和经验的工作。任何新的技术都是万变不离其中,只要掌握了这个强大的工具,一切的奥秘就都不是秘密了。