fbpx
维基百科

Intel十六进制格式

Intel十六进制格式是一种由Intel开发,以ASCII文本形式传达二进制信息的文件格式。 通常被用于对微控制器EPROM和其他类型的可编程逻辑器件和硬件仿真器进行编程。

Intel hex
扩展名.hex,[1] .h86,[2][3] .hxl,[4] .hxh,[4] .obl,[4] .obh,[4] .mcs,[5] .ihex, .ihe, .ihx, .a43, .a90, .p00[6] to .pff[6]

在典型的应用程序中,编译器汇编器程序源代码(例如C语言或汇编语言)转换为机器代码并将其输出到HEX文件中。也可以將它用作保存流数据容器格式。 用于生成文件的通用文件扩展名是 .HEX或 . H86。然后程序通过读取HEX文件将机器代码写入PROM或传输到目标系统以进行加载和执行。

历史 编辑

Intel十六进制格式最初是在1973年为Intel的Intellec 微型计算机开发系统(MDS) 设计的,以便从纸带加载和执行程序。它还用于向英特尔指定用于 ROM 生产的内存内容从 1975 年开始,MCS 系列 II ISIS-II系统使用该格式,使用文件扩展名 HEX。 许多PROMEPROM编程设备都接受这种格式。

格式 编辑

包含由换行符回车符或两者分隔的ASCII文本行。每个文本行都包含对多个二进制数进行编码的十六进制字符。二进制数可以表示数据、内存地址或其他值,具体取决于它们在行中的位置以及行的类型和长度。每个文本行称为一个记录

记录结构 编辑

一条记录(文本行)由六个字段(部分)组成,从左到右依次出现:

  1. 起始码,一个字符,一个 ASCII 冒号 ' : '。记录中该符号前面的所有字符都应被忽略。 事实上,该规范的早期版本甚至要求在第一个记录之前和最后一个记录之后至少有 25 个NUL字符。 然而,由于这是规范中鲜为人知的部分,并非所有编写的软件都能正确处理这一点。它允许将其他相关信息存储在同一文件(甚至同一行)中, 各种软件开发实用程序用来存储符号表或附加注释的工具,和第三方扩展使用其他字符作为起始码,例如Keil的数字“ 0 ”, Mostek的 ' $ ', 或 ' ! '、' @ '、' # '、' \ '、' & '和' ; ' 而按照惯例,' // ' 通常用于注释。这些扩展都不能包含任何 ':' 字符。
  2. 字节数量 ,由两个十六进制数字(一个十六进制数字对)组成,表示数据字段中的字节数(十六进制数字对)。最大字节数为255(0xFF)。8(0x08), 16(0x10)和32(0x20)是常用的字节数。因为并非所有软件都能处理大于16的计数。
  3. 地址,由四个十六进制数字组成,代表数据的 16 位起始内存地址偏移量。数据的物理地址是通过将此偏移量添加到先前建立的基地址来计算的,因此允许内存寻址超出 16 位地址的 64 KB 限制。基地址,默认为零,可以被各种类型的记录改变。基地址和地址偏移量始终表示为大端值。
  4. 记录类型(见下面的记录类型),由两个十六进制数字,00至 05 、定义数据字段的含义。
  5. 数据,一个n字节数据的序列,由2n个十六进制数字表示。一些记录省略了这个字段( n等于 0)。数据字节的含义和解释取决于应用程序。 (4 位数据必须存储在字节的下半部分或上半部分,也就是说,一个字节只包含一个可寻址数据项。 )
  6. 校验和,由两个十六进制数字组成,可用于验证记录没有错误的计算值。

参考资料 编辑

  1. ^ 引用错误:没有为名为Arnold_2020_AS的参考文献提供内容
  2. ^ 引用错误:没有为名为DRI_1981_CPM86-SG的参考文献提供内容
  3. ^ 引用错误:没有为名为DRI_1983_CPM86-PG的参考文献提供内容
  4. ^ 4.0 4.1 4.2 4.3 引用错误:没有为名为IDA_2006_Hexforms的参考文献提供内容
  5. ^ 引用错误:没有为名为Xilinx_2010_MCS的参考文献提供内容
  6. ^ 6.0 6.1 引用错误:没有为名为Roche_2000的参考文献提供内容

