Assembly 如何使用GDB打印复杂寻址模式引用的内存?

Assembly 如何使用GDB打印复杂寻址模式引用的内存?,assembly,gdb,x86-64,att,addressing-mode,Assembly,Gdb,X86 64,Att,Addressing Mode,我是汇编新手,正在尝试打印存储在以下地址中的值 cmp %esi,0x10(%rsp,%rax,4) 我想是这样的 x/d $rsp+ 0x10 + 4*$rax 这是打印内存位置内容的正确方法 x/d $rsp+ 0x10 + 4*$rax 是的,没错。可以肯定的是,请指定数据大小,否则gdb将默认为以前使用的数据大小,可能不是dword。您的问题标题与您的问题不匹配。要打印寄存器,请使用p/x$rax

我是汇编新手,正在尝试打印存储在以下地址中的值

 cmp    %esi,0x10(%rsp,%rax,4) 
我想是这样的

 x/d $rsp+ 0x10 + 4*$rax

这是打印内存位置内容的正确方法

x/d $rsp+ 0x10 + 4*$rax

是的,没错。可以肯定的是,请指定数据大小,否则gdb将默认为以前使用的数据大小,可能不是dword。您的问题标题与您的问题不匹配。要打印寄存器,请使用
p/x$rax