jueves, 29 de abril de 2004

Curiosidades: Zuse

Hoy no tengo ningún tema especial que tratar, así que me dedicaré a contaros una bonita historia.

Supongo que conocéis cómo Alan Turing y otros ingenieros británicos diseñaron uno de los primeros ordenadores y lo emplearon para descifrar las transmisiones navales alemanas durante la segunda guerra mundial. Lo que quizá no sepáis es que los nazis desaprovecharon la oportunidad de crear su propia computadora.

En 1930, prácticamente a la vez que Turing comenzaba sus investigaciones en Gran Bretaña, Konrad Zuse, un ingeniero civil, decidió construir una calculadora más potente que los aparatos disponibles en la época, y llegó por su cuenta al descubrimiento de que en una máquina eficiente los números no se debían almacenar en ruedas contadoras, sino en celdas que almacenaran una elección entre dos estados. Era el nacimiento de la computación binaria.

En la época había tres dispositivos capaces de almacenar datos binarios: el sistema puramente mecánico consistente en agujas o palancas, el electromagnético que empleaba relés (usado en la telefonía) y el electrónico a base de válvulas. Zuse descartó esta última tecnología, demasiado costosa y todavía poco fiable en la época, y se volcó en las dos anteriores. Su primera computadora, el Z1, funcionaba con un sistema puramente mecánico, y en 1938 rediseñó una versíón reducida de forma que utilizara relés electromagnéticos. Así nació el Z2. La versión completa del Z2, el Z3, dispondría de un sistema de numeración binario, aritmética de coma flotante (palabras de 22 bits, 1 para el signo, 7 para el exponente, y 14 para la mantisa), y una memoria de almacenamiento de 64 palabras. Su única diferencia respecto de la definición de computadora moderna establecida por von Neumann en 1946 era la imposibilidad de almacenar programas en la memoria, imposibilidad debida a la escasa capacidad de almacenamiento que tenía la máquina.

La Alemania de la época funcionaba de forma absurda. Zuse fue llamado a filas en 1939, y tiempo después fue liberado del servicio para realizar tareas de ingeniería aeronáutica —no computación, a la que dedicó sus horas libres—. Al fin, en 1941 mostró su aparato Z3 a las autoridades germanas para su uso en los cálculos aeronáuticos.

Téngase en cuenta (yo no lo sabía hasta que leí las memorias de A. Yákovlev) que el principal problema del diseño aeronáutico de la época era la vibración que aparecía al superar cierta velocidad. Para eliminar dicha vibración, era necesario realizar una serie de cálculos complicadísimos. La máquina de Zuse logró resolverlos adecuadamente. Pero su autor no fue autorizado a dedicarse completamente a su proyecto. Actitud típica de los Nazis, que habían rechazado al comienzo de la guerra la construcción de una computadora de defensa aérea, porque el plazo de construcción que se les propuso les había parecido demasiado largo: tan convencidos estaban de que conquistarían Europa en unos meses. El Z3 fue destruido durante los bombardeos sobre Alemania.

En los últimos tiempos de la Alemania nazi, Zuse construyó un último modelo, el Z4; parece imposible que el ingeniero fuera capaz de trasladarlo de un lugar a otro de Berlín, esconderlo en los laboratorios secretos del Harz, y finalmente cruzar la frontera con él al final de la guerra.

Zuse reclama para sí mismo los títulos de inventor de la primera computadora binaria y de creador del primer sistema de control de procesos (el S2, una computadora que tomaba medidas de las piezas de las V2 y realizaba los cálculos de corrección de trayectoria pertinentes); se le suele atribuir también el mérito de diseñar el primer lenguaje de programación, el Plankalkul (1945). Pero lo importante de esta historia no es lo que Zuse llegó a hacer en los años de la segunda guerra Mundial, sino lo que no hicieron ni Zuse ni sus colegas.

Y no lo hicieron porque nadie tomó el interés suficiente por sus proyectos. Es una suerte que la creencia en una victoria rápida impidiera que los nazis desarrollaran más profundamente la computación, como lo es que no llegaran a desarrollar, por el mismo motivo, el armamento nuclear.

No hay comentarios: