Un código de caracteres de seis bits es una codificación de caracteres diseñada para su uso en computadoras con longitudes de palabra múltiplo de 6. Seis bits solo pueden codificar 64 caracteres distintos, por lo que estos códigos generalmente incluyen solo letras mayúsculas, números, algunos caracteres de puntuación y, a veces, caracteres de control. El formato de cinta magnética de 7 pistas se desarrolló para almacenar datos en dichos códigos, junto con un bit de paridad adicional .
Un código binario temprano de seis bits se utilizó para Braille , el sistema de lectura para ciegos que se desarrolló en la década de 1820.
Las primeras computadoras solo procesaban datos numéricos y no tenían en cuenta los datos de caracteres. IBM utilizó el BCD de seis bits , con varias variantes, en las primeras computadoras, como la IBM 702 en 1953 y la IBM 704 en 1954. [1] : p.35 Las codificaciones de seis bits fueron reemplazadas por el código EBCDIC de 8 bits a partir de 1964, cuando System/360 estandarizó los bytes de 8 bits . Existen algunas variantes de este tipo de código (ver a continuación).
Los códigos de caracteres de seis bits generalmente sucedieron al código Baudot de cinco bits y precedieron al ASCII de siete bits .
Los códigos de seis bits podían codificar más de 64 caracteres mediante el uso de caracteres Shift Out y Shift In , que básicamente incorporaban dos conjuntos de 62 caracteres distintos y alternaban entre ellos. Por ejemplo, el popular terminal de comunicaciones IBM 2741 admitía una variedad de conjuntos de caracteres de hasta 88 caracteres de impresión más caracteres de control.
A partir de 1930, aproximadamente, se utilizó una extensión especial de 6 niveles del Alfabeto Telegráfico Internacional de 5 niveles para controlar de forma remota las máquinas Linotype. En 1950, los servicios de noticias lo utilizaban ampliamente para enviar noticias preformateadas a los periódicos participantes. Admitía los 90 caracteres imprimibles de una máquina Linotype, además de los caracteres de espacio en blanco .
El código TTS tenía dos pares de códigos de desplazamiento que permitían un total de cuatro estados de desplazamiento. El primero funcionaba de forma muy similar a la tecla de desplazamiento de un teclado y seleccionaba entre un repertorio de minúsculas y dígitos, y uno de mayúsculas y símbolos. Un segundo par de códigos de desplazamiento específicos de Linotype, "carril inferior" y "carril superior", seleccionaban una fuente alternativa (normalmente cursiva).
El código BCD de seis bits fue la adaptación del código de tarjeta perforada al código binario . IBM aplicó los términos decimal codificado en binario y BCD a las variaciones de los alfanuméricos BCD utilizados en la mayoría de las primeras computadoras IBM, incluidas las series IBM 1620 , IBM 1400 y los miembros de arquitectura no decimal de la serie IBM 700/7000 .
También se utilizó un código de seis bits en las bases de datos COBOL, donde la información de fin de registro se almacenaba por separado. [ cita requerida ]
En la pista 1 de las tarjetas de banda magnética se utiliza un código de seis bits, con un bit de paridad impar añadido, tal como se especifica en la norma ISO/IEC 7811-2 .
Un código de seis bits popular fue DEC SIXBIT. Esto es simplemente los códigos de caracteres ASCII de 32 a 95 codificados como 0 a 63 restando 32 (es decir, columnas 2, 3, 4 y 5 de la tabla ASCII (16 caracteres por columna), desplazados a las columnas 0 a 3, restando 2 de los bits altos); incluye el espacio, caracteres de puntuación, números y letras mayúsculas, pero no caracteres de control. Dado que no incluía caracteres de control, ni siquiera de final de línea, no se utilizó para el procesamiento de texto general. Sin embargo, los nombres de seis caracteres, como nombres de archivos y símbolos de ensamblador, se podían almacenar en una sola palabra de 36 bits del PDP-10 , y tres caracteres caben en cada palabra del PDP-1 y dos caracteres caben en cada palabra del PDP-8 . Consulte la tabla siguiente.
Otra variante menos común se obtiene simplemente quitando el bit alto de un código ASCII en el rango 32-95 (los códigos 32-63 permanecen en sus posiciones, a los valores más altos se les resta el 64). Esta variante se utilizó a veces en el PDP-8 de DEC (1965).
Un código de seis bits similar al de DEC, pero que reemplaza algunos caracteres de puntuación con los caracteres de control más útiles (incluidos SO/SI , que permiten la extensión del código) se especificó como ECMA -1 en 1963 (ver más abajo).
FIELDATA era un código de siete bits (con paridad opcional) del cual sólo 64 posiciones de código (que ocupaban seis bits) estaban definidas formalmente. [2] Una variante fue utilizada por las computadoras de la serie 1100 de UNIVAC . [3] Al tratar el código como un código de seis bits, estos sistemas usaban una palabra de 36 bits (capaz de almacenar seis de esos caracteres FIELDATA reducidos). [4]
Los caracteres Braille se representan mediante seis posiciones de puntos, dispuestas en un rectángulo. Cada posición puede contener un punto en relieve o no, por lo que el Braille puede considerarse un código binario de seis bits. Algunos sistemas Braille más modernos añaden dos puntos adicionales, lo que convierte a estos sistemas en un código de ocho bits.
La transmisión de datos binarios a través de sistemas diseñados solo para texto puede generar problemas en ocasiones. Por ejemplo, el correo electrónico, históricamente, solo admitía códigos ASCII de 7 bits y eliminaba el octavo bit, lo que corrompía los datos binarios enviados directamente a través de cualquier servidor de correo problemático. Otros sistemas pueden causar problemas al interpretar incorrectamente los caracteres de control durante el almacenamiento o la transmisión. Existen varios esquemas para empaquetar datos de 8 bits en representaciones de solo texto que pueden pasar a través de sistemas de correo de texto para ser decodificados en el destino. Algunos ejemplos de subconjuntos de caracteres de 6 bits utilizados para empaquetar datos binarios incluyen Uuencode y Base64 . Estos conjuntos no contienen caracteres de control (solo números imprimibles, letras, algo de puntuación y tal vez espacio) y permiten que los datos se transmitan a través de cualquier medio que también sea capaz de transmitir texto legible para humanos.
IBM, que dominaba el procesamiento de datos comerciales, utilizaba una variedad de códigos de seis bits, que estaban vinculados al conjunto de caracteres utilizados en las tarjetas perforadas , véase BCD (codificación de caracteres) .
A continuación se muestran otros códigos de caracteres de proveedores, con sus equivalentes Unicode .
La siguiente tabla muestra la disposición de los caracteres, con el valor hexadecimal, el carácter ASCII correspondiente, los códigos Braille de 6 bits (combinaciones de puntos), el glifo Braille Unicode y el significado general (el significado real puede cambiar según el contexto). [6] [7]