我正在调试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窗口中。
答案 0 :(得分:11)
当你走过ni
时,显示下面的一些装配说明通常非常有用。
(gdb) display/4i $pc
每次GDB停止时,将显示接下来的4条指令。
答案 1 :(得分:6)
您是否尝试使用TUI ASM布局?
这很方便。
(gdb) layout asm