intel十六进制格式, 是一种由intel开发, 以ascii文本形式传达二进制信息的文件格式, 通常被用于对微控制器, eprom和其他类型的可编程逻辑器件和硬件仿真器进行编程, intel, hex扩展名, code, ihex, code, 在典型的应用程序中, 编译器或汇编器将程序的源代码, 例如c语言或汇编语言, 转换为机器代码并将其输出到hex文件中, 也可以將它用作保存流数据包的容器格式, 用于生成文件的通用文件扩展名是, hex或, 然后程序通过读取hex文件将机器代码写入prom或传输到目标系统. Intel十六进制格式是一种由Intel开发 以ASCII文本形式传达二进制信息的文件格式 通常被用于对微控制器 EPROM和其他类型的可编程逻辑器件和硬件仿真器进行编程 Intel hex扩展名 code hex 1 h86 2 3 hxl 4 hxh 4 obl 4 obh 4 mcs 5 ihex ihe ihx a43 a90 p00 6 to pff 6 code 在典型的应用程序中 编译器或汇编器将程序的源代码 例如C语言或汇编语言 转换为机器代码并将其输出到HEX文件中 也可以將它用作保存流数据包的容器格式 用于生成文件的通用文件扩展名是 HEX或 H86 然后程序通过读取HEX文件将机器代码写入PROM或传输到目标系统以进行加载和执行 目录 1 历史 2 格式 2 1 记录结构 3 参考资料历史 编辑Intel十六进制格式最初是在1973年为Intel的Intellec 微型计算机开发系统 MDS 设计的 以便从纸带加载和执行程序 它还用于向英特尔指定用于 ROM 生产的内存内容从 1975 年开始 MCS 系列 II ISIS II系统使用该格式 使用文件扩展名 HEX 许多PROM和EPROM编程设备都接受这种格式 格式 编辑包含由换行符或回车符或两者分隔的ASCII文本行 每个文本行都包含对多个二进制数进行编码的十六进制字符 二进制数可以表示数据 内存地址或其他值 具体取决于它们在行中的位置以及行的类型和长度 每个文本行称为一个记录 记录结构 编辑 一条记录 文本行 由六个字段 部分 组成 从左到右依次出现 起始码 一个字符 一个 ASCII 冒号 记录中该符号前面的所有字符都应被忽略 事实上 该规范的早期版本甚至要求在第一个记录之前和最后一个记录之后至少有 25 个NUL字符 然而 由于这是规范中鲜为人知的部分 并非所有编写的软件都能正确处理这一点 它允许将其他相关信息存储在同一文件 甚至同一行 中 各种软件开发实用程序用来存储符号表或附加注释的工具 和第三方扩展使用其他字符作为起始码 例如Keil的数字 0 Mostek的 或 amp 和 而按照惯例 通常用于注释 这些扩展都不能包含任何 字符 字节数量 由两个十六进制数字 一个十六进制数字对 组成 表示数据字段中的字节数 十六进制数字对 最大字节数为255 0xFF 8 0x08 16 0x10 和32 0x20 是常用的字节数 因为并非所有软件都能处理大于16的计数 地址 由四个十六进制数字组成 代表数据的 16 位起始内存地址偏移量 数据的物理地址是通过将此偏移量添加到先前建立的基地址来计算的 因此允许内存寻址超出 16 位地址的 64 KB 限制 基地址 默认为零 可以被各种类型的记录改变 基地址和地址偏移量始终表示为大端值 记录类型 见下面的记录类型 由两个十六进制数字 00至 05 定义数据字段的含义 数据 一个n字节数据的序列 由2n个十六进制数字表示 一些记录省略了这个字段 n等于 0 数据字节的含义和解释取决于应用程序 4 位数据必须存储在字节的下半部分或上半部分 也就是说 一个字节只包含一个可寻址数据项 校验和 由两个十六进制数字组成 可用于验证记录没有错误的计算值 参考资料 编辑 引用错误 没有为名为Arnold 2020 AS的参考文献提供内容 引用错误 没有为名为DRI 1981 CPM86 SG的参考文献提供内容 引用错误 没有为名为DRI 1983 CPM86 PG的参考文献提供内容 4 0 4 1 4 2 4 3 引用错误 没有为名为IDA 2006 Hexforms的参考文献提供内容 引用错误 没有为名为Xilinx 2010 MCS的参考文献提供内容 6 0 6 1 引用错误 没有为名为Roche 2000的参考文献提供内容 取自 https zh wikipedia org w index php title Intel十六进制格式 amp oldid 70539673, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。