Paso 5: Read_Byte_from_File()
Un poco a entender acerca de los archivos hexagonales es que realmente se almacenan los datos como caracteres ASCII. Cuando abrimos un apuntador de archivo a estos caracteres ASCII, simplemente no podemos leer los bytes, ya que simplemente sería un carácter ASCII que representa el nibble leer. Para hacer la conversión nos haz un personaje, guardarlo como un binario mordisquear A, conseguir otro personaje y almacenar como nibble binario B. Entonces combinamos nibble A y B en un solo byte.
La función toma tres parámetros: el puntero de archivo, un puntero de uint8_t para almacenar el octeto completo y el total_chars_read, que nos permite un seguimiento de hasta qué punto nos encontramos en el archivo.
- 6: declarar un entero de 8 bits unsinged para sostener el byte final.
- 8: conseguir un carácter ASCII de la pointer.9 de archivo: aquí llamamos a la función cleaer_special_char para quitar el '\n' y '\r' se encuentra en el archivo hex.
- 11: entonces convertimos el carácter ASCII en un nibble binaria verdadera. El resultado se almacena en la cadena. (Se cubre la función de Ascii2Hex más abajo). Los pasos anteriores se repiten para nibble B.
- 18: combinamos la cadena de mordiscos en un byte.
- 26: aumentamos dos caracteres ASCII leer desde el apuntador de archivo.