前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >BIN、HEX、AXF、ELF文件格式有什么区别

BIN、HEX、AXF、ELF文件格式有什么区别

作者头像
单片机点灯小能手
发布2021-09-27 17:37:15
发布2021-09-27 17:37:15
2.2K0
举报

数据量比较

从存储数据的信息量上看:ELF>AXF>HEX>BIN,所以这也就确定了只能将大信息量的文件格式向小信息量的文件格式转换,如只能将HEX文件转换为BIN文件,当然如果指定了下载地址,也可以将BIN转换为HEX文件。

BIN文件

bin文件是纯粹的机器码,没有地址信息,不能使用记事本直接打开,要使用bin文件阅读器才能打开,如果使用bin文件烧录程序时,需要指定下载地址。一些下载器只能使用BIN文件进行下载,在进行OTA远程升级时必须使用bin文件。

HEX文件

一般是指Intel标准的hex文件,可以使用记事本直接打开,是十六进制数据,包含了基地址、偏移量、校验和、文件开始和结束标志等信息,与bin文件最大的不同就是包含了下载地址。由于hex文件是十六进制数据,而bin文件是二进制数据,如十六进制0xFF,用二进制表示为1111 1111,所以HEX文件要比bin文件大得多。与axf文件相比,不含调试信息,不能用于调试。

AXF文件

包含了调试信息,如进行在Keil环境使用Debug功能时,就是先将axf文件下载到芯片内,才能进行调试。如使用J-Link的J-Scope功能时,必须使用axf文件。

ELF文件

是由GCC编译器生成的。elf文件可以直接转换为hex和bin,但hex和bin

例如Linux系统下使用gcc指令gcc -o test test.c生成的elf文件,可以通过./test直接执行。

总结:

  1. bin文件可以由hex和axf文件转换而来。
  2. axf文件包含了调试信息。
  3. hex文件包含了烧录地址,而bin文件不含,需要指定地址。
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-09-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 电子电路开发学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档