制作gdb显示汇编指令而不是C

可能重复:
切换到gdb中的程序集

我正在调试gdb中的一些代码。 当我运行ni (用于下一条指令 )命令时,它显示C代码。 显示执行的汇编指令对我来说更有意义。

 (gdb) ni 0x0804845a 28 tmp = *lpp; (gdb) ni 0x0804845c 28 tmp = *lpp; (gdb) ni 0x0804846a 29 **lpp = (unsigned long) &buf; (gdb) ni 0x0804846c 29 **lpp = (unsigned long) &buf; 

有没有办法让gdb显示汇编代码,而不是每次都调用disassm

编辑:我知道layout asm命令,它在readline窗口中显示代码。 我想在gdb命令行上看到反汇编,而不是在gdb窗口中。

当您通过ni步骤时,显示下面的一些assembly说明通常非常有用。

 (gdb) display/4i $pc 

每次GDB停止时都会显示接下来的4条指令。

您是否尝试使用TUI ASM布局?

它相当方便。

 (gdb) layout asm