当前位置: 首页 > news >正文

STM32 HEX文件和BIN文件格式区别keil中的配置与生成

一、区别

HEX 文件:

  1. 是包括地址信息的,在烧写或下载HEX文件的时候,一般都不需要用户指定地址,因为HEX文件内部的信息已经包括了地址。
  2. HEX文件是用ASCII来表示二进制的数值。例如一般8-BIT的二进制数值0x3F,用ASCII来表示就需要分别表示字符'3'和字符'F',每个字符需要一个BYTE,所以HEX文件需要 > 2倍的空间
  3. 而对HEX文件而言,你看到的文件 大小并不是实际的数据的大小。一是因为HEX文件是用ASCII来表示数据,二是因为HEX文件本身还包括别的附加信息。

BIN文件:

  1. 格式只包括了数据本身,烧写BIN文件的时候,用户是一定需要指定地址信息的。对二进制文件而言,其实没有”格式”。文件只是包括了纯粹的二进制数据
  2. BIN文件而言,你查看文件的大小就可以知道文件包括的数据的实际大小

拓展

elf文件:

  1. gcc 编译出来的是 elf 文件,包含了符号表、汇编、调试信息,可在 Linux 中运行,无法直接在裸机上运行。
  2. 它是可执行文件,必须在有操作系统环境中运行,如果没有操作系统,将 elf 文件烧写进去,包含了符号表、调试信息等,ARM 运行碰到这些指令࿰
http://www.lryc.cn/news/96079.html

相关文章:

  • RabbitMQ优先级队列的使用
  • MAC 推送证书不受信任
  • Gitee创建分支
  • 集群间ssh配置免密登录
  • YOLOV8改进:CVPR 2023 | SCConv: 即插即用的空间和通道重建卷积
  • 人员定位安全管控系统:提升安全管理水平的智能解决方案
  • 数据结构(二)
  • logback 自定义log字段(MDC)推送到logstash(spring boot + logback+ logstash)
  • 1253. 重构 2 行二进制矩阵
  • 安全—01day
  • 【Git】Please commit your changes or stash them before you merge的解决方法
  • 网卡收发包系统结构收发包流程,tcp/ip协议,socket套接字缓冲区,滑动窗口,mtu/mss
  • VUE之axios使用,跨域问题,拦截器添加Token
  • 阿里云函数计算签名认证(iOS实现细节备注)
  • 成都爱尔蔡裕:泡在“糖”里的脆弱血管,暴露在眼睛深处
  • 神经网络小记-过拟合与欠拟合
  • 外贸行业企业邮箱选择:安全好用的邮箱服务
  • flutter开发实战-RepaintBoundary实现Widget截图功能
  • vue中路由懒加载的写法
  • 【Spring MVC】小文件上传的多种方法
  • UE5.1移动端PreintegratedSkinBxDF解析
  • WebSocket心跳机制(笔记大全)
  • Spring Boot日志:SLF4J和Logback
  • [C++] C++入门第二篇 -- 引用 -- 内联函数inline -- auto+for
  • Latex | 将MATLAB图并导入Latex中的方法
  • JSON格式Python,Java,PHP等封装根据关键词搜索获取淘宝商品列表数据API
  • MySQL MHA高可用配置及故障切换
  • PHP8知识详解:PHP8开发工具VS Code的安装
  • Sui Move与标准Move的有哪些区别和根本性创新
  • 构建自己的ChatGPT:从零开始构建个性化语言模型