1. 首页
  2. 电子数码
  3. hex文件用什么软件打开(用C#代码读取HEX文件中的数据方法)

hex文件用什么软件打开(用C#代码读取HEX文件中的数据方法)

简介:关于hex文件用什么软件打开(用C#代码读取HEX文件中的数据方法)的相关疑问,相信很多朋友对此并不是非常清楚,为了帮助大家了解相关知识要点,小编为大家整理出如下讲解内容,希望下面的内容对大家有帮助!
如果有更好的建议或者想看更多关于电子数码技术大全及相关资讯,可以多多关注茶馆百科网。

最近我需要提取HEX数据并保存为BIN文件。今天我将分享我阅读HEX文件的方法。

HEX文件格式是一种可以写入嵌入式芯片的文件格式。它通常是用C或汇编语言编译的,可以通过任何文本编辑软件查看。我通常使用notepad++。

整个文件以动作为单位,每行以冒号开始,内容全部以十六进制表示

这里有一个例子:

:20008000DAF8220261E19010DCEFF0E49005A6F09010E8F09010E3F0E5665407FFBF070464

前20为数据长度,表示下面的数据为32字节。

00和80后面的地址表示这一行数据在芯片中的位置。

下面的00表示数据类型,可分为以下几种:

'00'有效数据

“01”文件结束

'02'分机段地址记录

'03'开始段地址记录

'04'扩展线性地址记录

'05'开始线性地址记录

然后00 DAF8220261E19010DCEFF0E49005A6F09010E8F09010E3F0E5665407FFBF0704 32字节的数据后面

最后64是校验码。

在我的许多使用中,我只使用00,04,01作为数据类型。下面是一个代码示例(因为c#是自学的,非常不专业),支持最多512KB的文件读取,并且从0开始:

c#读取一个示例HEX文件

byte[] frimwareArray=new byte[512*1024];

for (int i=0; i frimwareArray.Length; i++)

StreamReader strFile=new StreamReader(hexfile);

Int32 hexCounter=0;

Int32 lineOffset=0;

string hexLine=string.Empty;

Int32 hexLineAddress=0;

Int32 hexLineLen=0;

hexMaxAddress=0;

while (strFile.EndOfStream !=true)

if (hexMaxAddress hexCounter) //更新最大十六进制文件地址

}

else if (hexLine。Substring(7,2)=='04')//扩展线性地址记录

else if (hexLine。Substring(7,2)=='01')//文件结束

}

else

本文主要介绍了关于hex文件用什么软件打开(用C#代码读取HEX文件中的数据方法)的相关养殖或种植技术,电子数码栏目还介绍了该行业生产经营方式及经营管理,关注电子数码发展动向,注重系统性、科学性、实用性和先进性,内容全面新颖、重点突出、通俗易懂,全面给您讲解电子数码技术怎么管理的要点,是您电子数码致富的点金石。
以上文章来自互联网,不代表本人立场,如需删除,请注明该网址:http://seotea.com/article/1439188.html