In quale paese è stato inventato il computer e da chi?

Dipende da come si vuole definire il computer. Sto limitando questa discussione ai computer digitali, e ignorando quelli analogici, che sono una bestia completamente diversa.

Inghilterra, 1837. Charles Babbage descrive i progetti per il suo Analytical Engine, un computer meccanico digitale che usa schede perforate come input e che fu costruito solo parzialmente. Includeva il controllo sequenziale, la ramificazione e il looping, e sarebbe stato Turing-completo. Nel 1843, Ada Lovelace sviluppò un algoritmo che avrebbe permesso al Motore di calcolare una sequenza di numeri di Bernoulli, ed è quindi considerato da alcuni il primo programmatore di computer al mondo.

Inghilterra, 1936. 99 anni dopo, il principio del computer moderno viene descritto per la prima volta dallo scienziato informatico Alan Turing nel suo documento seminale, On Computable Numbers. Tuttavia, a causa del suo lavoro nella seconda guerra mondiale per decifrare i codici tedeschi, non sarà coinvolto nella progettazione effettiva di un computer elettronico fino al progetto Pilot-ACE (1950).

Germania, 1941. Konrad Zuse completa lo Z3, il primo computer digitale programmabile elettromeccanico funzionante al mondo. Includeva circa 2000 relè, faceva aritmetica in virgola mobile a 22 bit ed era considerato marginalmente completo alla Turing (aveva il looping ma non la ramificazione condizionale). L'Istituto tedesco di ricerca aeronautica lo usava per eseguire analisi statistiche di fluttuazione delle ali. Lo Z3 originale fu distrutto il 21 dicembre 1943 durante un bombardamento alleato su Berlino.

USA, 1942. John Atanasoff e Clifford Berry dell'Iowa State College (poi Università) sviluppano l'Atanasoff-Berry Computer (ABC), il primo computer elettronico digitale. Utilizzava l'aritmetica binaria, aveva circa 300 tubi a vuoto e utilizzava condensatori fissati in un tamburo che ruotava meccanicamente per la memoria. L'ABC non era però programmabile, ed era progettato solo per risolvere sistemi di equazioni lineari. Tuttavia 30 anni dopo, sarà dimostrato che ha influenzato la progettazione dell'ENIAC, e quindi invalidare i brevetti di quest'ultimo.

Inghilterra, 1943. Tommy Flowers a Bletchey Park progetta Colossus, considerato il primo computer elettronico digitale programmabile al mondo, anche se era programmato da interruttori e spine e non da un programma memorizzato. Come l'ABC, è anch'esso ad uso speciale e fu usato solo per decifrare il cifrario tedesco Lorenz. Utilizzava 2400 tubi a vuoto (valvole nel Regno Unito). Aveva un input su nastro di carta e poteva essere configurato per eseguire una varietà di operazioni logiche booleane sui suoi dati, ma non era Turing-completo. Ne furono costruiti dieci.

main-qimg-b38181bcace6ee7301646833f9fafb88.webp

Colossus

USA, 1945. John von Neumann scrive la prima bozza di un rapporto sull'EDVAC, in cui descrive un'architettura di computer in cui programmi e dati si trovano nello stesso spazio di indirizzi. Ora chiamata architettura di von Neumann, è il modello per tutti i computer usati oggi, tranne quelli usati in molti sistemi embedded che usano l'architettura Harvard (programma e dati in spazi di memoria separati). I computer britannici EDSAC a Cambridge (1949) e la Manchester Small-Scale Experimental Machine (1948) sono i primi computer funzionanti che hanno seguito il suo progetto.

USA, 1946. John Mauchly e J. Presper Eckert dell'Università della Pennsylvania progettano l'ENIAC (Electronic Numerical Integrator and Computer), il primo computer elettronico digitale programmabile di uso generale al mondo. Inizialmente conteneva 17.468 tubi a vuoto e utilizzava l'aritmetica decimale piuttosto che binaria. Per l'input e l'output si usavano schede perforate.

main-qimg-376e427767521ca732b74149d0cff513

Programmazione dell'ENIAC

L'ENIAC doveva essere usato per computare le tabelle di tiro dell'artiglieria per il Ballistics Research Laboratory, ma i primi programmi eseguiti furono effettivamente usati per studiare la fattibilità di una bomba all'idrogeno. Era Turing completo. Tuttavia, come il Colossus, fu inizialmente programmato usando interruttori e spine (vedi foto sopra). Una memoria di sola lettura fu aggiunta nel 1948, che fu usata per la prima volta in aprile. Mauchly e Eckert progetteranno in seguito l'UNIVAC I, il primo computer commerciale prodotto negli Stati Uniti nel marzo 1951.

Inghilterra, 1948. Il Manchester SSEM (Small-Scale Experimental Machine) viene sviluppato come banco di prova per l'utilizzo dei tubi elettrostatici Williams come memoria del computer. Aveva una memoria di sole 32 parole (32 bit ciascuna) e conteneva 550 tubi a vuoto. È considerato da alcuni il primo computer elettronico digitale memorizzato al mondo. Ha eseguito il suo primo programma dalla memoria a tubi elettrostatici nel giugno del 1948, ma questo era in realtà due mesi dopo la prima dimostrazione di ENIAC della sua capacità di memoria di sola lettura.

La dimostrazione di successo del SSEM'ha portato rapidamente alla costruzione di un computer più pratico, il Manchester Mark 1. La prima versione era operativa nell'aprile 1949, e a sua volta portò direttamente allo sviluppo del Ferranti Mark 1, il primo computer general-purpose disponibile in commercio, battendo l'UNIVAC I di un mese (febbraio 1951).

main-qimg-ce1423a609d297c0975b413025b052b7.webp

Manchester Mark 1