Вы можете запустить GDB в Текстовый интерфейс пользователя (TUI) режим:
gdb -tui <your-binary>
(gdb) b main
(gdb) r
(gdb) layout split
Команда layout split
делит окно на две части - одна из них отображает исходный код, а другая - соответствующую сборку.
Несколько других трюков:
- набор disassembly-flavor intel - если вы предпочитаете нотацию intel
- set print asm-demangle - разделение имен C ++ в представлении сборки
- ni - следующая инструкция
- si - пошаговая инструкция
Если вы не хотите использовать режим TUI (например, вашему терминалу это не нравится), вы всегда можете сделать:
x /12i $pc
, что означает печать 12 инструкций с адреса счетчика текущей программы - это также работает с указанными выше приемами (разбор, пошаговые инструкции и т. Д.).
Трюк "x / 12i $ pc" работает как в gdb, так и в cgdb, тогда как "разбивка по макету" работает только в gdb.
Наслаждайтесь:)