Historia de los mecanismos de cómputo.
La palabra “computador” proviene de “cómputo”
palabra de origen latino cuya etimología implica conteo: com = junto
+ putare = contar. Equivalente a cómputo se encuentra el vocablo “cálculo”,
calculus, piedra en latín, también utilizado con ese significado
en expresiones relacionadas con la salud como “cálculos biliares”
o “cálculos nefríticos” que no significan otra cosa
que el paciente tiene piedras en la bilis o en los riñones. Es evidente
que las operaciones de conteo llegaron a producirse en la antigüedad con
la ayuda de piedras, es decir, se utilizaron unidades físicas para representar
algún tipo de magnitudes.
Estas piedras, conjuntamente con marcas pueden considerarse las primeras expresiones
de los mecanismos de cálculo. Antes que recurrir a ellos, es posible
que los primeros humanos utilizasen órganos de su cuerpo, como los dedos
(de allí la palabra “digital”, del latín, digitus,
dedo). Un ejemplo de ello encontramos en una cultura sudamericana, la de los
guaraníes, extendidos en el Paraguay, el sur de Brasil y el noroeste
de Argentina. En efecto, originalmente, los guaraníes contaban:
1. peteî
2. mokôi
3. mbohapy
4. irundy
5. po
(Todas las palabras son agudas y el acento circunflejo reemplaza una barra sobre
la vocal que indica que ésta se pronuncia nasalmente).
Pero aquí lo que nos interesa es que la palabra po = 5 también
significa mano. Y los guaraníes no contaban más que hasta cinco
cuando fueron colonizados por los españoles en el siglo XVI.
Las piedras, varas (tarjas) y otros adminículos obraban como apéndices,
vale decir, como extensiones del cuerpo a efectos del cómputo. Hasta
épocas recientes se utilizaron ábacos (particularmente poblaciones
japonesas). Me consta haberlos visto personalmente, operados con singular velocidad
y precisión, en 1970, año más año menos, en la ciudad
de Concepción del Paraguay. Su origen, no obstante, se remonta a unos
cinco mil años. Ya eran conocidos en las civilizaciones del valle del
Éufrates y el Tigris. Tal como se conoce, fue inventado por los chinos
aproximadamente en el año 2600 antes de la era cristiana.
Sin embargo, para que mecanismos de cómputo más evolucionados
florecieran fue necesario, entre otras cosas, el desarrollo de un sistema de
numeración apropiado. En efecto, los sistemas griego, hebreo y romano,
posiblemente por la poca actividad de cálculo de esas civilizaciones,
asociaban números a las letras de sus alfabetos y, a pesar de que ciertas
combinaciones eran permitidas, las operaciones eran engorrosísimas.
Veamos estos sistemas hasta sus diez primeros dígitos:
Fue necesaria la aparición de los números arábigos que
utilizaban nueve caracteres y la novedad del cero. Los caracteres adquirían
un valor posicional en el número que formaban. Al-Khowârizmî
(Algorizm) (770 840), matemático y astrónomo de origen persa conoció
alrededor del año 825 los números originarios de la India (se
cree que llegaron a Bagdad como resultado de la traducción de unas tablas
astronómicas, realizada alrededor del año 773, posiblemente por
al-Fazârî). Reconociendo su valor, Al-Khowârizmî explicó
su uso en un pequeño libro, el cual fue traducido por Abelardo de Bath
, en las proximidades de 1120, con el nombre de Liber Algorisimi de Numero Indorum,
o Libro de Al-Khowârizmî sobre el Número de los Hindúes.
Sin embargo, los estudiosos de Bagdad desarrollaron sus propios caracteres inspirados
en otras fuentes, tal vez provenientes de Kabul.
Figura 1.
La primera ocurrencia indudable del cero en la India es una
inscripción en 876 en Gwalior. En esta inscripción, 50 y 270 están
escritos con cero. Sin embargo, hay evidencias de que pudo haber sido conocido
mucho tiempo antes. Los babilonios, por ejemplo, usaban un signo para indicar
la ausencia de número. Smith cree, sin embargo, que se trata de una invención
hindú.
La forma del cero pudo haber sido sugerida por la letra griega omicron por ser
ésta la inicial de nada, oÙdšn, por un punto, por un pequeño
círculo, etc.
El nombre parece provenir del vocablo hindú sûnya, vacío.
Este nombre pasó al árabe como as-sifr o sifr (de allí
“cifra”). Cuando Leonardo Fibonacci (Pisa c. 1170 c. 1250) escribió
su Liber Abaci en 1202, nombraba al carácter como zephirum: “quod
arabice zephirum appellatur”. Maximus Planude (c. 1340) lo llamaba tzifra,
en griego tz…fra, usado por la misma época por Neophytos. En 1307
pasó al italiano como zeuero en registro de Jacopo da Firenze. En formas
posteriores aparece como ceuero en la aritmética de Giovanni de Danti
de Arezzo de 1370, y como zepiro, en una traducción de Avicena (980/1
1037). Otros nombres fueron sipos, tsiphron, zeron, cifra y zero.
Con el sistema de numeración arábigo estaban
echadas las bases para máquinas de cálculo más sofisticadas.
John Napier (1550 1617), matemático escocés inventó los
logaritmos en 1614 intentando aliviar el trabajo pesado del cálculo.
Ideó un simple dispositivo en 1617, llamado de Napier’s Bones que
condujo a la posterior invención de la regla de cálculo.
Los “Huesos” consistían en 9 tablas de 9 posiciones cada
una. En la intersección de cada fila con cada columna iba la multiplicación
del número de fila por el número de columna. Así fila 9
por columna 9 era igual a 9 ´ 9 = 81. Pero el cuadro que contenía
este número estaba dividido por una diagonal (/). El 8 de 81 se colocaba
en el rectángulo superior izquierdo y el 1 en el inferior derecho. De
ese modo, si se deseaba multiplicar 1572 ´ 9, se formaba ese número
utilizando la tabla 1, la 5, la 7 y la 2, y se buscaba el resultado sumando
los números entre las diagonales. Los cuadrados son: /9, 4/5, 6/3 y 1/8.
Los números que se suman, respetando los pases de decenas son, de unidades
a unidades de mil: 8, 3 + 1 = 4, 5 + 6 = 1 y acarrea 1, 9 + 4 + 1 de acarreo
= 14. El número buscado es 14.148.
Se acredita a William Ougtred (1575 1670) la invención de la regla de cálculo. La regla posee una parte deslizante móvil y otra fija. Supongamos que se desea multiplicar 3 ´ 2. Entonces se posiciona el cero de la parte móvil en 3 y se busca el resultado en la parte fija correspondiente al 2: el resultado es 6. Realmente los números marcados como 3 y 2 señalan el lugar del logaritmo de esas cantidades. Luego, como el logaritmo de la multiplicación de a ´ b es la suma del logaritmo de a más el logaritmo de b, la escala fija exhibe el antilogaritmo que corresponde a esta suma. De allí el 6 como resultado. Veamos esto matemáticamente: El 2 se encontraba en 0,693147; el 3 en 1,098612. Se suman 0,693147 y 1,098612 desplazando la parte móvil de la regla. El resultado 1,791759 tendrá como rótulo su antilogaritmo 6.
Figura 2.
Regla de Cálculo. Tal vez: Science & Avenir. La saga de l’informatique,
numero spécial hors de série, Nº 49, p. 34.
Es útil recordar que Oughtred inventó el signo ´ para multiplicar e introdujo los términos seno, coseno y tangente para las funciones trigonométricas.
Blaise Pascal (1623 1662) inventó la famosa sumadora
llamada la Pascaline entre 1642 y 1644. La máquina consistía en
ocho diales (los dos de extrema derecha para el sistema monetario francés
de la época). Por cada revolución completa de un dial, la máquina
agrega un décimo de revolución a la rueda de la izquierda. Para
sumar se fijaban los diales hasta que aparecieran ceros en todas las ventanas.
Luego, con un estilete se fijaban los diales, comenzando por la derecha, rotando
el dial como un dial telefónico, desde el número a sumar hasta
que una barra detuviera al estilete. Para restar, se movía una regla
que ponía al descubierto un nuevo juego de ventanas. En sus Pensamientos,
Pascal decía que su máquina producía acciones que se acercaban
al pensamiento más que las acciones de los animales; sin embargo, no
había nada que nos pudiera hacer atribuir voluntad a ésta, como
a los animales.
Es posible, sin embargo, que el alemán N. Schikard haya trazado los planos
de un mecanismo de calcular 20 años antes que Pascal.
Figura 3.
Gottfried Wilhelm Leibniz (1646 1716) mejoró la máquina de Pascal (aunque en rigor de la verdad, utilizó un modelo desarrollado por Sir Samuel Morland (c. 1625 30/12/1695) alrededor de 1666. La máquina de Leibniz de 1673 superaba a la Pascaline en el empleo de cilindros de paso para reemplazar los dígitos de 1 a 9. Además de sumar y restar, podía multiplicar y dividir.
Figura 4.
Figura 5.
Figura 6.
Saltamos ahora al matemático inglés Charles Babbage (1772 1871). En 1822 escribió “Observations on the Application of Machinery to the Computation of Mathematical Tables”. La Royal Astronomical Society le otorgó una medalla de oro. En 1823 el gobierno comenzó su apoyo al proyecto. Se trató realmente de dos máquinas: La primera es la Difference Engine de la cual construye un pequeñó modelo y pasa once años perfeccionándolo. El propósito de la máquina era calcular expresiones polinomiales. Su método de cálculo era el de diferencias constantes. Por ejemplo, si miramos la tabla siguiente, que calcula el cuadrado de un número x, hallamos lo siguiente:

Donde la primera diferencia es n2 - (n-1)2, y la segunda diferencia es la primera diferencia actual menos la primera diferencia anterior.
La máquina calcula las potencias mediante sumas. Po ejemplo, para obtener el cuadrado del número n, la máquina itera desde 2 hasta n según la siguiente ecuación:
n2 = 2(n-1)2 - (n-2)2 +2
Los cuadrados de (n-1) y (n-2) provienen de las iteraciones anteriores.
Para un número n a la potencia m, la m-sima diferencia es constante. Por ejemplo:
Insatisfecho con la primera máquina, intenta construir una segunda, la
Analytical Engine, de alcances más ambiciosos, a partir de 1834, pero
era una tarea imposible. En efecto, hubiese requerido unas 50.000 piezas mecánicas
de gran precisión, pues, aparte de sumar y restar, debía multiplicar,
dividir y encadenar operaciones. Para ella desarrolla una cincuentena de programas,
con la ayuda de Ada Lovelace, un personaje del que se habla más abajo,
ya que la máquina apuntaba a la resolución de problemas de cálculo
mucho más complejos.
El gobierno inglés comenzó por extenderle un cheque por £1.500, pero luego de aportes que sumaron £17.000, suspendió el financiamiento en 1833.
La segunda máquina debía poseer dispositivos
de entrada (input); una unidad aritmética que Babbage denominaba “the
mill”, el molino; una unidad de control; un almacenamiento (store) o memoria;
y un mecanismo de salida (output). El control y la entrada se realizarían
por tarjetas de Jacquard, nombradas así por su inventor Joseph-Marie
Jacquard (1752 1834), quien las utilizó en telares en 1801. Para la salida
estaba prevista una impresora. Todo el sistema era mecánico y propulsado
a mano. Colaboró con el Ada Lovelace (1815 1852), mujer de talento matemático,
hija del poeta George Gordon Byron, Lord Byron (1788 1824). Ella fue la primera
en establecer que un computador, en este caso el de Babbage, sólo hacía
lo que se le ordenaba. Sus palabras:
The Analytical Engine has no pretensions whatever to originate anything. It
can do whatever we know how to order it to perform. It can follow analysis;
but it has no power of anticipating any analytical relations or truths. Its
province is to assist us in making available what we are already acquainted
with.
Ada Lovelace no conoció a su padre. Era además, por vía
materna, hija de Lady Noll Byron a quien debía, seguramente, parte de
sus habilidades matemáticas. En efecto, Byron llamaba a su madre la “princesa
de los paralelogramos” mientras la cortejaba; “Medea matemática”
durante su vida de casados . El amor por las carreras de caballos pudo haber
sido el factor que la acercó a la máquina de Babbage, pero de
esto no hay ninguna prueba formal. Por el contrario, intenta ayudar a Babbage
cuando se le agotan a este sus recursos económicos. Se casa con Lord
William King en 1833 y tienen tres hijos: dos niñas y un varón.
Mantiene una relación extramatrimonial con John Grosse, hijo de Andrew
Grosse, inventor del altoparlante y de aplicaciones telegráficas. Ada
muere en noviembre de 1852.
El poeta Edgar Alan Poe (1809 1849) dijo de él en “The
Thousand-and-second tale of Scherezade”:
Another of these magi constructed (of like material [brass and wood, and leather])
a creature that put to shame even the genius of him who made it; for so great
were its reasoning powers that, in a second, it performed calculations of so
vast extent that they would have required the united labor of fifty thousand
fleshy men for a year.
Posteriormente a Babbage se crearon muchos dispositivos. Sin embargo, pese a
algunas de sus aplicaciones, por ejemplo, la construcción de tablas actuariales,
su interés actual reside, en general, solamente en su papel dentro de
la historia de la computación.
Para nuestro recuento es importante mencionar al lógico inglés George Boole (1815 1864). En An Investigation of the Laws of Thought, on which are founded the Mathematical Theories of Logic and Probabilities (1854), se establece la vinculación entre la matemática y la lógica, la cual sería condición determinante para el futuro desarrollo de la computación. Allí se encuentra también el fundamento de lo que se llamaría posteriormente lógica booleana. De acuerdo a Boole, los símbolos de la lógica están sujetos a leyes diferentes a los símbolos de cantidad. Por ejemplo, x2 = x para todo x en su sistema. En términos numéricos, esta ecuación tiene sólo dos soluciones: 0 o 1. De allí la importancia del sistema binario para el desarrollo de los computadores.
El siguiente desarrollo teórico provino del matemático
y lógico inglés graduado en Cambridge, Alan Mathison Turing, nacido
en 1912 y fallecido, según versión oficial, por suicidio mediante
ingestión de cianuro de potasio en 1954. Publicó en 1936 “On
computable numbers, with an application to the Entscheidungsproblem (problema
de la decidibilidad)”., en el cual desarrolló el concepto denominado
de las máquinas de Turing, computador teórico. Estuvo becado en
Princeton entre 1937 y 1938 donde trabajó con el famoso lógico
Alonso Church (1903 1995).
En 1939 entra en la EECC, en Bletchley Park, suburbio al norte de Londres. En
su cabaña 8, trabajaban 12 matemáticos, 4 lingüistas y cientos
de programadores. “Colossus” entra en servicio en diciembre de 1943.
En 1944 llegaron trabajar 6000 personas para decodificar 2000 mensajes diarios
de alemania. Su tarea era romper el código alemán. Los británicos
disponían de una codificadora alemana “Enigma” capturada
por el servicio secreto polaco. La máquina poseía tres rotores
(cuatro para la marina). Dado un mensaje a cifrar, el primer rotor transforma
una letra del mismo en otra; esta segunda letra es transformada, a su vez, en
otra por el segundo rotor, y así sucesivamente. Se dice que “Enigma”
permitía más de 100.000 substituciones alfabéticas diferentes.
Podía producir 22 millardos de combinaciones. Los alemanes también
usaban una versión más poderosa de Enigma. Se denominaba Geheimschreiber
(escritor secreto) y poseía diez rotores.
Turing también es conocido por el famoso test que lleva su nombre para
determinar inteligencia en un computador. El test se basaba en el hecho de que
si al conversar con un computador oculto, el evaluador no puede establecer si
lo hace con una máquina o con un humano, puede hablarse de inteligencia
de máquina. Sin embargo, no se ha conseguido el test de Turing absoluto
ni siquiera en dominios acotados.
Colossus entra en servicio en diciembre de 1943. Fue el primer calculador electrónico, compuesto por 1500 tubos.
Eventualmente, Turing participó en el diseño del computador Pilot ACE, del National Physical Laboratory, en 1945. La máquina estuvo a punto en 1950 pero, aunque considerada la de mayor poder en su tiempo, no tuvo consecuencias apreciables.
El próximo paso en nuestro esquema es el nacimiento
de la computación digital que ocurre en la década de 1940, producto
de lo que Thomas M. Smith denomina “una convergencia estratégica”:
Este tipo especial de convergencia estratégica reunió las tradiciones
conceptuales de matemáticas, física e ingeniería electrónica,
política práctica, sistema fiscal, la lógica del cómputo
analógico y digital, y las complejas filosofías empíricas
de las relaciones gobierno-industria-enseñanza superior.
Numerosos desarrollos anteceden la aparición de los primeros computadores.
Entre ellos queremos mencionar el Z3 de Konrad Zuse de Alemania, en 1941. El
Z3 estaba compuesto por 2600 relais electromecánicos y puede considerarse
como el primer calculador binario universal controlado por un programa externo
que haya funcionado.
Howard Hathaway Aiken (1900 1973) fue el diseñador
del computador que se llamaría Harvard Mark I (inicialmente se llamaba
Automatic Sequence Controlled Calculator, ASCC). El proyecto estaba respaldado
por IBM, particularmente en la figura de Thomas J. Watson, senior (1874 1956).
Estuvo listo en Endicott en 1943, pero luego fue llevado a Harvard. La máquina
era digital y operaba con relais electromagnéticos. Aiken sabía
aparentemente que os tiempos de respuesta de las válvulas eran superiores
a los de los relais, pero ellas eran poco confiables. El computador medía
16,5 m. de largo por 2,4 m. de ancho. Tenía más de un millón
de componentes. Sus partes electromecánicas eran componentes standard
de IBM o modificaciones de ellos. Su diseño exterior, utilizaba acero
inoxidable y vidrio, lo cual le daba la apariencia de un producto IBM. Aunque
era un “brontosaurio intlectual” , recibió gran publicidad
y por primera vez se llamó a un computador “cerebro electrónico”.
Era lento (3/10 de segundo para sumar dos números; 3 segundos para multiplicar
dos números de 11 cifras) y ruidoso: se oía como una habitación
llena de damas tejiendo, dijo alguien. Era controlado por una cinta de papel
perforada que avanzaba a 200 pasos por minuto. Manejaba números hasta
de 23 dígitos.
Operó durante 15 años en Hardvard desde su instalación
en 1944 .
Johann (John) von Neumann (1903 1957), matemático de origen húngaro, produjo en 1946, con dos colegas, un paper titulado “Preliminary discussion of the logical design of an electronic computing instrument” que fue extremadamente influyente en el subsecuente desarrollo de la computación. La idea central de von Neumann era almacenar el programa dentro del computador.
Figura 7.
El segundo viernes de abril de 1946 , estaba. construido el Electronic Numerical Integrator and Calculator, ENIAC, de la Moore School of Electrical Engineering de la University of Pennsylvania. Sus inventores fueron John Presper Eckert (1919 1995) y John William Mauchly (1907 1980). ENIAC tenía 18.000 válvulas de radio; 500.000 soldaduras debieron realizarse para interconectarlas. Cuando fallaban, las válvulas eran reemplazadas en minutos, pero podía tomar días encontrarlas. Multiplicaba a razón de 300 operaciones por segundo (lo que equivalía a una velocidad cerca de mil veces mayor que la de su predecesor). La máquina ocupaba 160 metros cuadrados. Se programaba mediante conectores enchufables (plugged). Había alrededor de 40 tableros, de varios pies de tamaño. Un número de conexiones debía hacerse por cada instrucción, miles de ellas cada vez que comenzaba una corrida. Eso tomaba varios días y más tiempo aún verificar el cableado. Su entrada y su salida era por tarjetas perforadas, 125 por minuto en el input, 100 en el output. ENIAC costó alrededor de $750.000, pesaba 30 toneladas y estuvo operativa hasta 1955.
El 21 de junio de 1948, Tom Kilburn (1921 2001) y Sir Frederick Calland Williams (1911 1977) de la Royal Computing Society de la Manschester University corrieron por primera vez un programa almacenado alterable en un computador utilizado para probar la memoria basada en rayos catódicos que habían inventado, el Small Scale Experimental Machine, SSEM, llamado familiarmente “The Baby”. Este computador sería el Manchester Ferranti Mark I, que estuvo en funcionalmiento entre 1948 y 1951, reemplazado por un computador muy mejorado, a partir de este último año. Tal vez en razón de ser un computador experimental el crédito para el primer programa almacenado fue para el computador EDSAC en 1949. EDSAC fue construido en la Universidad de Cambridge por un equipo dirigido por Maurice Wilkes (n. 1913).
El último desarrollo teórico al que se hará
referencia es el del matemático del MIT e ingeniero de los Bell Telephon
Laboratories, Claude Elwood Shannon (1916 2001). Su tesis de maestría
se tituló “A Symbolic Analysis of Relay and Switching Circuits.
En ella aplicó la lógica simbólica de Boole al análisis
de circuitos conmutables. Shannon argumentó en ese trabajo, que valores
de falso y verdadero eran análogos a los estados de abierto y cerrado
de los circuitos eléctricos.
Su trabajo de 1948, A Mathematical Theory of Communication, en el cual se utilizó
posiblemente por primera vez la palabra bit por dígito binario (abreviatura
de binary digit) , sentó las bases para la teoría de la información,
particularmente con la introducción de su medida H, llamada entropía
de Shannon, que es la cantidad de bits requeridos en promedio para codificar
un conjunto de mensajes. Definía un bit:
A bit is the choice between plus or minus; it is the amount of information needed
to remove the uncertainty between yes and no.
El trabajo mostraba como eliminar ruido codificando señales.
Shannon había trabajado con Vannevar Bush (1890 1974) y su computador
analógico, el “Rockefeller Differential Analyser” cuyo primer
modelo se concluyó en 1930.
A partir de estos desarrollos, la industria ha evolucionado a un paso acelerado. Pero ese estudio requiere, para nuestros propósitos, una evaluación más específica y detallada.
Bibliografía
· AFIPS, The Quiet Revolution: Computer on the Age, American Federation
of Information Processing Societies.
· Alt Franz L., “Archeology of Computers. Reminiscences, 1945-1947”,
Communications of the ACM, Vol. 15, Number 7, July 1972, 693-694.
· Evans Christopher, The Making of the Micro, New York, Van Nostrand,
1981.
· Garçon François, “Colossus, le Calculateur que
a Gagné la Guerre”, Sciences & Avenir, La Saga de l’Informatique,
No 49, Numéro spécial hors de série, 61-64.
· Lefebure Antoine, “Le savant, la Comtesse et la Machine”,
Sciences & Avenir, La Saga de l’Informatique, No 49, Numéro
spécial hors de série, 16-20.
· Moreau R., Ainsi Naquit l’Informatique, Paris, Dunod, 21982.
· Renard Bruno, El Cálculo Electrónico, Buenos Aires, Eudeba,
1963 (Le calcul électronique, PUF, 1960).
· Smith David Eugene, History of Mathematics, New York, Dover, 1958 (1925).
· Smith Thomas, “Algunos hitos en la historia de los computadores”,
Zenon W.Pylyshyn, Perspectivas de la Revolución de los Computadores,
Madrid, Alianza, 1975, 31-41.