xxencode es una codificación de binario a texto similar a uuencode que utiliza únicamente caracteres alfanuméricos y los signos más y menos. Fue inventada como un medio para transferir archivos en un formato que resistiera la traducción de conjuntos de caracteres, en particular la que se produce entre ASCII y la codificación EBCDIC utilizada en los mainframes de IBM. [ 1 ]
El proceso de codificación
Los datos codificados con xxen comienzan con una línea del tipo:
inicio <modo> <archivo>
Donde <modo> son los permisos de lectura/escritura/ejecución del archivo como tres dígitos octales , y <archivo> es el nombre que se utilizará al recrear los datos binarios.
xxencode toma repetidamente grupos de tres bytes, agregando ceros finales si quedan menos de tres bytes. Estos 24 bits se dividen en cuatro números de 6 bits, cada uno de los cuales luego se traduce alcarácter en la siguiente tabla:
1 2 3 4 5 6 0123456789012345678901234567890123456789012345678901234567890123 | | | | | | | +-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
Cada grupo de sesenta caracteres de salida (correspondientes a 45 bytes de entrada) se imprime en una línea separada, precedida por un carácter codificado que indica la cantidad de bytes codificados en esa línea. Para todas las líneas, excepto la última, este será el carácter 'h' (el carácter que corresponde al valor 45). Si la entrada no es divisible exactamente por 45, la última línea contendrá los N caracteres de salida restantes, precedidos por la cantidad de bytes de entrada restantes codificados como se indicó anteriormente. Finalmente, se imprime una línea que contiene un solo espacio (o signo más), seguida de una línea que contiene la cadena "fin".
Los datos codificados con Xxencode se distinguen generalmente de los datos codificados con Uuencode por el primer carácter de la línea ('h' para Xxencode, 'M' para Uuencode). Esto presupone que la salida contiene al menos una línea completa (45 bytes codificados/60 caracteres).
Ejemplo
A continuación se muestra un ejemplo de codificación xx de un archivo de texto de una sola línea . En este ejemplo, %0D es la representación en bytes del retorno de carro (CR) y %0A es la representación en bytes del salto de línea (LF).
- archivo
Nombre del archivo = wikipedia-url.txt Contenido del archivo = http://www.wikipedia.org%0D%0A- codificación xx
inicio 644 wikipedia-url.txt OO5FoQ1cj9rRrRmtrOKhdQ4JYOK2iPr7b1Ec+ fin
Véase también
- Codificación de binario a texto para una comparación de varios algoritmos de codificación.
Enlaces externos
- XXENCODE-XXDECODE - Codificador y decodificador XX gratuitos en línea
Referencias
- ↑ Tony Catone (febrero de 1995). "Las llaves del reino: Desbloqueando los formatos de archivos de Internet" . Universidad de Pensilvania .
- Software Unix
- Formatos de codificación de binario a texto