如何将IAR IDE反汇编窗口内容保存到文件中?

ysa*_*sap 2 c embedded disassembly iar

使用IAR IDE从C源构建ARM可执行文件,我可以在相关窗口中看到反汇编,包括标签,地址,操作码和指令.

我试图将一系列地址的内容转储到文本文件,但无法找到方法.窗口文本不可选,因此我无法使用复制/粘贴.没有相关的菜单启用此功能.

作为替代方案,我可以生成列表和汇编文件,但这些似乎仅限于我的代码,并且不包含我感兴趣的CRT代码或任何ROM部分.

转储选定地址范围的任何方式?

rjp*_*rjp 5

您想使用ielfdumparm位于arm/bin下的Workbench目录中.这是该工具的帮助.

Usage:          IElfDump input_file [output_file]

Available command line options:
--all           Dump all sections
--code          Dump only code sections
--no_header     Do not produce a list header
--no_rel_sections
                Do not output associated .rel sections
--no_strtab     Do not include strtab sections
--output file
-o file         Name of text file to create
--raw           Use raw text format
--section #|name[,...]
-s #|name[,...] Dump only section(s) with given numbers/names
--source        Include source in disassembled code in executables
--use_full_std_template_names
                Don't use short names for standard C++ templates
-a              All sections, except strtab sections
-f file         Read command line options from file
Run Code Online (Sandbox Code Playgroud)

为了获得类似于调试视图的输出,我建议--code避免转储您的数据空间,并--source让它将原始C嵌入到程序集中.

您可以指定节,但看起来不像您可以指定地址范围.您可以将其与某些其他ELF工具配对以仅提取特定的地址范围,然后在其上运行此工具.或者,这会按地址顺序转储,因此您可以转储整个ELF文件,然后查看事后的所需地址范围.