使gdb显示汇编指令而不是C

ibl*_*lue 6 c debugging assembly gdb

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

我正在调试gdb中的一些代码.当我运行ni(for next instruction)命令时,它显示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;
Run Code Online (Sandbox Code Playgroud)

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

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

Emp*_*ian 11

当您单步执行时ni,显示下面的一些装配说明通常非常有用.

(gdb) display/4i $pc
Run Code Online (Sandbox Code Playgroud)

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


qdo*_*dot 6

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

它相当方便.

(gdb) layout asm
Run Code Online (Sandbox Code Playgroud)