GDB问题 - 如何逐行浏览反汇编代码?

时间:2010-05-04 01:10:27

标签: gdb disassembly next

我想通过一个二进制文件,我的老师一行一行地给我检查堆栈上的地址和不同寄存器的内容,但我对使用gdb并不是非常熟悉。虽然我有C代码,但我们应该完全使用二进制文件。这是我到目前为止使用的命令:

(gdb) file SomeCode

这给了我这条消息:

Reading symbols from ../overflow/SomeCode ...(no debugging symbols found)...done.

然后我用:

(gdb) disas main

给了我所有的装配。我想设置一个断点并使用“next”命令,但我尝试的命令都没有。有谁知道我会使用的语法?

2 个答案:

答案 0 :(得分:3)

尝试使用ni nexti。等价是si,这是步骤指令

答案 1 :(得分:2)

nexti如果你想跳过函数调用。 stepi如果你想进入函数调用。

以下文档非常有用;它有一个列表,列出了你可以在gdb上使用的所有重要命令。

X86-64:http://csapp.cs.cmu.edu/public/docs/gdbnotes-x86-64.pdf

IA32:http://csapp.cs.cmu.edu/public/docs/gdbnotes-ia32.pdf