计算机毕业设计springboot大学生短期兼职信息系统 基于SpringBoot的校园灵活用工撮合平台 采用SpringBoot框架的高校学生零工信息服务中心
2026/1/19 21:15:52
GDB中disassemble命令用于反汇编机器指令,以下是最常用的几种用法:
(gdb)disassemble# 或简写(gdb)disas这会反汇编当前正在执行的函数。
(gdb)disassemble0x0c10cbf0从地址0x0c10cbf0开始反汇编。
(gdb)disassemble/m0x0c10cbf0显示源代码行和对应的汇编指令,例如:
Dump of assembler codeforfunction main:5intx=10;0x00000000004004ed<+0>:push%rbp0x00000000004004ee<+1>:mov%rsp,%rbp0x00000000004004f1<+4>:movl $0xa,-0x4(%rbp)6inty=20;0x00000000004004f8<+11>:movl $0x14,-0x8(%rbp)(gdb)disassemble/r0x0c10cbf0显示:
0x00000000004004ed<main+0>:55push %rbp 0x00000000004004ee<main+1>:4889e5 mov %rsp,%rbp 0x00000000004004f1<main+4>: c745fc 0a 00 00 00 movl$0xa,-0x4(%rbp)(gdb)disassemble/s0x0c10cbf0(gdb)disassemble0x0c10cbf0,0x0c10cc00反汇编从0x0c10cbf0到0x0c10cc00的代码。
(gdb)disassemble0x0c10cbf0,+20从0x0c10cbf0开始,反汇编20条指令。
(gdb)disassemble/m/r main显示main函数的源代码、机器码和汇编指令。
# 1. 查看当前函数的汇编代码(gdb)disas# 2. 查看main函数的汇编,带源代码(gdb)disas /m main# 3. 查看函数前10条指令(gdb)disas main, +10# 4. 查看指定地址周围的代码(PC为程序计数器)(gdb)disas$pc-20,$pc+20# 5. 查看系统调用(gdb)disas /r syscall_entry# AT&T风格(默认)(gdb)setdisassembly-flavor att# Intel风格(gdb)setdisassembly-flavor intel(gdb)disas /m main# 现在显示Intel风格(gdb)setlogging on(gdb)disas /m main(gdb)setlogging off-g选项)info functions可以查看可用函数列表x/i命令也可用于反汇编,但只显示单条指令这些用法可以帮助你在调试时更好地理解程序的执行流程和机器码。