[技术问答] bin、hex、axf格式有什么区别

[复制链接]
1057|5
 楼主| powerantone 发表于 2025-4-9 16:16 | 显示全部楼层 |阅读模式
HEX, he, bi
bin、hex、axf格式有什么区别
xixi2017 发表于 2025-4-15 16:19 | 显示全部楼层
我一般都是用HEX。
xixi2017 发表于 2025-4-15 16:21 | 显示全部楼层
BIN 文件(Binary File)
定义:纯二进制文件,直接包含 机器码 和 数据,无地址或元数据。

特点:

无地址信息:烧录时需要指定起始地址(如 Flash 的 0x08000000)。

体积最小:仅包含有效数据,无冗余信息。

通用性强:适用于所有微控制器(MCU)和处理器。
xixi2017 发表于 2025-4-15 16:21 | 显示全部楼层
HEX 文件(Intel HEX File)
定义:一种 文本格式 的十六进制文件,包含 地址、数据 和 校验信息。

特点:

地址信息:每条记录包含起始地址,支持分段数据。

可读性:以 ASCII 文本存储,可直接查看内容。

体积较大:因包含地址和校验,文件比 BIN 大。

自描述性:无需额外指定烧录地址。
xixi2017 发表于 2025-4-15 16:21 | 显示全部楼层
AXF 文件(ARM Executable File)
定义:ARM 架构的 可执行文件格式,基于 ELF(Executable and Linkable Format),包含调试信息。

特点:

完整元数据:包含符号表、调试信息(如变量名、函数地址)、代码段和数据段。

支持重定位:可用于动态链接和加载。

体积最大:因包含调试信息,文件远大于 BIN 或 HEX。

调试友好:支持源码级调试(如断点、单步执行)。

生成方式:

由 ARM 工具链(如 Keil、IAR、GCC)直接编译生成。

应用场景:

开发阶段的调试(通过 JTAG/SWD 连接调试器)。

分析程序内存布局(如查看代码段、数据段地址)。
少女诗篇 发表于 2025-8-28 12:09 | 显示全部楼层
bin:纯二进制文件,仅含程序指令和数据,无地址等额外信息,需指定加载地址才能运行,常用于单片机裸机编程;2. hex:Intel 格式文本文件,含地址、数据、校验码,可分段加载,适合串口烧录,易传输;3. axf:ARM 架构专用,含调试信息(如变量、函数地址),支持在线调试,体积大,烧录时需提取其中 bin 数据,多用于开发阶段。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

679

主题

4005

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部