¿Por qué los caracteres de puntuación en la tabla ASCII están por todos lados?

13

En la tabla ASCII , los caracteres de puntuación aparecen entre los caracteres que no se imprimen y antes de los números ( !"#$%&')*+,-./), entre los números y las letras mayúsculas ( :;<=>?@), entre las letras mayúsculas ( [\]^_`) y las letras minúsculas, y después de las letras minúsculas ( {|}~).

A primera vista, uno esperaría que estos se agrupen juntos; posiblemente antes de todos los caracteres alfanuméricos o detrás de ellos. Pero este no es el caso; ellos se extienden en estos diferentes grupos.

¿Por qué es este el caso? ¿Hay alguna razón (posible histórica) por la cual los personajes se agrupan de esta manera?

Qqwy
fuente
3
Los números y las letras se colocaron de modo que se indizaran con 0 y con 1, respectivamente, de 0110000, 1000000 y 1100000 respectivamente, para facilitar su decodificación. Los caracteres de puntuación luego llenan los espacios en blanco.
David Arno
3
Consulte la respuesta aceptada a stackoverflow.com/questions/1136156/… para obtener más detalles.
David Arno

Respuestas:

9

Según el artículo de Wikipedia ASCII :

El código en sí estaba diseñado para que la mayoría de los códigos de control estuvieran juntos, y todos los códigos gráficos estaban juntos, para facilitar la identificación. Las primeras dos columnas (32 posiciones) estaban reservadas para los caracteres de control.) El carácter "espacio" tenía que aparecer antes de los gráficos para facilitar la clasificación, por lo que se convirtió en la posición 20hex por la misma razón, muchos signos especiales comúnmente utilizados como separadores se colocaron antes dígitos El comité decidió que era importante admitir alfabetos en mayúsculas de 64 caracteres, y eligió modelar ASCII para que pudiera reducirse fácilmente a un conjunto de códigos gráficos utilizables de 64 caracteres, como se hizo en el código DEC SIXBIT (1963). Las letras minúsculas, por lo tanto, no se entrelazan con mayúsculas. Para mantener las opciones disponibles para letras minúsculas y otros gráficos, los códigos especiales y numéricos se organizaron antes de las letras, y la letra A se colocó en la posición 41hex para que coincida con el borrador del estándar británico correspondiente. Los dígitos 0–9 se organizaron de modo que se correspondan con los valores en binario con el prefijo 011, haciendo que la conversión con decimal codificado en binario sea directa.

F.Igor
fuente