Os primeiros computadores de uso geral
Fig. 3 Z1, computador electromecânico construído por KonradZuse
O primeiro computador electromecânico foi construído por KonradZuse (1910–1995). Em 1936, esse engenheiro alemão construiu, a partir de relês que executavam os cálculos e dados lidos em fitas perfuradas, o Z1. Zuse tentou vender o computador ao governo alemão, que desprezou a oferta, já que não poderia auxiliar no esforço de guerra. Os projetos de Zuse ficariam parados durante a guerra, dando a chance aos americanos de desenvolver seus computadores.
Foi na Segunda Guerra Mundial que realmente nasceram os computadores atuais. A Marinha dos Estados Unidos, em conjunto com a Universidade de Harvard, desenvolveu o computador Harvard Mark I, projectado pelo professor Howard Aiken, com base no calculador analítico de Babbage. O Mark I ocupava 120m³ aproximadamente, conseguindo multiplicar dois números de dez dígitos em três segundos.
Simultaneamente, e em segredo, o Exército dos Estados Unidos desenvolvia um projeto semelhante, chefiado pelos engenheiros J. PresperEckert e John Mauchly, cujo resultado foi o primeiro computador a válvulas, o EletronicNumericIntegrator And Calculator (ENIAC)[2], capaz de fazer quinhentas multiplicações por segundo. Tendo sido projectado para calcular trajectórias balísticas, o ENIAC foi mantido em segredo pelo governo americano até o final da guerra, quando foi anunciado ao mundo.
Fig. 4 ENIAC, computador desenvolvido pelo Exército dos Estados Unidos.
No ENIAC, o programa era feito rearranjando a fiação em um painel. Nesse ponto John vonNeumann propôs a ideia que transformou os calculadores electrónicos em “cérebros electrónicos”: modelar a arquitectura do computador segundo o sistema nervoso central. Para isso, eles teriam que ter três características:
Codificar as instruções de uma forma possível de ser armazenada na memória do computador. Von Neumann sugeriu que fossem usados uns e zeros.
Armazenar as instruções na memória, bem como toda e qualquer informação necessária a execução da tarefa, e
quando processar o programa, buscar as instruções directamente na memória, ao invés de lerem um novo cartão perfurado a cada passo.
Este é o conceito de programa armazenado, cujas principais vantagens são: rapidez, versatilidade e Auto modificação. Assim, os computadores programáveis que conhecemos hoje, onde o programa e os dados estão armazenados na memória ficaram conhecidos como Arquitectura de vonNeumann.
Fig. 5 Visão simplificada da arquitectura de Von Neumann.
Para divulgar essa ideia, vonNeumann publicou sozinho um artigo. Eckert e Mauchy não ficaram muito contentes com isso, pois teriam discutido muitas vezes com ele. O projeto ENIAC acabou se dissolvendo em uma chuva de processos, mas já estava criado o computador moderno.