Vai al contenuto principale
RiferimentoStoria dell’informaticaPrincipiante

Macchina analitica: il computer meccanico immaginato da Babbage

Scopri la macchina analitica di Charles Babbage: Store, Mill, schede perforate, cicli e principi di una macchina programmabile.

Pubblicato 31 luglio 2026Aggiornato 15 settembre 2026Lettura : 8 minDi Yann Bastien
Modello meccanico del Mill della macchina analitica di Charles Babbage esposto al Science Museum di Londra
Mostra indice
  1. Prima della macchina analitica: la macchina differenziale
  2. Da calcolatrice specializzata a macchina programmabile
  3. Store e Mill
  4. Programmare con schede perforate
  5. Cicli e controllo condizionale
  6. Ada Lovelace e i programmi della macchina
  7. Più che semplici quantità
  8. Perché non fu mai completata?
  9. Una gigantesca installazione meccanica
  10. Decimale, non binaria
  11. Era Turing-completa?
  12. Babbage, Turing e von Neumann
  13. L’idea centrale: separare macchina e programma
  14. Evitare gli anacronismi
  15. In sintesi
  16. Domande frequenti
  17. Chi inventò la macchina analitica?
  18. Qual era la differenza con la macchina differenziale?
  19. Funzionò davvero?
  20. Che cosa erano Store e Mill?
  21. Come veniva programmata?
  22. Ada Lovelace fu la prima programmatrice?
  23. Era un computer moderno?
  24. Era Turing-completa?

La macchina analitica (Analytical Engine) immaginata da Charles Babbage nel XIX secolo occupa un posto unico nella storia dell’informatica. Non fu mai completata durante la vita del suo progettista e materialmente aveva poco in comune con i computer elettronici comparsi più di un secolo dopo. La sua architettura riuniva però idee fondamentali di una macchina programmabile di uso generale: memoria, unità di calcolo, istruzioni, dati e controllo dell’ordine delle operazioni.

Babbage non cercava più soltanto di costruire una calcolatrice specializzata. Immaginava una macchina il cui comportamento potesse cambiare attraverso un programma. Questa distinzione rappresenta una tappa essenziale nella storia del calcolo automatico.

Prima della macchina analitica: la macchina differenziale

All’inizio dell’Ottocento scienziati, ingegneri, navigatori e astronomi utilizzavano numerose tavole numeriche. Calcolo manuale, copiatura e stampa potevano introdurre errori.

Babbage volle meccanizzare il processo. La sua Difference Engine, o macchina differenziale, sfruttava le differenze finite per produrre automaticamente determinate tavole matematiche. Il progetto, avviato negli anni 1820 con il sostegno del governo britannico, richiedeva migliaia di componenti meccanici di precisione. Difficoltà tecniche, finanziarie e organizzative impedirono di completarlo.

Babbage andò allora oltre: invece di perfezionare soltanto una macchina specializzata, immaginò un dispositivo capace di eseguire calcoli diversi in base alle istruzioni ricevute. Nacque così la macchina analitica.

Da calcolatrice specializzata a macchina programmabile

La macchina differenziale era pensata per una famiglia definita di calcoli. La macchina analitica avrebbe dovuto eseguire sequenze differenti di operazioni senza ricostruire il meccanismo per ogni compito.

Babbage separava così la macchina fisica dal programma che ne determina il comportamento. Oggi è normale usare lo stesso computer per scrivere, modificare immagini o analizzare dati cambiando software. Negli anni 1830 l’idea era radicale.

Store e Mill

Babbage chiamò due parti principali Store e Mill. Lo Store conservava i numeri durante i calcoli mediante ruote decimali. La sua funzione ricorda quindi una memoria, pur essendo fisicamente lontanissima dall’elettronica moderna.

Il Mill eseguiva le operazioni. I valori potevano essere trasferiti dallo Store, trasformati e nuovamente memorizzati. Erano previste addizione, sottrazione, moltiplicazione e divisione.

Il confronto con memoria e processore è utile solo sul piano funzionale: il Mill non era una CPU vittoriana. L’aspetto notevole è l’organizzazione logica.

Programmare con schede perforate

Per controllare una macchina generale, Babbage si ispirò alle schede perforate dei telai di Joseph-Marie Jacquard, che permettevano di cambiare il disegno tessuto senza ricostruire il telaio.

Babbage applicò il principio al calcolo. Alcune schede dovevano specificare le operazioni, altre selezionare o controllare le variabili. Una sequenza di schede poteva descrivere una procedura complessa. Il programma esisteva quindi su un supporto fisico esterno alla meccanica interna.

