gdb x 命令详解

来源:互联网 发布:原帅数据 编辑:程序博客网 时间:2024/05/16 10:59
>examine命令 x :查看内存地址中的值

格式:x/<n/f/u>  <addr>

n:是正整数,表示需要显示的内存单元的个数,即从当前地址向后显示n个内存单元的内容,一个内存单元的大小由第三个参数u定义。

f:表示addr指向的内存内容的输出格式,s对应输出字符串,此处需特别注意输出整型数据的格式:

x 按十六进制格式显示变量。

d 按十进制格式显示变量。

u 按十六进制格式显示无符号整型。

o 按八进制格式显示变量。

t 按二进制格式显示变量。

a 按十六进制格式显示变量。

c 按字符格式显示变量。

f 按浮点数格式显示变量。

u:就是指以多少个字节作为一个内存单元-unit,默认为4。当然u还可以用被一些字符表示,如b=1 byte, h=2 bytes,w=4 bytes,g=8 bytes.

<addr>:表示内存地址。

整合这个命令的诠释:就是以addr为起始地址,返回n个单元的值,每个单元对应u个字节,输出格式是f。

如:x/ 3uh 0x54320表示:以地址0x54320为起始地址,返回3个单元的值,每个单元有两个字节,输出格式为无符号十六进制。

也就是说返回了3*2=6个字节的数据,以十六进制输出,这6个字节的数据,每两个字节为一个单元输出,共输出3个单元。

原创粉丝点击