Percorso: ilMac.net > Macopinioni > Articoli > La storia dell'informatica


La storia dell'informatica

1 - Prima del computer. Gli anni '30 e la seconda guerra mondiale

La storia dell'informatica può dirsi cominciare, in un senso molto lato, con l'introduzione dell'abaco nel 2000 a.C.; le macchine per calcolare poi non hanno subito per migliaia di anni particolari modifiche o innovazioni specifiche. Solo nel '600 la tecnica raggiunse un livello tale da permettere la costruzione di antenati delle odierne calcolatrici: famose rimangono la “pascalina”, progettata da Blaise Pascal, e la macchina da calcolo di Leibniz, in grado persino di estrarre la radice quadrata.

Meno famosa fu la prima macchina calcolatrice, che venne realizzata nel 1623 a Tubingen da un professore di matematica e astronomia, Schickard, in grado di eseguire le quattro operazioni basilari dell'aritmetica. Il prototipo andò purtroppo distrutto e la storia non ebbe diffusione troppo ampia, tanto che ancora oggi molti ritengono a torto la pascalina come la prima macchina calcolatrice della storia (anche se con ogni probabilità la sua invenzione fu indipendente e da attribuirsi tutta al genio di Pascal).

Le macchine calcolatrici non si diffusero a causa della delicatezza dei loro meccanismi; solo agli inizi dell'800 conobbero una diffusione, specialmente in ambito bancario e commerciale (sono di quest'epoca i primi registratori di cassa, ad esempio). Fu in quest'epoca che però furono definiti gli elementi concettuali che sono alla base dei calcolatori 1 moderni, ad opera dell'inglese Charles Babbage. Costui progettò, su finanziamento del governo inglese, una macchina (il “motore differenziale” o “macchina differenziale”, differential engine) che potesse essere usato per calcolare tavole astronomiche senza il rischio di imprecisioni umane. Il progetto prevedeva che il “motore” fosse in grado di eseguire non già una singola operazione ma una serie di esse secondo un ordine prestabilito (il concetto di “programmazione”); il metodo delle differenze impiegato da Babbage gli consentiva di effettuare i calcoli grazie a una serie successiva di addizioni, e a tale scopo egli realizzò un sistema di ruote dentate in grado di svolgere addizioni con riporto nell'ordine necessario alla macchina. Fu anche progettato un sistema per incidere i risultati su una lastra di rame, in modo tale da evitare errori di trascrizione da parte di coloro che avessero dovuto, in seguito, riportare i risultati su carta.


Un'immagine di Charles Babbage

Ma Babbage realizzò, nella pratica, solo una piccola parte di quello che avrebbe voluto. Anche perchè il motore differenziale non era più la prima delle sue priorità, in quanto egli si stava dedicando alla “macchina” o “motore analitico” (analythical engine), suo sogno che, se realizzato, avrebbe anticipato di un secolo la realizzazione del calcolatore vero e proprio. Tale macchina prevedeva non più una serie fissa di operazioni ma una “programmabilità” vera e propria ottenuta attraverso schede perforate, in modo simile ai “telai programmabili” che si erano diffusi all'epoca, inventati da J. Jacquard. Il motore analitico prevedeva anche un'istruzione di salto condizionale, ovvero di modifica dell'ordine delle istruzioni in base a una condizione; Babbage ne prevedeva l'implementazione tramite l'avvolgimento o il riavvolgimento del nastro secondo la condizione inserita. Anche questa macchina non fu però mai realizzata, e il lavoro di Babbage fu dimenticato.


Il motore differenziale, prototipo

Laddove le calcolatrici facevano passi da gigante, il concetto del “motore analitico” non trovò altri “sostenitori” ancora per lungo tempo. L'elaborazione automatica dei dati ebbe un grande impulso solo grazie al lavoro di Hermann Hollerith, che nel 1890 inventò una macchina per il conteggio tramite schede perforate che trovò largo uso negli uffici statunitensi per il censimento di quello stesso anno. Questo tipo di macchine si diffuse rapidamente negli uffici sia governativi che privati e indusse Hollerith a fondare una società per la commercializzazione di quelle che venivano chiamate “meccanografiche”. Questa società diventerà nel 1924 la International Business Machine (IBM).

Nel frattempo, la matematica continuava il suo sviluppo; nasceva, più o meno nello stesso periodo di Babbage, quella branca della matematica, l'algebra di Boole, che consente la rappresentazione con simboli matematici delle proposizioni logiche (ovvero di quelle frasi che sono dotate di un valore di verità, “vero” oppure “falso”). Il lavoro di Boole venne ampiamente usato in seguito da altri, come Claude Shannon che ne fece la base della sua teoria della commutazione negli anni '30; con questo linguaggio sono state costruite le fondamenta della logica nella programmazione dei moderni calcolatori.


Una foto di Konrad Zuse (1910 - 1995)

