rm(寄存器掩码)

rm 命令修改或显示寄存器显示掩码。 此掩码控制 r (Registers) 命令如何显示寄存器。

rm 
rm ? 
rm Mask 

参数

?
显示可能的 掩码 位的列表。

面具
指定调试器显示寄存器时要使用的掩码。 掩码 是指示寄存器显示内容的总和。 位的含义取决于处理器和模式。 有关详细信息,请参阅以下“备注”部分中的表。

环境

说明
模式 用户模式、内核模式
目标 实时、故障转储
平台 全部

注解

命令名称中的“m”必须是小写字母。

如果使用 rm 不带参数,则会显示当前值以及有关其位的说明。

若要显示基本整数寄存器,必须设置位 0 (0x1) 或位 1 (0x2) 。 默认情况下,为 32 位目标设置0x1,为 64 位目标设置0x2。 如果尝试设置这两个位,则不能同时设置这两个位,0x2替代0x1。

可以通过将 r (Registers) 命令与 M 选项一起使用来替代默认掩码。

基于 x86 的处理器或基于 x64 的处理器支持以下 掩码 位。

bit 说明

0 1

0x1 0x2

显示基本整数寄存器。 (设置其中一个或两个位具有相同的效果。)

2

0x4

显示浮点寄存器。

3

0x8

显示段寄存器。

4

0x10

显示 MMX 寄存器。

5

0x20

显示调试寄存器。 在内核模式下,设置此位还会显示 CR4 寄存器。

6

0x40

显示 SSE XMM 寄存器。

7

0x80

(内核模式仅) 显示控件寄存器,例如 CR0、CR2、CR3 和 CR8。

8

0x100

(内核模式仅) 显示描述符和任务状态寄存器。

9

0x200

在浮点中显示 AVX YMM 寄存器。

10

0x400

以十进制整数显示 AVX YMM 寄存器。

11

0x800

以十进制整数显示 AVX XMM 寄存器。

12

0x1000

以浮点格式显示 AVX-512 zmm0-zmm31 寄存器。

13

0x2000

以整数格式显示 AVX-512 zm00-zmm31 寄存器。

14

0x4000

显示 AVX-512 k0-k7 寄存器。

示例

启用整数状态和段寄存器。

0: kd> rm 0x00a
0: kd> rm
Register output mask is a:
       2 - Integer state (64-bit)
       8 - Segment registers

启用 0x1000 (以浮点格式) 显示 AVX-512 zmm0-zmm31 寄存器。

0: kd> rm 0x100a
0: kd> rm
Register output mask is 100a:
       2 - Integer state (64-bit)
       8 - Segment registers
    1000 - AVX-512 ZMM registers

启用掩码0x2000 (以整数格式) 显示 AVX-512 zmm00-zmm31 寄存器。

0: kd> rm 0x200a
0: kd> rm
Register output mask is 200a:
       2 - Integer state (64-bit)
       8 - Segment registers
    2000 - AVX-512 ZMM Integer registers

启用所有 AVX-512 寄存器掩码:

0: kd> rm 0x700a
0: kd> rm
Register output mask is 700a:
       2 - Integer state (64-bit)
       8 - Segment registers
    1000 - AVX-512 ZMM registers
    2000 - AVX-512 ZMM Integer registers
    4000 - AVX-512 Opmask registers

如果尝试在不支持它的硬件上设置寄存器掩码,则注册掩码的无效位将被忽略。

kd> rm 0x100a
Ignored invalid bits 1000
kd> rm
Register output mask is a:
      2 - Integer state (64-bit)
       8 - Segment registers