如何使用gdb在当前指令指针之前(之前)打印指令?

时间:2015-11-25 16:10:06

标签: linux gdb

如何使用gdb linux在当前指令指针之前(之前)打印指令?

2 个答案:

答案 0 :(得分:2)

在具有固定指令长度的处理器(例如SPARC)上,这很容易:

(gdb) disas $pc-40,$pc+1

x86_64上,同样的方法有效,但有一点需要注意:$pc-40可能会在指令中间“降落”,并且您会在前几条指令中获得“垃圾”。但是,通常反汇编重新同步并且输出的尾部是正确的。很少没有,然后你必须尝试$pc-41$pc-42

答案 1 :(得分:1)

根据GDB文档的Machine Code部分,当您为disassemble命令指定参数时,可以在表达式中使用$pc,例如

disas $pc-8, $pc