Il concetto della macchina programmabile fu ripreso da Konrad Zuse negli anni '30. Costui realizzò un calcolatore programmabile, ma per inesperienza utilizzò non i sistemi meccanici a ruote (costruiti attorno alla base 10) ma preferì utilizzare i relé, elementi meccanici in grado di essere attivi o spenti. Questo segnò il primo calcolatore che utilizzasse la base 2 invece della base 10, anticipando lo “stato dell'arte” di diverse decine di anni; il lavoro di Zuse fu però sostanzialmente ignorato dalla comunità scientifica di allora. Una curiosità: il governo nazista rifiutò di sovvenzionare i calcolatori della “serie Z” di Zuse perchè la loro realizzazione, secondo i calcoli del Reich, avrebbe richiesto più tempo di quello che il governo tedesco contava di impiegare prima della fine della guerra. Inutile dire che i nazisti, oltre ad aver perso una delle grandi invenzioni di questo secolo, si erano tremendamente sbagliati sul calcolo dei tempi; Zuse non rimase poi in Germania durante la guerra, ma riparò in Svizzera dove continuò il proprio lavoro.

Gli Alleati, invece, non avevano invece sottovalutato l'importanza delle macchine per il calcolo automatico avrebbero potuto avere nel conflitto in corso; infatti, fu durante la guerra che venne costruito uno dei primi veri “computer”; nominato Colosso, ne furono costruite due versioni (Mark I e Mark II), e della seconda versione ne furono costruite ben dieci unità. Il lavoro a cui Colosso era dedicato era la decifrazione dei messaggi nazisti intercettati, codificati con una macchina chiamata Enigma, di progettazione americana ma comprata e modificata dai reparti tecnici nazisti. Colosso era prevalentemente composto da elementi meccanici, ma incorporava già idee che saranno poi riprese successivamente, come l'uso dell'elettronica; all'algoritmo di decifrazione avevano lavorato molti matematici britannici dell'epoca nella base segreta alleata di Bletchley Park, nella campagna inglese. Il vantaggio strategico derivante dalla decodifica di Enigma fu enorme: ad esempio, la marina italiana perse, a causa delle trasmissioni intercettate, tre incrociatori pesanti e due cacciatorpediniere nella battaglia di Capo Matapan del 28 marzo 1941; e furono sempre i messaggi decifrati da Colosso ad aiutare gli Alleati nel progettare lo sbarco in Normandia, cogliendo impreparati i tedeschi e capovolgendo le sorti della guerra. Dopo la fine di quest'ultima, pare sia stato Churchill stesso a ordinare la distruzione di tutte le copie di Colosso “in frammenti non più grandi di una mano”; la storia di queste macchine fu declassificata e divulgata dal governo inglese solo nel 1970, e pertanto in molte fonti non se ne trova alcuna traccia. Si può però affermare, senza troppe incertezze, che fu Colosso il primo vero e proprio “computer” elettromeccanico della storia.


Alan Turing (1912 - 1954)

Tra i matematici responsabili della realizzazione dell'algoritmo di decifrazione, usato poi da Colosso, figurava Alan Turing, noto come il “padre della computazione”; a guerra iniziata, a poco meno di trent'anni d'età, era già famoso per aver proposto la sua teoria della macchina universale, un formalismo matematico utilizzato per descrivere e studiare le macchine programmabili, e il concetto di computabilità che legava gli algoritmi ad altre branche già esistenti della matematica, consentendo così di studiare sia la macchina che le operazioni che quesa doveva eseguire in termini puramente matematici, facendo così nascere una teoria del calcolo automatico che è uno dei pilastri della moderna informatica teorica. A detta di molti, il lavoro di Turing ebbe per l'informatica un impatto paragonabile a quello che il lavoro di Einstein ebbe sulla fisica; l'applicazione tecnica dei teoremi da lui creati e di altri teoremi relativi all'informazione, come quelli formulati da Claude Shannon alla fine degli anni '30, fecero da base alla progettazione e costruzione dei primi computer.

L'unico altro computer costruito durante la guerra, se si eccettua Colosso, fu lo Z3 di Konrad Zuse, che non fermò mai le proprie ricerche; utilizzando i relé, era in grado di effettuare calcoli in virgola mobile con un sistema binario, proprio come i computer moderni. L'unico prototipo di Z3 andò purtroppo distrutto durante la guerra, e la ricerca, al di fuori degli ambienti segretissimi degli Alleati, subì una battuta d'arresto.

Con la distruzione di Colosso e la costruzione di ENIAC alla fine della guerra termina la prima fase della storia dei calcolatori, la “preistoria” dell'informatica. I calcolatori costruiti a partire da ENIAC in poi sono noti come computer della prima generazione e sono i primi veri esempi di computer elettronici e programmabili che il mondo conobbe.


Immagine di un computer Colosso. Complesso di Bletchley Park, Devonshire.


Data di pubblicazione: 09-11-2004
L'intero contenuto di questo sito è © dal 1998 del Team di ilMac.net, è vietata ogni riproduzione senza il consenso scritto da parte degli autori.