灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:3191回复:0

[系统教程]DOS命令大全:Debug:r (register)命令详解

楼主#
更多 发布于:2012-08-31 19:02


显示或改变一个或多个 cpu 寄存器的内容。如果在不含参数的情况下使用,则 r 命令会显示所有寄存器的内容和寄存器存储区的标志、所有标志的状态以及当前位置的解码形式。
MS-DOS命令语法
r [Register]
MS-DOS命令参数
Register指定包含有要显示的信息的寄存器名。?显示 debug 子命令列表。MS-DOS命令注释

使用 r 子命令如果指定了寄存器,Debug.exe 将显示以十六进制记数法表示的该寄存器的 16 位值,并将冒号显示为提示符。如果要更改包含在该寄存器中的值,请键入新值,然后按回车键。否则,请按回车键返回到 debug 提示符。

有效的 x86 寄存器下表列出了 Register 有效的 x86 寄存器。

ax
bp
bx
cs
cx
di
ds
dx
es
f
ip
pc
si
sp
ss
如果指定了未在上表中列出的寄存器,Debug.exe 将显示以下消息:
br error

使用 f 代替寄存器如果键入 f 代替寄存器,Debug.exe 会将每个标志的当前设置显示为两字母代码,然后显示 Debug 提示符。要更改标志的设置,请参考下表来键入适当的两字母代码:
标志名设置清除
Overflowovnv
Directiondn (decrement)up (increment)
interruptei (enabled)di (disabled)
Signng (negative)pl (positive)
Zerozrnz
Auxiliary Carryacna
Paritype (even)po (odd)
Carrycync
可以按任何顺序键入新的标志值。不需要在这些值之间留出空格。要终止 r 子命令,请按回车键。任何没有指定新值的标志保持不变。

用 r 子命令显示的消息如果为标志指定了多个值,Debug.exe 将显示以下消息:
df error
如果指定了未在前面的表中列出的标志代码,Debug.exe 将显示以下消息:
bf error
在这两种情况下,Debug.exe 将忽略无效项之后指定的所有设置。

Debug.exe 的默认设置在启动 Debug.exe 时,会将段寄存器设置到可用内存的底部;指令指针设置为 0100h;清除所有标志;除了将 sp 设置为 FFEEh 之外,其余寄存器都被设置为零。

有关使用 d 子命令来显示部分内存内容的信息,请参阅“相关主题”。
有关使用 u 子命令来分解字节的信息,请参阅“相关主题”。
MS-DOS命令范例
如果当前位置是 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.exe 按以下格式显示信息:
NV UP DI NG NZ AC PE NC - _
按任意顺序键入一个或多个有效的标志值,而且可以带或不带空格。例如:
nv up di ng nz ac pe nc - pleicy
Debug.exe 终止 r 子命令并显示 Debug 提示符。要查看所作的更改,请键入 r 或 rf。Debug.exe 显示如下信息:
NV UP EI PL NZ AC PE CY - _
按回车键返回到 Debug 提示符。


喜欢0 评分0
游客

返回顶部