我正在尝试在汇编中尝试x
命令的所有变体。我输入了
(gdb) x /x $rsp
0x7fffffffdf90: 0x01
根据我的书,x / x命令从rsp中选择前8个字节,并将它们写为十六进制。但是,在寻找汇编文档(gdb帮助)时,我找不到/ x的大小显式为8字节的任何地方。那么我怎么知道它是否真的是8个字节?
答案 0 :(得分:1)
那么我怎么知道它是否真的是8个字节?
不是。这是“您上次使用的大小”。 Documentation。
例如:
(gdb) x/bx $rsp
0x7fffffffcbc8: 0x1c
后续x/x
命令将使用大小1(单个字符):
(gdb) x/x $rsp
0x7fffffffcbc8: 0x1c
您可以显式覆盖大小:
(gdb) x/gx $rsp
0x7fffffffcbc8: 0x00007ffff7ddc61c
随后的x/x
命令现在默认为8号:
(gdb) x/x $rsp
0x7fffffffcbc8: 0x00007ffff7ddc61c