Saltar al contenido

Analizador Intel HEX

Valide los registros Intel HEX y extraiga sus datos como un volcado hex.

Entrada

Analizador Intel HEX

Pegue un archivo Intel HEX (los registros de estilo ":10010000214601360121470136007EFE09D2190140" que los compiladores y programadores producen para microcontroladores, EEPROM y otros objetivos integrados) y esta herramienta verifica la estructura y la suma de verificación de cada registro, luego extrae los bytes de datos como un volcado hex. Está diseñado para trabajos de firmware: verificar un archivo .hex de un proveedor antes de actualizarlo, verificar una compilación en busca de un registro dañado después de una combinación incorrecta o leer bytes sin formato sin abrir un editor hex.

Cada línea se analiza como un registro: un recuento de bytes, una dirección de 16 bits, un tipo de registro (datos, fin de archivo o uno de los registros de inicio/dirección lineal/segmento), los bytes de datos y una suma de comprobación. Un registro es válido cuando su recuento de bytes coincide con los datos presentes, su tipo de registro se reconoce con la longitud adecuada para su tipo y la suma de cada byte en el registro resulta cero módulo 256: la regla estándar Intel HEX. Los bytes de datos de cada registro de datos válido se concatenan en el orden de los archivos y se representan como un volcado hex clásico: una columna de desplazamiento, dieciséis bytes por fila y un margen ASCII imprimible a la derecha.

Debajo del volcado, un informe de validación enumera todos los registros que fallaron, por número de línea, etiquetados como una estructura con formato incorrecto (una línea que no está bien formada hex, tiene un recuento de bytes que no coincide con su longitud o un tipo de registro no reconocido) o una suma de verificación incorrecta. Una línea discontinua no detiene el resto del archivo: todos los demás registros aún se verifican y, cuando son válidos, aún contribuyen con sus bytes. Active "Mayúsculas hex" para representar el volcado con A–F en lugar de a–f, coincidiendo con lo que espera su programador o desensamblador.

Todo se ejecuta en su navegador. Las imágenes de firmware y el contenido de EEPROM suelen ser propietarios, por lo que no se carga nada pegado aquí; el archivo nunca sale de su dispositivo.

Preguntas frecuentes

¿Qué se considera una suma de verificación incorrecta versus un registro con formato incorrecto?
Un registro con formato incorrecto es aquel cuya estructura no funciona: no comienza con ":", no es hex válido, su recuento de bytes no coincide con su longitud real o no se reconoce su tipo de registro. Un registro con una estructura válida pero una suma de verificación que no suma cero mod 256 se informa por separado como una suma de verificación incorrecta; sus datos aún se extraen, ya que los bytes en sí están bien formados.
¿Qué tipos de registros entiende?
Datos (00) y fin de archivo (01), más los registros de dirección de segmento extendido, dirección de inicio de segmento, dirección lineal extendida y dirección lineal inicial (02–05). Sólo los registros de datos aportan bytes a la salida; los demás están validados en cuanto a estructura pero no contienen datos de salida.
¿Cómo se distribuyen los bytes de datos en la salida?
Se concatenan en el orden en que aparecen sus registros en el archivo, no se colocan en sus direcciones de registro; la salida es el flujo de datos sin procesar, no una imagen de memoria.
¿Una línea discontinua impide que se analice todo el archivo?
No. Cada registro se verifica de forma independiente, por lo que una sola línea con formato incorrecto o suma de verificación incorrecta aparece en el informe de validación, mientras que todos los demás registros válidos aún se analizan y contribuyen con sus bytes.
¿Mi archivo HEX está subido a algún lugar?
No. El análisis se realiza completamente en su navegador: el contenido del firmware y EEPROM que pegue aquí nunca se envía a un servidor.