参考:
http://www.openedv.com/forum.php?mod=viewthread&tid=7621&highlight=bin%2Bhex
1、hex和bin文件格式的区别
Intel HEX文件是记录文本行的ASCII文本文件,在Intel HEX文件中,每一行是一个HEX记录,由十六进制数组成的机器码或者数据常量。Intel HEX文件经常被用于将程序或数据传输存储到ROM、EPROM,大多数编程器和模拟器使用Intel HEX文件。
HEX 文件:是包括地址信息的,而BIN文件格式只包括了数据本身。在烧写或下载HEX文件的时候,一般都不需要用户指定地址,因为HEX文件内部的信息已经包括了地址。而烧写BIN文件的时候,用户是一定需要指定地址信息的。
BIN文件:对二进制文件而言,其实没有”格式”。文件只是包括了纯粹的二进制数据。
Hex文件格式
Bin文件格式(bin文件可以使用Hex Editor Neo文件打开)
可以看到BIN文件的数据和HEX文件的数据的数据段是一一对应的
HEX与BIN文件的大小
HEX 文件是用 ASCII 来表示二进制的数值。
对一个BIN文件而言,文件的大小就是文件包括的数据的实际大小。而对HEX文件而言,看到的文件大小并不是实际的数据的大小:一是因为HEX文件是用ASCII来表示数据,二是因为HEX文件本身还包括别的附加信息。