首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GDB的x memory-dump命令中十六进制的大小

GDB的x memory-dump命令中十六进制的大小
EN

Stack Overflow用户
提问于 2018-11-13 15:10:16
回答 1查看 93关注 0票数 0

我正在尝试在汇编中使用x命令的所有变体。我打字

代码语言:javascript
复制
(gdb) x /x $rsp
0x7fffffffdf90: 0x01

根据我的书,x/x命令从rsp中选择前8个字节,并将它们写成十六进制。但是,在查找程序集文档(gdb help)时,我没有在任何地方发现/x的大小明确为8字节。那么我怎么知道它是否真的是8个字节呢?

EN

回答 1

Stack Overflow用户

发布于 2018-11-14 00:05:16

我怎么知道它是不是真的是8个字节呢?

事实并非如此。它是“你上次用过的任何尺寸”。Documentation

例如:

代码语言:javascript
复制
(gdb) x/bx $rsp
0x7fffffffcbc8: 0x1c

后续x/x命令将使用大小1(单个字符):

代码语言:javascript
复制
(gdb) x/x $rsp
0x7fffffffcbc8: 0x1c

您可以显式覆盖大小:

代码语言:javascript
复制
(gdb) x/gx $rsp
0x7fffffffcbc8: 0x00007ffff7ddc61c

后续x/x命令现在默认大小为8:

代码语言:javascript
复制
(gdb) x/x $rsp
0x7fffffffcbc8: 0x00007ffff7ddc61c
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53275641

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档