Cicli e controllo condizionale

La macchina non doveva semplicemente leggere una lunga lista di operazioni una sola volta. Babbage prevedeva meccanismi per ripetere sequenze, concettualmente simili a un ciclo moderno:

ripeti 10 volte:
    esegui un'operazione

I risultati potevano inoltre influenzare il seguito delle operazioni, in modo concettualmente analogo a una condizione:

se condizione:
    fai A
altrimenti:
    fai B

I meccanismi reali erano meccanici e storicamente differenti, ma memoria, aritmetica, ripetizione e controllo rendevano il progetto molto più di una semplice calcolatrice.

Ada Lovelace e i programmi della macchina

La macchina analitica è inseparabile da Ada Lovelace. Conobbe Babbage negli anni 1830 e si interessò profondamente alle sue macchine.

Nel 1842 l’ingegnere italiano Luigi Federico Menabrea pubblicò in francese una descrizione della macchina basata su una conferenza di Babbage. Lovelace la tradusse in inglese e aggiunse note personali molto più estese del testo originale.

Una di esse descrive una procedura per calcolare i numeri di Bernoulli. È spesso definita il primo programma informatico pubblicato per una macchina generale, ma la formula richiede prudenza: la macchina completa non esisteva e anche Babbage aveva elaborato procedure.

Il punto storico più importante è che Babbage e Lovelace ragionavano già su programmi per una macchina generale mai completata fisicamente.

Più che semplici quantità

Lovelace comprese anche che i numeri manipolati dalla macchina potevano rappresentare qualcosa di diverso dalle quantità. Se, per esempio, relazioni musicali fossero codificate in modo appropriato, la macchina potrebbe manipolare tali rappresentazioni secondo regole.

Non stava descrivendo l’informatica multimediale moderna, ma coglieva la distinzione fondamentale tra simboli fisici e ciò che rappresentano. È lo stesso principio generale che consente ai computer di elaborare testo, immagini e suoni come informazioni codificate.

Lovelace sottolineò inoltre che la macchina non inventava autonomamente: eseguiva ciò che gli esseri umani sapevano ordinarle. Più di un secolo dopo Alan Turing avrebbe ripreso esplicitamente questa obiezione discutendo l’intelligenza delle macchine.

Perché non fu mai completata?

Non esiste una sola causa. La macchina richiedeva moltissimi componenti di precisione, costi elevati e uno sforzo industriale eccezionale. I rapporti di Babbage con il governo britannico peggiorarono dopo le difficoltà della macchina differenziale e sorsero contrasti anche con l’ingegnere e costruttore Joseph Clement.

Babbage continuava inoltre a rivedere e migliorare i progetti invece di fissare rapidamente una versione definitiva. La macchina analitica rimase quindi soprattutto un insieme di piani, disegni, descrizioni e componenti parziali.

Questo non significa che i principi meccanici di Babbage fossero impossibili. Il Science Museum di Londra costruì in seguito una Difference Engine No. 2 completa dai suoi piani, e funziona. Ricostruire la macchina analitica è più difficile perché i suoi progetti continuarono a evolversi.

Una gigantesca installazione meccanica

La macchina sarebbe stata enorme, con migliaia di ruote, assi, ingranaggi e meccanismi di trasmissione alimentati da una fonte meccanica esterna.

Babbage pensò anche all’uscita dei risultati, che potevano essere stampati, cercando di ridurre gli errori umani di trascrizione. Si riconosce già una catena funzionale familiare: input → elaborazione → memoria → output.

Decimale, non binaria

La macchina analitica era progettata in decimale, con ruote che rappresentavano le cifre da 0 a 9. I computer elettronici moderni usano generalmente il binario perché l’elettronica si presta bene a due stati, ma il binario non è un requisito per una macchina programmabile generale. Il progetto di Babbage aiuta a distinguere la logica del calcolo dalla sua rappresentazione fisica.

Era Turing-completa?

La domanda usa un concetto sviluppato un secolo dopo. La Turing-completezza riguarda la capacità teorica di un sistema di eseguire qualsiasi calcolo realizzabile da una macchina di Turing, date risorse adeguate.

La macchina analitica prevedeva memoria, operazioni, ripetizione e controllo del flusso. Alcune analisi moderne interpretano quindi certi progetti come capaci di calcolo generale. Storicamente, però, è più prudente definirla macchina programmabile di uso generale.

Babbage, Turing e von Neumann

Definire Babbage l’unico inventore del computer moderno sarebbe fuorviante. Il suo progetto riunì molto presto memoria, calcolo, istruzioni, dati, ripetizione, controllo e input/output, ma l’informatica moderna deriva anche da progressi nella logica, elettromeccanica, elettronica, teoria dell’informazione, architettura e linguaggi.

