在GDB环境下可以通过如下设置让汇编语言按照inter格式或者是AT&T的格式显示
set disassembly-flavor intel 转换为intel格式的汇编
set disassembly-flavor att 转换为AT&T格式的汇编
也可以把这个配置到文件里面:
sudo echo “set disassembly-flavor intel”> ~/.gdbinit
可以使用 info line 命令来映射一个源码行到程序地址,然后使用命令disassemble/disass显示一个地址范围的机器指令
info line main.main
Line 49 of "/datainfo/work/golang/gotest/src/main.go" starts at address 0x4726e0 <main.main> and ends at 0x4726ef <main.main+15>.
通过disassemble add1 add2 来显示add1到2之间的汇编代码
disass 0x4726e0,0x4726ef
Dump of assembler code from 0x4726e0 to 0x4726ef:

本文介绍了如何在GDB环境中切换汇编语言显示格式,包括使用`set disassembly-flavor`命令在Intel和AT&T格式间转换,并将其配置到`.gdbinit`文件中。此外,还讲解了利用`info line`和`disassemble`命令来定位源码行对应的机器指令,以及显示特定地址或函数范围的汇编代码。
最低0.47元/天 解锁文章
2345

被折叠的 条评论
为什么被折叠?



