我只是想知道如何使用GDB查看8(%rsp)的内容。根据google搜索几个gdb指南后发现的几个来源,当我尝试查看注册rsp的内容时,我可以使用这个命令:
print/d $rsp
将打印$ rsp的地址。但是,当我尝试时:
print/d 8($rsp)
我有分段错误。当我尝试:
print/d *$rsp+8
它说我无法取消引用通用指针。我也尝试使用:
x/8d $rsp
但是,我认为此命令将查看rsp以下的8个数字而不是rsp以上。我对吗?我想查看8($ rsp)内容的唯一原因是,有一个汇编语句:
cmp 0x8(%rsp),%eax
任何建议的人?
答案 0 :(得分:1)
事实上,你非常接近解决方案。正确的语法只是print /d *($rsp+8)
或x /x $rsp+8
。