HEX (Intel)

HEX (Intel) es un formato de archivo que se utiliza para estructurar información destinada a microcontroladores , EEPROM u otros componentes programables. Es uno de los formatos más antiguos para este uso, utilizándose desde la década de 1970.

Formato

El formato es un archivo de texto , y cada línea contiene valores hexadecimales con una dirección absoluta o una dirección de desplazamiento.

El formato se puede describir como un conjunto de líneas de texto. Cada línea respeta la siguiente sintaxis:

:BBAAAATTHHHHHH.....HHHHCC

o :

  1. BB es el número de bytes de datos en la fila (en hexadecimal)
  2. AAAA es la dirección absoluta (o relativa) del inicio de la línea
  3. TT es el campo que especifica el tipo
  4. HH ... HHHH es el campo de datos
  5. CC es el byte de suma de comprobación. Es el complemento a dos de la suma de los valores binarios de los bytes de todos los demás campos. (Los cálculos se realizan en 8 bits, ignorando el acarreo).

Hay seis valores posibles para el campo de tipo (TT):

Hay varios subformatos:

Para comprobar la validez de los datos, todo lo que tiene que hacer es sumar todos los bytes representados, desde los dos puntos hasta el final de la línea (suma de comprobación incluida: BB + AA + AA + TT + HH + ... + CC) : el resultado esperado es 0 (módulo 256).

Ejemplo

:10010000214601360121470136007EFE09D2190140 :100110002146017EB7C20001FF5F16002148011988 :10012000194E79234623965778239EDA3F01B2CAA7 :100130003F0156702B5E712B722B732146013421C7 :00000001FF

Ver también