El archivo HEX es el que se graba en el micro; alli tienes todo tu programa en hexadecimal, no importa el lenguaje de programación que hayas usado.
Si ves el contenido del archivo, te encuentras con:
* dos puntos (":")
* 8 digitos que contienen: la dirección de memoria y no recuerdo que más
* luego tienes 32 caracteres más (16 bytes en hexa) que es lo que se grabará a partir de la dirección especificada al principio
* y por último dos caracteres más (1 byte) que es un CRC
Si navegas por la página de Microchip encontrarás la información en detalle
Saludos