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?

Respuestas:
Según el artículo de Wikipedia ASCII :
fuente