Se lhe perguntarem um dia qual o computador mais famoso do mundo, provavelmente a resposta será “HAL 9000” ou algum outro dispositivo fictício, mas, com certeza, se lhe disseram o nome ENIAC você saberá do que se trata ou terá certeza de já ter escutado essa palavra em algum lugar. Você pode nem perceber, mas o ENIAC é um desses raros casos em que um evento torna-se tão importante que passa a fazer parte do sub-consciente coletivo. A impressão latente aqui, trazida pela palavra ENIAC, é de algo assombrosamente moderno e poderoso, nunca antes visto e revolucionário. De fato, foi assim, mas já se passaram 63 anos desde que ele, o primeiro computador do mundo, entrou em operação.
Nos anos 1940 o mundo estava em plena II Guerra Mundial e sabia-se que o exército melhor preparado venceria. Calcular trajetórias balísticas era uma tarefa complicada que exigia conhecimentos de física e matemática, além de cálculos demorados feitos à mão. Era comum que houvessem equipes de matemáticos trabalhando nos cálculos 24 horas por dia na tentativa de otimizar a pontaria durante os ataques.
O projeto de criar uma máquina que fosse capaz de realizar os cálculos de artilharia centenas de vezes mais rápido que as calculadoras eletro-mecânicas da época foi assinado, em segredo, pelo exército com a Escola de Engenharia Elétrica Moore da Universidade da Pensilvãnia em 5 de junho de 1943 e chamado de “Projeto PX”, o desenvolvimento ficaria a cargo de John Mauchly (físico) e J. Presper Eckert (engenheiro elétrico), que chefiaram a equipe de engenharia encarregada de tornar a máquina em realidade. Quase 3 anos mais tarde e depois de mais de US$ 500.000, em 14 de fevereiro de 1946, o projeto, batizado ENIAC (Electronic Numerical Integrator And Computer), foi entregue, considerado pronto e funcional na Universidade da Pensilvânia. A guerra, é claro, já havia terminado.
O Hardware envolvido
Na época a imprensa fez um grande estardalhaço diante da maravilha tecnológica concebida pelo gênio humano e representavam o ENIAC como um cérebro gigante, capaz de superar o cérebro humano em velocidade e inteligência.
O computador, diferente dos nossos atuais, trabalhava no sistema decimal em vez do binário, pesava 27 toneladas, media 5,50 m de altura e 25 m de comprimento, ocupava 180 m² de área construída e permanecia montado sobre estruturas metálicas com 2,75 m de altura. Era impressionante em todas as medidas: 17.468 válvulas à vácuo, 7.200 diodos de cristal, 1.500 relés, 70.000 resistores, 10.000 capacitores e aproximadamente 5 milhões de pontos de solda, devorando 175 KW de energia. Dizem que quando o ENIAC era ligado as luzes da Filadélfia piscavam.
Os dispositivos de entrada em nada se pareciam com os nossos confortáveis teclados e mouses de hoje em dia: usavam cartões perfurados da IBM, com capacidade de armazenar 8 números de 10 dígitos numa velocidade de até 125 cartões/min. Os resultados dos cálculos eram escritos em cartões perfurados por uma gravadora IBM 405 e frequentemente a sala onde o ENIAC operava atingia mais que 50°C, mesmo com os condicionadores de ar sempre ligados.
Para atingir maior velocidade, a máquina funcionava em sistema modular. O ENIAC, como um todo, era dividido em 20 unidades que podiam trabalhar independentemente, desmembrando um problema complexo em partes menores e passando as soluções para o outro módulo ao fim da operação.
“Toda vez que o ENIAC era ligado, piscavam as luzes da Filadélfia”
As velocidades médias de operações com dois números acima de dez dígitos eram essas:
- 5.000 somas ou subtrações
- 357 multiplicações por segundo
- 35 divisões ou raízes quadradas por segundo
Como o ENIAC pensava?
E é interessante apontar que o ENIAC só trabalhava com somas (por isso tinha “Integrator” no nome). Essa curiosidade é, de fato, apenas uma propriedade matemática usada pelos programadores para permitir ao ENIAC computar subtrações, multiplicações, divisões e raízes.
Não é muito difícil de entender:
Ele sabia somar:
2+2 = 4
Essa foi simples, não?
Ele não sabia subtrair, mas… :
4 – 2 = 4 + (-2)
Uma subtração nada mais é do que a soma de um número negativo.
Ele não sabia multiplicar, mas… :
4 x 2 = 2 + 2 + 2 + 2
Uma multiplicação nada mais é que somar o número uma quantidade X de vezes.
Ele não sabia calcular raízes quadradas, mas… :
Bem, essa é meio complicada. Existe um teorema matemático que diz o seguinte:

m é o número do qual queremos achar a raiz quadrada
a é a sima de todos os números ímpares que chegam mais próximos de
O que essa fórmula quer dizer é o seguinte: a raiz quadrada de um número m está entre a soma de todos os números ímpares até chegar mais perto de m, mais ou menos 1, dividido por 2.
Não sacou? Com o exemplo fica mais fácil: Vamos calcular a raiz quadrada de um número maluco qualquer. Vou escolher o 1003.
Começamos a somar todos os números ímpares até chegar ou passar um pouco de 1003:
1+3+5+7+…+59+61=961 —- Ainda falta 42 para 1003 <== Esse valor ainda não serve.
1+3+5+7+…+63=1024 —- Passou 21 de 1003 <== esse passou, um pouco. Vai servir.
Somando e somando e somando os números ímpares, vamos cada vez mais perto do nosso número (1003), mas devemos lembrar que o valor tem que ser exato, ou passar um pouco. Somando até 61 o valor ainda falta e, finalmente, no 63 o valor passa um pouco. 63 é nosso número mágico, logo, queremos achar a raiz quadrada de 1003, por isso sabemos que, na fórmula de cima m = 1003 e acabamos de descobrir que a = 63. Portanto, só para não esquecer:

Algumas partes são fáceis de resolver:

Descobrimos que nossa raiz está entre 31 e 32. Já é uma boa coisa, mas, é necessário ser mais preciso. Pense nos pobres soldados disparando morteiros nos próprios aliados por falta de precisão nas contas… Pra achar mais algumas casas decimais, se você olhar um pouco antes, vai se lembrar daquele valor que testamos, mas que ainda ficou faltando 42 unidades para chegar ao 1003. Lembra-se?
1+3+5+7+…+59+61=961 —- Ainda falta 42 para 1003
O valor que usamos até agora foi o 63. Se você pegar essas unidades que ficaram faltando para 1003 (e que pensamos que não iam servir para nada) e dividirmos pelo valor que serviu (63), teremos:

Agora compare:

e

Nossa raiz quadrada está entre 31 e 32. Vamos usar essas casas decimais que acabamos de achar pra fazer um teste:
Qual desses dois números está entre 31 e 32?
Bem, o 32,6667 passou de 32, então, é claro, não é ele. Vamos atirar nossas bombas confiando que a raiz quadrada de 1003 é 31,6667. Se você pegar sua calculadora e ver o valor exato vai achar o seguinte: 31,670175244
Nada mal, heim?
Programando para o gigante
Um dos maiores avanços trazidos pelo ENIAC, além da espantosa velocidade nos cálculos era a possibilidade de programá-lo de forma que executasse uma grande variedade de operações complexas. Ele era capaz de loops, sub-rotinas e ramificações, mas o processo de “programação” era bastante complexo e consistia em trocar centenas de fios de posição e mudar diversas chaves. A primeira tarefa para programá-lo era conseguir o problema a ser computado (escrito em linguagem humana) e transcrevê-lo, artesanalmente, na linguagem decimal, que era interpretada pelo ENIAC. Apenas esta fase demorava diversas semanas. Depois do problema transcrito, 6 programadoras levavam dias mudando os cabos e as chaves que regulavam a corrente elétrica (lembre-se que um computador “pensa” através de pulsos elétricos, mas, antigamente, era preciso ajustar, manualmente, como esses pulsos seriam) e depois disso chegava a fase de “debugging” a procura de erros no código decimal ou no ajuste do equipamento. Ufa!
Infelizmente para os programadores, O ENIAC não possuía uma memória capaz de armazenar os programas, embora essa memória fizesse parte dos planos originais acabou não sendo implementada no projeto. A não implementação do recurso significava que, depois de executados, os programas não podiam ser salvos e teriam que ser refeitos novamente caso houvesse necessidade no futuro.
Confiabilidade do hardware e do software
O ENIAC era projetado para checar duas vezes todas os cálculos que executava e lançava mão de inúmeros recursos matemáticos e estatísticos para obter resultados mais precisos. Ainda hoje, com computadores incomparavelmente mais possantes a margem de erro existe e precisa ser levada em conta, por exemplo, nos cálculos meteorológicos, na predição de movimentos de galáxias e simulações estatísticas complexas.
O hardware, por outro lado, era fonte de grandes preocupações, mesmo antes do início do funcionamento oficial do computador. Especialistas em eletrônica haviam previsto que as válvulas à vácuo queimariam com tanta frequência que o funcionamento da máquina seria impraticável: uma válvula precisaria ser trocada a cada 17 segundos.
Isso estava parcialmente correto, já que os engenheiros responsáveis pela manutenção do ENIAC perceberam que a queima de válvulas ocorria, geralmente, durante o aquecimento (momentos logo após ser ligada) e durante o desligamento. A solução, simples, era mantê-la ligada a maior quantidade de tempo possível. Embora fosse corrente a história de que trocar as válvulas no ENIAC era uma tarefa infindável, Eckert, numa entrevista concedida em 1989 disse que a média era de que fosse necessário trocar uma válvula a cada 2 dias e que esse processo não demorava mais que 15 minutos. O maior período de funcionamento contínuo da máquina foi de 116 horas.
Encerrando as atividades e aposentadoria
Os trabalhos do primeiro computador do mundo continuaram até as 23h e 45 min do dia 2 de outubro de 1955, quando ele foi, oficialmente, aposentado. Sofreu, nesse meio tempo, diversos upgrades que potencializaram suas capacidades de cálculo, multiplicando por 5 a velocidade de processamento, mas é um fato que, mesmo antes de entrar em atividade, o ENIAC já era considerado obsoleto mesmo por seus criadores, mas o tempo era curto e a pressa em ter vantagem durante a guerra impedia que melhorias fossem feitas no projeto original de 1943. Mesmo antes do lançamento oficial do ENIAC, seus criadores já estavam trabalhando em seu sucessor, chamado EDVAC (Electronic Discrete Variable Automatic Computer) que trabalharia com o código binário e teria, enfim, memória com capacidade de armazenar dados e programas.
Curiosamente, diversas empresas disputaram na justiça a patente sobre a invenção do ENIAC, mas em 1973 uma decisão federal colocou a invenção do computador eletrônico digital em domínio público.

This work, unless otherwise expressly stated, is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.







{ 5 comments… read them below or add one }
Belíssimo texto. Obrigado.
Eu é que agradeço. Foi uma pesquisa muito divertida e esclarecedora.
Ola Henrique
http://pt.wikipedia.org/wiki/ENIAC
Cumprs
Manuel Benedito
Parabéns pelo artigo é de uma qualidade incrível
Muito obrigado. ^^