Debugging Tools for Windows

d, da, db, dc, dd, dD, df, dp, dq, du, dw, dW, dyb, dyd (Display Memory)

d*命令显示给定范围内存的内容。

语法

d{a|b|c|d|D|f|p|q|u|w|W} [Options] [Range
dy{b|d} [Options] [Range
d [Options] [Range

参数

Options
指定一个或多个显示选项。除了不能包含一个以上/p*选项之外,可以包含任何下面的这些选项:
/c Width
指定要显示的列的数量。如果省略掉,默认的列数由显示类型决定。
/p
(仅内核模式) 使用物理内存地址进行显示。Range 指定的范围将被当作物理地址而不是虚拟内存。
/p[c]
(仅内核模式) 除了读取高速缓冲存储器(cached memory)中的内存之外,和/p一样。必须包含c两边的中括号。
/p[uc]
(仅内核模式) 除了读取非缓存的内存(uncached memory)之外和/p一样。必须包含uc两边的中括号。
/p[wc]
(仅内核模式) 除了会读取写聚合内存(write-combined memory)之外,和/p一样。必须包含wc两边的中括号。
Range
指定要显示的内存区域。语法的详细信息,查看地址和地址区域语法。如果省略掉Range ,命令将会从上一条内存查看命令结束的位置开始。如果Range 省略掉并且之前没有执行过内存显示命令,则从当前指令指针位置开始显示。

环境

模式 用户模式、内核模式
目标 活动目标、崩溃转储
平台 所有

注释

显示的每一行都会包含该行第一个字节的地址,后面跟该地址和之后的内存内容。

如果省略掉Range ,命令将会从上一条内存查看命令结束的位置开始。这使得可以连续的进行内存查看。

该命令有以下这些形式。dddDdwdW命令的第二个字母和dybdyd的第三个字母是大小写敏感的。

命令 显示
d 这种显示的格式和最近一次d*命令的格式相同。如果之前没有使用过d*命令,ddb 的效果相同。

注意d重复前一个以d开头的命令。包括ddaddpddudpadppdpudqadqpdquddsdpsdqsdsdSdgdldtdv,以及本页中的显示命令。如果在d之后的参数不适当,可能会产生错误。

da ASCII 字符。

每行最多48个字符。显示一直继续直到遇到第一个null字节或者到达range 值指定的所有字符都已经显示。所有不可打印字符,如回车和换行都被显示为点号(.)。

db 字节值和ASCII字符。

每个显示行都包含该行第一个字节的地址,后面跟16进制字节值。这些字节值后面会紧跟它们对应的ASCII值。第8和第9个16进制值之间会用连字号(-)分隔。所有不可打印字符,如回车和换行都被显示为点号(.)。

默认的显示个数为128字节。

dc 双字值(4字节)和ASCII字符。

每个显示行都会显示行中第一个数据的地址,并且每行最多显示8个16进制值以及它们对应的ASCII字符。

默认的显示数量为32个DWORD(128字节)。
dd 双字值(4字节)

默认的显示数量为32个DWORD(128字节)。

dD 双精度浮点数(8字节)

默认的显示数量是15个数字(120字节)。
df 单精度浮点数(4字节)

默认的显示数量是16个数字(64字节)。

dp 指针大小的值。该命令根据目标机的处理器是32位还是64位的,分别等于dddq

默认显示数量为32个DWORD或者16个四字(quad-word) (128 字节)。
dq 四字值(Quad-word values) (8 bytes)。

默认显示数量为16个四字 (128 字节)。
du Unicode字符 。

每行最多显示48个字符。显示一直继续直到遇到第一个null字节或者到达range 值指定的所有字符都已经显示。所有不可打印字符,如回车和换行都被显示为点号(.)。
dw WORD值(2字节)。

每个显示行都会显示行中第一个数据的地址,并且每行最多显示8个16进制值。

默认显示数量为64个WORD(128字节)。
dW WORD值(2字节)和ASCII字符。

每个显示行都会显示行中第一个数据的地址,并且每行最多显示8个16进制值。

默认显示数量为64个WORD(128字节)。
dyb 二进制值和字节的值。

默认显示数量为32字节。
dyd 二进制值和双字值(4字节)。

默认显示数量为8个DWORD(32字节)。

如果尝试显示一个非法地址,它的内容会显示为问号(?)。

附加信息

关于内存操作和内存相关的命令的概述,查看读写内存

Build machine: CAPEBUILD