DEBUG命令使用解析五
来源:互联网 发布:省市区json 编辑:程序博客网 时间:2024/06/06 07:16
Debug:Q(退出) 停止 Debug 会话,不保存当前测试的文件。 当您键入 q 以后,控制返回到 Windows 2000 的命令提示符。 q 参数 该命令不带参数。 有关保存文件的信息,请单击“相关主题”列表中的 Debug W(写入)。 ++++ Debug:R(寄存器) 显示或改变一个或多个 CPU 寄存器的内容。 r [register-name] 参数 无 如果在没有参数的情况下使用,则 r 命令显示所有寄存器的内容以及寄存器存储区域中的标志。 register-name 指定要显示其内容的寄存器名。 有关显示内存部分内容的信息,请单击“相关主题”列表中的 Debug D(转储)。 有关反汇编字节的信息,请单击“相关主题”列表中的 Debug U(反汇编)。 ++ 范例 要查看所有寄存器的内容、所有标记的状态和当前位置的指令解码表,请键入以下命令: r 如果当前位置是 CS:11A,显示外观将类似于以下内容: AX=0E00 BX=00FF CX=0007 DX=01FF SP=039D BP=0000 SI=005C DI=0000 DS=04BA ES=04BA SS=04BA CS=O4BA IP=011A NV UP DI NG NZ AC PE NC 04BA:011A CD21 INT 21 要只查看标志的状态,请键入以下命令: rf Debug 按以下格式显示信息: NV UP DI NG NZ AC PE NC - _ 现在,您可以按任意顺序键入一个或多个有效的标志值,其中可以有或没有空格,如下所示: nv up di ng nz ac pe nc - pleicy Debug 结束 r 命令并显示 Debug 提示符。要查看更改,请键入 r 或 rf 命令。Debug 将显示以下内容: NV UP EI PL NZ AC PE CY - _ 按 ENTER 返回到 Debug 提示符。 ++ 说明 使用 r 命令 如果指定了寄存器名称,Windows 2000 将显示以十六进制标记表示的寄存器的 16 位值,并将冒号显示为提示符。如果要更改包含在寄存器中的值,除非键入新值并按 ENTER 键;否则,请按 ENTER 键返回 Debug 提示符。 有效寄存器名 以下是 register-name 的有效值:ax、bx、cx、dx、sp、bp、si、di、ds、es、ss、cs、ip、pc 及 f。ip 和 pc 都引用指令指针。 如果指定寄存器名称,而不是从前面的列表中指定,Windows 2000 将显示以下消息: br error 使用 f 字符而不是寄存器名 如果键入 f 字符代替寄存器名,Debug 将每个标记的当前设置显示为两字母代码,然后显示 Debug 提示符。要更改标志的设置,请从下表中键入适当的两字母代码: 标志名 设置 清除 溢出 ov nv 方向 dn(减) up(增) 中断 ei(启用) di(禁用) 正负 ng(负) pl(正) 零 zr nz 辅助进位 ac na 奇偶校验 pe(偶校验) po(奇校验) 进位 cy nc 可以按任何顺序键入新的标志值。不需要在这些值之间留出空格。要停止 r 命令,请按 ENTER 键。任何没有指定新值的标志保持不变。 用 r 命令显示的邮件 如果为标记指定了多个值,Debug 将显示以下消息: df error 如果指定没有在前面的表中列出的标志代码,Debug 将显示以下消息: bf error 在这两种情况下,Debug 将忽略所有在无效项目之后指定的设置。 Debug 的默认设置 在启动 Debug 时,会将段寄存器设置到空闲内存的低端,指令指针设置为 0100h,清除所有标志,并且将其余寄存器设置为零,除了被设置为 FFEEh 的 sp 之外。 ++++ Debug:S(搜索) 在某个地址范围搜索一个或多个字节值的模式。 s range list 参数 range 指定要搜索范围的开始和结束地址。有关 range 参数有效值的信息,请单击“相关主题”列表中的 Debug。 list 指定一个或多个字节值的模式,或要搜索的字符串。用空格或逗号分隔每个字节值和下一个字节值。将字符串值包括在引号中。 ++ 范例 假定需要查找包含值 41 并且范围从 CS:100 到 CS:110 的所有地址。为此,请键入以下命令: scs:100 110 41 Debug 按以下格式显示结果: 04BA:0104 04BA:010D - 以下命令在 CS:100 到 CS:1A0 的范围内搜索字符串“Ph”。 scs:100 1a0 "Ph" ++ 说明 如果 list 参数包含多个字节值,Debug 将只显示出现字节值的第一个地址。如果 list 只包含一个字节值,Debug 将显示指定范围内出现该值的所有地址。 ++++ Debug:T(跟踪) 执行一条指令,并显示所有注册的内容、所有标志的状态和所执行指令的解码形式。 t [=address] [number] 参数 =address 指定 Debug 启动跟踪指令的地址。如果省略 address 参数,跟踪将从程序的 CS:IP 寄存器所指定的地址开始。有关 address 参数有效值的信息,请单击“相关主题”列表中的 Debug。 number 指定要跟踪的指令数。该值必须是十六进制数。默认值为 1。 有关执行循环、重复的字符串指令、软件中断或子例程的信息,请单击“相关主题”列表中的 Debug P(执行)。 有关执行当前内存中程序的信息,请单击“相关主题”列表中的 Debug G(转向)。 ++ 范例 要执行一个指令(CS:IP 指向的指令),然后显示寄存器的内容、标志的状态以及指令的解码形式,请键入以下命令: t 如果程序中的指令位于 04BA:011A,Debug 可能显示下列信息: AX=0E00 BX=00FF CX=0007 DX=01FF SP=039D BP=0000 SI=005C DI=0000 DS=04BA ES=04BA SS=04BA CS=O4BA IP=011A NV UP DI NG NZ AC PE NC 04BA:011A CD21 INT 21 ++ 说明 跟踪只读内存中的指令 t 命令使用 8086 或 8088 微处理器的硬件跟踪模式。因此,也可以跟踪存储在只读内存 (ROM) 中的指令。 使用地址参数 必须在 address 参数之前使用等号 (=) 以便将它与 number 参数区分。 ++++
- DEBUG命令使用解析五
- DEBUG命令使用解析一
- DEBUG命令使用解析二
- DEBUG命令使用解析三
- DEBUG命令使用解析四
- DEBUG命令使用解析六
- DEBUG命令使用解析七
- DEBUG命令使用解析及范例大全
- Debug 命令解析
- debug命令的使用
- DEBUG命令使用详解
- 五、Debug的简单使用
- Jsoup解析HTML+Debug使用
- 常用DEBUG命令及使用详解
- debug中E命令的使用
- Debug命令
- DEBUG命令
- Debug命令
- placement new释疑
- java实现静态代理
- 作了一年Seoer,经验心得分享,总结!
- .net下 URLRewriter.dll 实现URL重写,实现静态页面
- DEBUG命令使用解析四
- DEBUG命令使用解析五
- foreach、while、for性能比较
- explicit关键字的用途
- 单例模式(Singleton)
- c++与java和c#浅谈
- jass's diary148 -
- DEBUG命令使用解析六
- 图片链接去边框
- DEBUG命令使用解析七