¿Cómo se introdujeron los alfabetos ingleses en las computadoras, cuando se hizo una versión electrónica de la computadora por primera vez?

No tengo la edad suficiente para tener la primera computadora electrónica, pero he usado algunas bastante primitivas. Mi SC / MP por ejemplo. No estoy seguro de llamar exactamente a las instrucciones de ensamblaje MOV (mover) o BR (sucursal) en inglés, pero la computadora originalmente no tenía teclado alfanumérico ni ensamblador. Convertí las instrucciones de ensamblaje en binario (hexadecimal) a mano usando una tabla de búsqueda de papel o de memoria, luego las ingresé en la computadora usando un teclado hexadecimal. Más tarde, agregué un teclado qwerty y un monitor. El teclado generó un número binario en los pines de entrada cuando se presionó una tecla: un código para una tecla de letra, un bit separado para las teclas de control y shift. Escribí una tabla de búsqueda que convirtió eso a ASCII. Para que las letras aparezcan en la pantalla en una fuente de matriz de puntos, dibujé letras en papel cuadrado y convertí cada fila de puntos en un número hexadecimal. Estos valores binarios se almacenaron en otra tabla de búsqueda. El chip de salida de video estaba basado en caracteres, no basado en píxeles (la RAM era demasiado cara). A medida que el chip generaba señales de video de TV (luminancia, sincronización horizontal y vertical), generaba direcciones de memoria secuenciales y sacaba valores ASCII del búfer de texto. Cada valor se alimentó a la tabla de búsqueda de fuentes junto con una columna y dirección de fila para generar un bit de luminancia, que apareció en la pantalla como un punto claro u oscuro. Entonces, lo que lo convirtió en un alfabeto inglés (ASCII) en lugar de, por ejemplo, árabe, fue el contenido de las dos tablas de búsqueda, que originalmente había creado a mano. La CPU en sí no tenía instrucciones de texto, solo funcionaba con números o patrones de bits: podía sumar o restar números, comparar dos números o realizar operaciones lógicas binarias como AND u OR bit a bit. Una cadena de texto era solo una secuencia de números, por convención terminada con un cero.

En una computadora moderna, la tabla de búsqueda para el teclado está en un chip en el teclado mismo, de modo que genera un código de serie ASCII a través de USB en lugar de un patrón de bits paralelos conectado directamente a un chip de entrada. La pantalla muestra gráficos de mapa de bits en lugar de caracteres, y la fuente probablemente se almacena como vectores escalables en el sistema operativo en lugar de una matriz de puntos en la tarjeta gráfica, pero el principio es el mismo.

Típicamente, los patrones de bits encontrados en la memoria de la computadora organizados en un grupo (por ejemplo, byte, palabra) representarán una instrucción o datos. Cuando un patrón de bits representa una instrucción, desencadena un conjunto de máquinas de estado en la CPU. Cuando el patrón de bits representa datos, esos bits deben organizarse en una representación estándar acordada, ya sea una dirección, un número entero, un número de coma flotante o un carácter de texto. No importa cómo elija representar los datos, solo tiene que ser coherente.

Uno de los primeros estándares de codificación de caracteres de la computadora fue BCD, un medio para codificar caracteres en binario. BCD fue sucedido por EBCDIC. ASCII se desarrolló en paralelo, descendiente del mundo de la telegrafía. La madriguera de la codificación de caracteres es muy profunda, como lo demuestra la lista de conjuntos de caracteres del sistema de información.

Si pasa demasiado tiempo estudiando tales cosas, puede encontrarse discutiendo apasionadamente sobre los puntos más delicados de las amenazas de identidad homogéneas y las políticas de área de uso privado en el Consorcio Unicode.

Por cierto, las instrucciones de ensamblaje no están “escritas en inglés”. Cada instrucción de ensamblaje (código de operación) es simplemente un patrón de bits con una breve mnemónica en inglés que el ensamblador utiliza para describirla.