10. 编译工具反汇编器
10.1 命令行语法
KF32 工具链的 ELF 反汇编工具 kf32objdump支持解析标准格式的 ELF 目标文件,并将其机器指令转换为可读的汇编语言,同时可展示文件结构与符号信息。其命令行语法:
kf32objdump <option(s)> <file(s)>
其中
option(s)
操作与修饰符,指定执行什么操作以及如何执行。多个选项可以组合使用。
file(s)
指定待反汇编的目标文件文件名。
10.2 选项说明与示例
10.2.1 选项说明
-d反汇编文件的代码段,输出汇编指令列表。-D反汇编文件中的所有段,包括数据段等非代码段的内容。-S反汇编时尽可能穿插显示源代码。提供更直观的源码级调试视图。-l在输出中包含源代码的文件名和行号信息。-z即使某个段或节区只包含零数据,也显示其内容。--section=<name>仅反汇编指定的节区(section),如 .text(代码段)、.data(已初始化数据段)、.bss(未初始化数据段)。可多次使用以指定多个节区。-h显示各段的段头信息,包括大小、VMA、LMA 与属性。-t显示符号表。-r显示重定位记录。-s以十六进制显示各段的内容。--start-address=<address>/--stop-address=<address>限定反汇编与信息打印的地址范围。
10.2.2 反汇编示例
反汇编可执行文件的代码段:
kf32objdump -d TestElf1.elf > TestElf1.lst
反汇编文件中所有段,并显示符号表:
kf32objdump -D -t TestElf1.elf > TestElf1_all.lst