显示或改变一个或多个
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 提示符。