DEBUG G命令 是做什么的?

来源:百度知道 编辑:UC知道 时间:2024/05/30 03:33:01
RT

这个 在windows帮助里就有啊

Debug:g (go)运行当前在内存中的程序。使用不含参数的 g 将在 CS:IP 寄存器的当前地址处开始运行。

语法
g [=address] [breakpoints]

参数
address
对于当前位于存储器中的程序,指定它开始运行的地址。
breakpoints
指定可以设置为 g 子命令的一部分的 1 到 10 个临时断点。
?
显示 debug 子命令列表。
注释
Windows XP 不使用该命令。使用它只是为了与 MS-DOS 文件兼容。
指定有效的 address 项
Address 是一个包含字母段记录的二位名称或一个四位字段地址加上一个偏移量。可以忽略段寄存器或段地址。CS 是下列“调试”子命令的默认段:a、g、l、t、u 和 w。所有其它命令的默认段是 DS。所有数值均为十六进制格式。段名和偏移量之间必须包含冒号。有效地址如下:

CS:0100

04BA:0100

使用 address 参数
必须在 address 参数之前使用等号 (=),以区分 address 和断点地址 (breakpoints)。

指定断点
不论在 breakpoint 列表的什么位置键入断点,程序都将在第一个断点处停止。Debug.exe 在每个断点处用中断代码代替原始指令。

当程序到达断点时,Debug.exe 将所有断点地址恢复为它们的原始指令并显示所有寄存器的内容、所有标志的状态以及最后执行指令的解码形式。Debug.exe 此时显示的信息与使用 r (register) 子命令并指定断点地址时相同。

如果不在断点处停止程序,Debug.exe 将不使用原始指令替换中断代码。

可以只在包含 8086 操作代码(操作码)的第一个字节的地址上设置断点。如果设置了 10 个以上的断点,Debug.exe 将显示以下信息:

bp err