什么是HEX文件

Intel HEX文件是由一行行符合Intel HEX文件格式的文本所成的ASCII文本文件。在Intel HEX文件中,每一行包含一HEX记录记录对应机器/或常量据的十六编码数成。Intel HEX文件通常用于传输将被存于ROM或者EPROM中的程序和据。大多EPROM程器或模拟器使用Intel HEX文件。
记录格式
Intel HEX
由任意数量的十六记录组成。每个记录包含5域,它们按以下格式排列:
:llaaaatt[dd...]cc
每一组字母对应不同的域,每一字母对应十六编码字。每一域由至少两个十六编码数成,它们构成一,就像以下描述的那样:
:
每个Intel HEX记录都由冒号开头.
ll 度域,代表记录当据字(dd)数量.
aaaa
是地址域,代表记录当数据的起始地址.
tt
是代表HEX记录类型的域,可能是以下中的一个:
00 – 记录
01 – 文件记录
02 – 扩展段地址记录
04 – 扩线性地址记录
dd 是据域,代表一.个记录可以有据字.记录当据字量必度域(ll)中指定的数字相符.
cc
是校验和域,表示这个记录的校.和的算是通过将记录当中所有十六编码数相加,256行以下.

记录
Intel HEX文件由任意量以回车换行符束的记录组.记录观如下:
:10246200464C5549442050524F46494C4500464C33
其中:
10
是这个记录当据字数量.
2462
是数被下到存当中的地址.
00
是记录类(记录)
464C…464C数据.
33
是这个记录的校验和.
线性地址记录(HEX386)
线性地址记录也叫作32位地址记录HEX386记录.记录包含据地址的高16.线性地址记录总是有两个数据字,观如下:
:02000004FFFFFC
其中:
02
是这个记录当据字数量.
0000
是地址域,线性地址记录,这个总是0000.
04
是记录类 04(线性地址记录)
FFFF 是地址的高16.
FC
是这个记录的校,计算方法如下:
01h + NOT(02h + 00h + 00h + 04h + FFh + FFh).
个扩线性地址记录,据域的线性地址被保存,用于Intel HEX文件后的记录.线性地址保持有效,直到被另外一个扩展地址记录所改变.
记录当中的地址域被移位的线性地址记录的地址据相加记录绝对储器地址.
以下的例子演示了这个过..
记录地址域的地址                              2462
线性地址记录数据域                      + FFFF
                                  ------------
绝对器地址                               FFFF2462

展段地址记录(HEX86)
展段地址记录也叫HEX86记录,包括4-19据地址段.展段地址记录总是有两个数据字,观如下:
:020000021200EA
其中:
02
是记录当据字数量.
0000
是地址域.展段地址记录,这个总是0000.
02
是记录类 02(展段地址记录)
1200 是地址段.
EA
是这个记录的校,计算方法如下:
01h + NOT(02h + 00h + 00h + 02h + 12h + 00h).
个扩展段地址记录,据域的展段地址被保存,用于Intel HEX文件后的记录.段地址保持有效,直到被另外一个扩展地址记录所改变.
记录当中的地址域被移位的展段地址记录的地址据相加记录绝对储器地址.
以下的例子演示了这个过..
记录地址域的地址                             2462
展段地址记录数据域                      +  1200
                                 ---------
绝对器地址                    00014462

文件(EOF)记录
Intel HEX文件必以文件(EOF)记录结.这个记录记录类型域的01.EOF记录观总是如下:
:00000001FF
其中:
00
是记录当据字数量.
0000
是数据被下到存中的地址.在文件记录当中地址是有意义被忽略的.0000h是典型的地址.
01
是记录类 01(文件记录)
FF 这个记录的校,计算方法如下:
01h + NOT(00h + 00h + 00h + 01h).
Intel HEX
文件例子:
下面是一完整的Intel HEX文件的例子:
:10001300AC12AD13AE10AF1112002F8E0E8F0F2244
:10000300E50B250DF509E50A350CF5081200132259
:03000000020023D8
:0C002300787FE4F6D8FD7581130200031D
:10002F00EFF88DF0A4FFEDC5F0CEA42EFEEC88F016
:04003F00A42EFE22CB
:00000001FF

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值