Babbage cercava di progettare una macchina fisica programmabile. Turing, nel 1936, costruì un modello matematico astratto per definire la calcolabilità. I due progetti rispondono a domande differenti.

Anche il confronto con l’architettura di von Neumann richiede prudenza. Nella macchina analitica le istruzioni provenivano soprattutto da schede esterne ed erano separate dallo Store dei valori. Nei computer a programma memorizzato, istruzioni e dati possono risiedere in memoria. La macchina anticipò importanti funzioni di un computer generale, ma non l’architettura a programma memorizzato.

L’idea centrale: separare macchina e programma

La macchina analitica non funzionò mai come installazione completa. Eppure i piani di Babbage riunivano proprietà essenziali di una macchina programmabile generale e le note di Lovelace mostravano che era già possibile ragionare su programmi e rappresentazioni prima che la macchina esistesse fisicamente.

In una macchina generale, parte della funzione non è più fissata nel meccanismo: è definita dalle istruzioni. Lo stesso hardware può comportarsi diversamente in base al programma. Questa idea divenne fondamentale nel XX secolo e appartiene direttamente alla storia della distinzione moderna tra hardware e software.

Evitare gli anacronismi

La macchina analitica non era elettronica né binaria, non aveva transistor o memoria elettronica, non memorizzava il programma come un computer moderno e non fu mai completata come sistema pienamente operativo.

Queste differenze non ne riducono l’importanza. Mostrano quanto fosse ambizioso il progetto nel suo vero contesto: Babbage tentò di realizzare una macchina programmabile generale usando tecnologia meccanica del XIX secolo.

La storia successiva collega schede Jacquard, macchine di Babbage, note di Lovelace, teoria del calcolo di Turing, computer elettronici, programma memorizzato e linguaggi. Nessun singolo passaggio spiega il computer moderno, ma la macchina analitica è uno dei primi progetti a riunire diverse idee fondamentali.

In sintesi

Progettata dagli anni 1830, la macchina analitica di Charles Babbage superava la macchina differenziale specializzata e puntava a una macchina programmabile di uso generale.

Prevedeva uno Store per i valori, un Mill per le operazioni, schede perforate per il controllo del programma e meccanismi di ripetizione, controllo e input/output.

Ada Lovelace ebbe un ruolo essenziale nell’interpretazione del progetto. Le sue note trattavano la macchina non soltanto come calcolatrice, ma come sistema capace di manipolare rappresentazioni secondo regole.

Non era un computer elettronico né un computer a programma memorizzato ante litteram. Il suo contributo centrale è più preciso: la stessa macchina può svolgere compiti diversi in base al programma che le viene fornito.

Domande frequenti

Chi inventò la macchina analitica?

Il matematico britannico Charles Babbage la progettò a partire dagli anni 1830.

Qual era la differenza con la macchina differenziale?

La macchina differenziale automatizzava soprattutto determinate tavole numeriche. La macchina analitica doveva eseguire programmi differenti e calcoli generali.

Funzionò davvero?

No. Non fu mai completata una macchina analitica interamente operativa.

Che cosa erano Store e Mill?

Lo Store conservava numeri e risultati intermedi; il Mill eseguiva operazioni aritmetiche. Le loro funzioni possono essere paragonate con prudenza a memoria e unità di calcolo.

Come veniva programmata?

Babbage prevedeva schede perforate, ispirate anche ai telai Jacquard, per fornire istruzioni e controllare variabili.

Ada Lovelace fu la prima programmatrice?

È spesso definita così per la procedura pubblicata sui numeri di Bernoulli. La storia è più sfumata perché anche Babbage elaborò procedure, ma il suo contributo resta fondamentale.

Era un computer moderno?

No. Era meccanica, decimale e programmata soprattutto tramite schede, pur includendo funzioni concettualmente familiari come memoria, calcolo, controllo e input/output.

Era Turing-completa?

Alcune analisi moderne ritengono che i progetti di Babbage disponessero di meccanismi sufficienti per il calcolo generale. Storicamente, macchina programmabile di uso generale è una descrizione più precisa.

Questo articolo ti è stato utile?

Fonti e riferimenti

  1. 1.Computer History Museum - The Engines
  2. 2.Science Museum Group - Punched cards for Babbage’s Analytical Engine
  3. 3.Raúl Rojas - How Charles Babbage invented the Computer
  4. 4.History of Science Museum - Imagining AI: Babbage & Lovelace