0% encontró este documento útil (0 votos)
92 vistas2 páginas

Intel Hex Es1

Intel HEX es un formato de archivo para la programación de microcontroladores que data de los años 70. Consiste en líneas de texto con valores hexadecimales que codifican los datos y su dirección de memoria. Cada línea incluye un código de inicio, longitud del registro, dirección, tipo de registro, datos y checksum. Existen varios subformatos como I8HEX e I16HEX para 8 y 16 bits y I32HEX para 32 bits.

Cargado por

RG JKari
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
92 vistas2 páginas

Intel Hex Es1

Intel HEX es un formato de archivo para la programación de microcontroladores que data de los años 70. Consiste en líneas de texto con valores hexadecimales que codifican los datos y su dirección de memoria. Cada línea incluye un código de inicio, longitud del registro, dirección, tipo de registro, datos y checksum. Existen varios subformatos como I8HEX e I16HEX para 8 y 16 bits y I32HEX para 32 bits.

Cargado por

RG JKari
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Intel HEX - Wikipedia, la enciclopedia libre [Link]

org/wiki/Intel_HEX

Intel HEX
De Wikipedia, la enciclopedia libre

Intel HEX es un formato de archivo para la programación de microcontroladores, EPROMs y otros circuitos
integrados. Datando de los años 70[cita requerida], está entre los formatos más viejos con esta finalidad.

Consiste en un archivo de texto cuyas líneas contienen valores hexadecimales que codifican los datos, y su
offset o dirección de memoria.

Los distintos tipos de Intel Hex (8-bit, 16-bit y 32-bit) se diferencian en su endianness.

Cada línea consta de los siguientes elementos:

1. Código de inicio, un símbolo ':'


2. Longitud del registro, dos dígitos hexadecimales con la cantidad de bytes del campo de datos.
Usualmente son 16 o 32 bytes.
3. Dirección, cuatro dígitos hexadecimales en big endian, con la dirección de inicio de los datos. Para
direcciones mayores a 0xFFFF se emplean otros tipos de registro.
4. Tipo de registro, dos dígitos hexadecimales, de 00 a 05, definen el tipo del campo de datos
5. Datos, duplas de dígitos hexadecimales que contienen los datos
6. Checksum, dos dígitos hexadecimales con el complemento a dos de la suma de todos los campos
anteriores, salvo el ':'.

Hay seis tipos de registros:

00, Datos, contiene una dirección de 16 bits y los datos correspondientes


01, Fin de archivo, no contiene datos y debe estar al final del archivo.
02, Dirección Extendida de Segmento, dirección base del segmento, para acceder a direcciones con
más de 16 bits. Este valor se desplaza 4 bits a la izquierda (= multiplicar con 16) y se suma a la
dirección proporcionada por los registros de datos. Su campo de longitud debe valer 02 y el de
dirección 0000.
03, Dirección de Comienzo de Segmento, especifica los valores iniciales de los registros CS:IP, para
procesadores 80x86. El campo de dirección es 0000, longitud 04 y los datos contienen dos bytes para
el segmento de código y otros dos para el instruction pointer
04, Dirección Lineal Extendida, permite dirigirse a 32 bits de memoria al contener los 16 bits
superiores de la dirección. Su campo de dirección vale 0000 y el de longitud 02.
05, Comienzo de Dirección Lineal. Contiene 4 bytes que se cargan en el registro EIP de los
procesadores 80386 y superiores. Su campo de dirección vale 0000 y el de longitud 04.

Existen varios sub-formatos:

I8HEX o INTEL 8, de 8 bits


I16HEX o INTEL 16, de 16 bits. Emplea registros 02 y 03, y la endianness de los datos puede variar.
I32HEX o INTEL 32, de 32 bits. Agrega los registros 04 y 05.

Los procesadores Motorola utilizan un formato similar, denominado SREC.

Ejemplo

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

1 of 2 09/01/2011 12:00 PM
Intel HEX - Wikipedia, la enciclopedia libre [Link]

:00000001FF

Código de inicio
Longitud
Dirección
Tipo de registro
Datos
Checksum

Enlaces externos
Intel Hexadecimal Object File Format Specification 1988 (PDF) ([Link]
/[Link]?pid=4&id=25)
Descripción del formato en PIC List ([Link]
Descripción del formato ([Link]
SRecord ([Link] , Herramienta GPL multi-plataforma para manipular archivos
para EPROM
Binex ([Link] , conversor entre Intel HEX y binario.

Obtenido de «[Link]
Categoría: Sistemas embebidos

Esta página fue modificada por última vez el 1 sep 2011, a las 14:59.
El texto está disponible bajo la Licencia Creative Commons Atribución Compartir Igual 3.0; podrían ser
aplicables cláusulas adicionales. Lee los términos de uso para más información.

2 of 2 09/01/2011 12:00 PM

También podría gustarte