Supercomputer/Macchina Analitica

Indice del libro

La macchina analitica (analytical engine in lingua inglese) è un importante passo della storia dell'informatica. La macchina analitica è stato il primo progetto di un computer meccanico sviluppato per eseguire compiti generici. Il progetto venne sviluppato dal professore di matematica Charles Babbage che cercò anche di realizzarla praticamente. La prima descrizione del progetto si ebbe nel 1837 sebbene Babbage continuò a sviluppare il progetto fino alla sua morte avvenuta nel 1871. Per motivi politici e finanziari la macchina non venne mai sviluppata, ma i moderni personal computer hanno notevoli analogie con la macchina analitica pur essendo stati sviluppati quasi cento anni dopo.

Alcuni storici ritengono che con le competenze tecniche dell'epoca la macchina non avrebbe potuto funzionare mentre altri storici ribattono che un supporto politico e finanziario maggiore avrebbe permesso di superare i problemi tecnici e quindi avrebbe permesso la costruzione della macchina.

Progetto modifica

Inizialmente Charles Babbage progetto lo sviluppo della macchina differenziale una macchina meccanica ideata per realizzare dei lunghi tabulati dei logaritmi e delle funzioni trigonometrici. Durante lo sviluppo del progetto Babbage si rese conto di poter progettare una macchina generica molto più potente e interessante dal punto di vista pratico.

La macchina analitica doveva essere alimentata da un motore a vapore e doveva essere lunga più di 30 metri per 10 metri di profondità. I dati d ingresso e il programma sarebbero stati inseriti tramite schede perforate, un metodo già utilizzati per programmare i telai meccanici dell'epoca e che verrà utilizzato anche dai primi computer. I dati di uscita sarebbero stati prodotti da uno stampatore e da un arco in grado di tracciare curve. La macchina sarebbe stata in grado di perforare delle schede per memorizzare dei dati da utilizzare successivamente. La macchina utilizzava una aritmetica in base 10 a virgola fissa. la memoria interna sarebbe stata in grado i contenere 1000 numeri di 50 cifre. L'unita aritmetica sarebbe stata in grado di svolgere le quattro operazioni aritmetiche base.

Il linguaggio di programmazione utilizzato dalla macchina era un linguaggio molto simile al moderno assembler. Cicli e salti condizionati erano previsti nel linguaggio rendendo il linguaggio (e quindi anche la macchina) Turing completo. Tre differenti tipi di schede perforate erano previste. Una tipologia di schede perforate erano riservate alle operazioni matematiche, un altro tipo era previsto per le costanti matematiche e il terzo tipo serviva ad caricare e salvare i dati.

Nel 1842 il matematico italiano Luigi Federico Menabrea a un congresso ascolta Babbage descrivere il progetto della macchina analitica. Menabrea realizza una descrizioni in Francese della macchina. Il lavoro di Menabrea viene tradotto in inglese e significativamente ampliato da Ada Lovelace. Lovelace negli anni successivi realizzerà molti lavori teorici per la macchina analitica e in onore del suo lavoro un moderno linguaggio di programmazione è stato chiamato Ada.

Parziale costruzione modifica

Nel 1878 il comitato della British Association for the Advancement of Science si pronuncio contro la costruzione della macchina analitica e questo vanifico la speranze di Babbage di poter accedere a sovvenzioni governative.

Nel 1910 il figlio di Babbage, Henry P. Babbage affermo che una parte della macchina analitica era stata effettivamente costruita e era stata utilizzata per calcolare una lista (errata) di multipli del pi-greco. La parte costruita era una piccola parte del progetto completo, non era programmabile e non era dotata di unità di memorizzazione.

La macchina analitica viene considerato il primo computer mai costruito anche se questa definizione viene contestata da diversi storici dato che la macchina non è mai stata realmente completata.