gdb反汇编一行

Bhu*_*bus 6 c gcc gdb

我想在gdb中只反汇编一行代码; 要做到这一点,我需要所述行的内存地址.如何在gdb中获取特定代码行的地址?或者更好的是,gdb中是否有一个命令按行号进行反汇编?

sky*_*yel 3

在要反汇编的行上打一个断点,然后,您可以尝试获取当前指令。

disp/i $pc
Run Code Online (Sandbox Code Playgroud)

当我调试没有调试信息的二进制文件时,这总是对我有用。pc人们也可以简单地通过print $pcinfo registers或简单地使用指令来获取电流x。例如:

x/10i address  //displays the first 10 instructions in assembly starting from address
Run Code Online (Sandbox Code Playgroud)

或者

x/10i register //displays the first 10 instructions starting from address stored in register
Run Code Online (Sandbox Code Playgroud)