Formato de arquivo hexadecimal

Formato de archivo hexadecimal

Intel hex (ihex) generalmente conocido como archivo hexadecimal , es un formato utilizado para almacenar código en lenguaje de máquina en formato hexadecimal. Es un formato ampliamente utilizado para almacenar programas que se transferirán a microcontroladores, ROM y EEPROM. Los compiladores convierten programas escritos en ensamblador, C, etc. en los archivos hexadecimales correspondientes, que se descargan en los controladores mediante grabadoras/programadores. Este artículo explora los detalles del formato de archivo hexadecimal .
El microcontrolador entiende el lenguaje de máquina que consta de ceros y unos. Es difícil y prácticamente imposible para los humanos escribir código en ceros y unos. Por tanto, utilizamos algunos lenguajes de alto nivel como C, C++, Java, etc. Y posteriormente se utiliza un compilador para convertir estos códigos a lenguaje de máquina que se almacenan en un formato de archivo hexadecimal . Un archivo hexadecimal es un archivo de texto con extensión .hex.
Imagem de um arquivo hexadecimal mostrado como texto

Figura 1: Imagen de un archivo hexadecimal mostrado como texto

La imagen de arriba muestra un archivo hexadecimal típico cuando se abre con el Bloc de notas o cualquier otro editor de texto. Cada línea sigue una estructura específica que se explica a continuación.
: CC AAAA TT XXXXX……XX SS
Ejemplo:

: 10 0000 00 0C942A000C9434000C9434000C943400AA

1. Cada línea en un archivo hexadecimal siempre comienza con dos puntos ( : )
dos. Los primeros dos dígitos CC (recuento de caracteres) representan el número total de bytes de datos en esa línea. En este ejemplo, 10 (hexadecimal) son los dos primeros dígitos, lo que significa que hay 16 bytes (en decimal) de datos en la línea.
3. Los siguientes cuatro dígitos representan la dirección de memoria inicial donde se deben volcar los datos almacenados en la fila. 4. Después de la dirección, los dos dígitos siguientes representan si esta es la última línea del código o no. TT=0 significa que el código no está completo y hay más líneas después de esta línea y TT=1 significa que esta es la última línea del código.
5. XXXX…..XX son los bytes de datos que se deben volcar en la memoria. El número de bytes de datos en una línea específica es igual al número indicado por los dígitos del recuento de caracteres (CC).
6. SS es el byte de suma de comprobación para esa línea.
El archivo hexadecimal es un archivo de texto, por lo que puede cambiar fácilmente el contenido de un archivo hexadecimal. La línea dañada se puede identificar mediante el byte de suma de comprobación (SS).

Regresar al blog

Deja un comentario

Ten en cuenta que los comentarios deben aprobarse antes de que se publiquen.