前段时间需要用到BIN文件 随便把HEX文件也了解了一下 参考查阅了一些网上资料,如有雷同除了巧合还有借鉴参考。。。
正题:HEX文件格式如下
<0x3a>[数据长度1Byte][数据地址2Byte][数据类型1Byte][数据nByte][校验1Byte]<0x0d><0x0a>
分析下面具体例子
:020000040800F2
: 这个就是<0x3a>,也就是冒号
02 这个就是说明这行数据区的数据内容长度,也就是数据内容为两个字节在后面的<0800>那里
0000 这个是数据要送往的地址 要看具体数据类型
04 解释整行数据的数据类型,主要有这几种
'00' Data Record 数据
'01' End of File Record 文件结束标志
'02' Extended Segment Address Record 延伸段地址
'03' Start Segment Address Record 起始延伸地址
'04' Extended Linear Address Record 扩展线性地址 也就是基地址
'05' Start Linear Address Record 程序起始地址也就是程序入口地址(main)
0800 这个就是基地址(0x0800<<16)
F2 是数据校验和
<0x0d><0x0a>是换行符号
接下来分析这行数据
:1000000078050020450100084D0100084F01000857
10 就是数据区的数据长度 一共16个数据 78 05 00 20 45 01 00 08 4D 01 00 08 4F 01 00 08
0000 数据地址
00 数据类型说明