Durante la década de 1930 John V. Atanasoff, trabajando como profesor de física en Iowa State College, creó un simple artefacto con tubos al vacío que llevó los conceptos de las computadoras mucho más allá de los artefactos existentes basados en interruptores de relés. Así comenzó la primera generación de computadoras electrónicas digitales. En 1973, una patente Americana le fue otorgada a los sucesores de John V. Atanasoff.
Entre 1935 y 1940, el científico Alemán Konrad Zuse, trabajando en Berlín realizaba la investigación más avanzada utilizando relés eléctricos como controles de PRENDIDO/APAGADO que se comportarían como mecanismos de conteo BINARIO (0 y 1). En 1941, construyó la primera computadora que usaba el proceso binario (DIGITAL) utilizando relés eléctricos, y entonces construyó la primera computadora digital usando tubos al vacío.
Alan Turing propuso por primera vez su teorética "Turing Machine" en Cambridge University en 1936. Los conceptos de Turing de una máquina "inteligente" basada en la lógica Booleana sentaron la base para lo que se conocería como computación moderna.
Para fines de la década de 1930 las técnicas de las máquinas de tarjetas perforadas estaban muy bien establecidas y tan confiables que Howard Hathaway Aiken, en colaboración con ingenieros en IBM, construyó un gran artefacto automático aritmético basado en relés electro-mecánicos estándares de IBM. La máquina de Aiken, llamada Harvard Mark I, manejaba números (células-´words') de 23 dígitos decimales y podía realizar las cuatro operaciones aritméticas. Es generalmente considerada como la primera computadora digital práctica y comenzó operaciones en 1944.
La Mark I era originalmente controlada con cintas de papel pre-perforadas sin provisión alguna para volver atrás. Las instrucciones para la "transferencia de control" automáticamente no podían ser programadas. La salida de resultados era por tarjetas perforadas ó maquinilla eléctrica. Usaba ruedas contadoras de IBM y por primera vez, relés electromagnéticos para hacer sus cómputos que tomaban de 3 a 5 segundos para multiplicar. Fue la primera máquina en el mundo en operar bajo instrucciones programadas.
Empezando en 1942 los esfuerzos de los Estados Unidos estuvieron centralizados en el trabajo realizado por J. Presper Eckert, John W. Mauchly, y sus asociados de la Escuela de Ingeniería Eléctrica Moore de la Universidad de Pennsylvania. Ellos comenzaron la construcción de una computadora electrónica de "alta velocidad" para satisfacer las necesidades de las Fuerzas Armadas de los Estados Unidos. Eckert y Mauchly llamaron su máquina "Electrical Numerical Integrator And Calculator." Vino a ser conocida simplemente como ENIAC.
El tamaño de sus células numéricas era de 10 dígitos decimales, y podía multiplicar dos números de 10 dígitos a razón de 300 resultados por segundo, buscando el valor de cada producto en una tabla de multiplicación almacenada en su memoria. La ENIAC era cerca de 1,000 veces más rápida que la generación anterior de computadoras de relés.
Su aplicación primaria era la de calcular tablas balísticas para uso militar, pero su urgencia disminuyó al finalizar la Segunda Guerra Mundial.
La ENIAC usaba 18,000 tubos al vacío estándares, ocupaba 167.3 metros cuadrados (1,800 pies cuadrados) de piso, y consumía cerca de 180,000 vatios de energía eléctrica. Usaba tarjetas perforadas para la entrada y salida de información, y aritméticamente tenía una unidad para multiplicar y una unidad para dividir y buscar raíces cuadradas, y 20 sumadoras usando "contadores de anillas" como sumadoras. Usaba registros de memoria para leer-escribir de acceso-rápido (0.0002 segundos).
Las instrucciones ejecutables que componían el Sistema Operativo y un programa de una aplicación eran retenidos en unidades separadas de ENIAC, que eran entonces conectadas para formar una ruta dentro de la máquina para el flujo de los cómputos.
Estas conecciones tenían que ser reconectadas de forma diferente para cada problema diferente, así como restablecer las tablas de funciones y los interruptores. Así, la operación de ENIAC era controlada por una técnica de instrucciones "alambre-lo-suyo" en la dotación física-'hardware' que era inconveniente e inflexible, pero probó que una máquina podía ser programable.
La ENIAC hizo su debut público en 1946. Es generalmente considerada como la primera computadora electrónica digital de "alta-velocidad" exitosa. Eckert y Mauchly abrieron la Eckert-Mauchly Corporation en Philadelphia en 1946. Lo que faltaba era una manera flexible de controlar las operaciones de la máquina.
En 1945, intrigado por la computadora ENIAC, el matemático John Von Neumann comenzó un estudio analítico de la computación que probó que una computadora podía tener una estructura física fija y simple, y aún así poder ejecutar cualquier tipo de cómputo usando control programado sin tener que cambiar la dotación física.
Von Neumann contribuyó conceptos importantes sobre cuan rápido computadoras prácticas pueden ser organizadas y construídas. Él desarrolló la técnica de programa-almacenado y descubrió que un programa tiene que ser subdividido en rutinas separadas que puedan ser usadas de forma flexible en el proceso computacional total.
John Von Neumann se dió cuenta de los beneficios significativos y la flexibilidad que se podría obtener escribiendo instrucciones en el programa que permitieran la modificación dinámica mientras el programa estaba siendo ejecutado. Esto permitiría a la máquina actuar "inteligentemente."
Von Neumann atendió estas dos necesidades creando un tipo especial de instrucción llamada transferencia condicionada de control que permitiría interrumpir la secuencia de ejecución de un programa y reiniciarla en cualquier otro punto; y almacenando las instrucciones junto con los datos en la misma unidad de memoria, de forma tal que las instrucciones pudieran ser modificadas de la misma forma que los datos.
Como resultado de éstas y otras técnicas, los cómputos y la programación fue más rápida, más flexible, y más eficiente. Las nuevas instrucciones en subrutinas realizaban mucho más trabajo computacional. Subrutinas usadas frecuentemente resultaban reusables evitando así tener que reprogramar cada nuevo problema.
Los programas podían ser mantenidos intactos en "bibliotecas" y llevados a memoria cuando fueran necesitados desde un lugar de almacenaje secundario como tarjetas perforadas ó cintas. La memoria de la computadora se convirtió en el lugar de ensamblaje de las varias partes de un programa. La primera generación de computadoras electrónicas programadas modernas en aprovechar estas mejoras aparecieron en 1947. Éstas usaron por primer vez Memoria de Acceso Aleatorio-'Random Access Memory' (RAM), generalmente consistentes de aproximadamente 8,192 Octetos-'Bytes'.
A principios de 1948, en la Universidad de Cambridge en el Reino Unido, Alan Turing demostró la primera computadora digital realmente programable, que él definió como la "máquina universal que puede realizar cualquier tarea que pueda ser descrita mediante símbolos." Así, Alan Turing fue el primero en percatarse que la computadora podía perfectamente ejecutar LÓGICA humana siempre y cuando esa lógica pudiera serle expresada a la computadora en un lenguaje que ésta pudiera interpretar. Los conceptos de Turing crearon el escenario para el desarrollo de PROGRAMACIÓN-'SOFTWARE' que simula el pensamiento humano.
En 1947, el primer cliente grande de Eckert-Mauchly fue el Negociado del Censo de Estados Unidos. En 1948, Prudential Insurance fue el primer cliente comercial en usar ENIAC, la cuál usaron para calcular las tablas actuariales (espectativa de vida). Eckert y Mauchly grandemente subestimaron la complejidad, costos y tiempo requerido para producir un producto comercialmente. A principios de 1950, Eckert-Mauchly fue vendida a su competidor principal Remington-Rand. La ENIAC fue producida hasta 1955.
En 1952, Remington-Rand introdujo su más nueva computadora electrónica digital, UNIVAC por Universal Automated Computer. Ésta hizo su debut público estelar en Noviembre de 1952 en la cadena de televisión CBS.
Con Walter Cronkite como ancla del Conteo de las Elecciones Presidenciales de 1952 en CBS, transmitido nacionalmente por televisión, la UNIVAC fue usada para predecir quien ganaría las eleciones y se convertiría en el próximo presidente de los Estados Unidos.
CBS alimentó según llegaban los resultados de la elección presidencial en la UNIVAC la cuál estaba usando uno de los primeros bancos de datos computadorizados. Temprano en la noche, UNIVAC emitió su predicción computacional declarando a Eisenhower como ganador. Expertos convencionales pensaron mayoritariamente que Truman ganaría y que la "computadora había errado". Por eso, CBS retuvo sus predicciones del aire, pero según avanzaba la noche, Walter Cronkite anunció que la UNIVAC acertó y que Eisenhower había ganado.
Para 1950, estas computadoras podían procesar 1,000 Instrucciones Por Segundo. Por primera vez una máquina "pensante" era mucha más rápida que cualquier operador humano. La primera generación de computadoras de programa-almacenado requería un mantenimiento considerable, logrando una operación de 70% a 80% confiable, y fueron usadas de 8 a 12 años. Típicamente, éstas eran programadas directamente en lenguaje de máquina, aunque a mediados de los 50 se había progresado algo en varias áreas de programación avanzada. Este primer grupo de máquinas incluyó la EDSAC y la UNIVAC.
Los principios de una computadora digital estaban ahora firmemente establecidos. Los elementos claves eran:
Unidad Aritmética Y Lógica
Unidades de Almacenamiento de Memoria
Unidad de Control del Procesamiento
Unidades de Entrada y de Unidades de Salida
La unidad aritmética y lógica es la parte de la computadora donde los valores son manipulados y se realizan los cómputos. Esta sección de la computadora usualmente contiene numerosos registros y conecciones entre éstos. La unidad aritmética y lógica, la unidad de control y la memoria primaria constituyen lo que usualmente llamamos Unidad Central de Procesamiento-'Central Processing Unit' (CPU).
Los Registros son colecciones de artefactos de memoria que pueden guardar valores en particular. Por ejemplo, cuando se van a sumar dos números, éstos deben estar presentes donde la suma es realizada. Los registros entonces manipulan los datos puestos en ellos por la instrucciones de la PROGRAMACIÓN-'SOFTWARE'.
Última modificación : martes 2 de diciembre de 1997.
©Derechos Reservados - 1997 - Prof. H. D. A. Cabassa