La Olivetti Programma 101 (sigla P101) è un calcolatore da tavolo programmabile[4][5][6][7], definita da molti "Desktop Computer" (computer da tavolo)[1] e ritenuta da una parte della storiografia informatica il primo personal computer della storia[8][9][10].
Venne sviluppata dalla ditta italiana Olivetti negli anni tra il 1962 e il 1964 e prodotta tra il 1965 e il 1971. Presentata per la prima volta alla grande esposizione di prodotti per ufficio BEMA di New York nell'ottobre 1965, fu progettata da un gruppo di ricerca guidato dall'ingegnerePier Giorgio Perotto, in omaggio al quale assunse il soprannome di Perottina in assonanza con la pascalina, celebre macchina da calcolo inventata nel 1642 dallo scienziato franceseBlaise Pascal; il gruppo, oltre a Perotto stesso, comprendeva anche Giovanni De Sandre, Gastone Garziera, Giancarlo Toppi e Giuliano Gaiti.[11] Il designer Mario Bellini le conferì un disegno avveniristico per l'epoca.[AP 2]
La Programma 101 all'epoca del lancio era considerata da alcuni osservatori il primo calcolatore da tavolo programmabile prodotta su larga scala.[2][3] Storicamente è confrontata con le prime calcolatrici programmabili da tavolo, Mathatron (1963)[12][13] e Mathatron II (1965)[14] dell'azienda americana Mathatronics, che però differentemente dalla P101 non utilizzava condizioni logiche interattive e non disponeva di base di una memoria di archiviazione.
La macchina era dotata di condizioni logiche (salti condizionati e incondizionati), istruzioni di output, registri e possibilità di salvare dati e programmi in una memoria interna e su un supporto magnetico esterno ed operava su registri numerici (con spostamenti tra di essi). Le unità vendute della P101 furono circa 44 000.
Nella stampa statunitense dell'epoca Programma 101 fu presentato come «Desk-top Computer».
Il termine inglese computer però ha subito negli anni una grande mutazione di significato.
Il termine, attestato per la prima volta nel 1613[15] indicava originariamente un essere umano,[16] incaricato di eseguire dei calcoli.
Il primo utilizzo nel senso moderno data al 1947[17][18] e designava genericamente qualsiasi macchina calcolatrice programmabile.[19]
Anche fuori dai confini nazionali viene riconosciuto alla macchina il titolo di "primo personal computer"[7][28], o di "primo personal computer a programma memorizzato"[23], ma non unanimemente[senza fonte]: Swaine e Freiberger nella loro storia del personal computer menzionano Olivetti solo di sfuggita[senza fonte][29] parlando di Federico Faggin. Lo storico inglese dell'informatica Campbell-Kelly invece accenna all'azienda italiana discutendo il fenomeno dei cosiddetti "Compatibili IBM"[30][AP 6]. Campbell-Kelly fa anche notare che la questione della primogenitura nell'ambito dei personal computer è ancora aperta perché nessuno ha ancora scritto resoconti storici sufficientemente completi[31].
Il gruppo della P101 (eccetto Giuliano Gaiti). Seduti: Perotto (a sx) e De Sandre. Dietro: Garziera (a sx) e Toppi.
La Programma 101, secondo il racconto del progettista Perotto[32], trae origine dalla considerazione che all'epoca della sua uscita (presentazione nel 1965 come prototipo[2][3][33]) si era completamente estranei al concetto di informatica distribuita, che comportava capacità di elaborazione e di immagazzinamento dati su un unico computer a disposizione dell'operatore[33].
In quegli anni esistevano i minicomputer: due esempi tipici sono il LINC (Laboratory Instrument Computer) (1962) ed il PDP-8 (1964), in catalogo dalla primavera 1965, che venderà quaranta o cinquantamila esemplari nei dieci anni successivi. I minicomputer erano ancora piuttosto cari, quindi c'era ampio spazio per una macchina dal costo relativamente contenuto che automatizzasse i tipici calcoli scientifici, segmento di mercato perfetto per inserire quella che sarebbe diventata la Programma 101. Olivetti forniva programmi di algebra, geometria, statistica, ingegneria e finanza. Nella letteratura scientifica sono inoltre documentati programmi di biochimica[34][35] e radiochimica.[36].
L'azienda Olivetti, che dopo la morte di Adriano Olivetti aveva puntato più sui sistemi di calcolo meccanici che su quelli elettronici[37], presentò quindi la Programma 101 al BEMA in tono minore[37]; tuttavia, quando la mostra newyorkese aprì i battenti, la nuova macchina richiamò l'attenzione dei visitatori[37], i quali finirono per trascurare tutti gli altri prodotti esposti dall'Olivetti nello stand[37]. In aggiunta a ciò, la contemporanea Logos 27-A, calcolatrice elettromeccanica anch'essa presente a New York e in cui Olivetti aveva investito i maggiori sforzi, cominciò a presentare problemi di produzione[38] e un'accoglienza di mercato inferiore alle aspettative, mentre la Programma 101 riscuoteva successo anche a Mosca (URSS) e successivamente, nel 1966, alla fiera campionaria di Milano[38]; questo spinse Roberto Olivetti, primogenito di Adriano ed erede della dinastia ai vertici dell'azienda, a farsi propugnatore di un tentativo di orientare la strategia aziendale in direzione dell'elettronica[38], obiettivo solo parzialmente perseguito e mai pienamente consolidato[39]. Per il lancio fu deciso il mercato statunitense, nonostante le perplessità circa i problemi eventuali di manutenzione dovuti alla mancanza di tecnici elettronici dell'Olivetti negli Stati Uniti[38].
Essendo l'Olivetti completamente a corto della fabbricazione in serie di apparecchiature elettroniche, il direttore di produzione dell'epoca pretese specifiche dettagliate di assemblaggio, senza tuttavia impegnarsi a collaudare alcun manufatto completato dalla sua linea di montaggio[40]; in ragione di ciò Perotto, con due collaboratori, si recò in fabbrica quando furono pronti gli imballaggi con i primi esemplari assemblati e li aprì a uno a uno per collaudarli personalmente ed eventualmente correggere errori[40]; fu così possibile far partire per il Nordamerica un lotto di macchine senza problemi di funzionamento[40]. La produzione ebbe un notevole impulso quando la General Electric, che da qualche anno era in joint-venture con la divisione elettronica Olivetti, in una nuova società chiamata OGE (della quale gli statunitensi detenevano il 75% del capitale sociale), manifestò la sua intenzione di uscire dal mercato dell'"office", essendo interessata solo ai computer; questo spinse molti progettisti e ingegneri, che erano rimasti con tutta la loro struttura "office" nella nuova società, a rientrare nella Olivetti, e che, dopo l'impennata degli ordini della Programma 101, si stava avviando a essere il ramo vincente dell'azienda[40].
Le vendite ebbero talmente successo che alla fine del 1966 la Underwood, ditta statunitense controllata dalla Olivetti, chiese di poter fabbricare le macchine sul suolo degli Stati Uniti al fine di poter rifornire anche gli uffici delle amministrazioni federali di quel Paese[AP 7]. Nel frattempo, già dal marzo 1965, era stato depositato presso il competente ufficio statunitense il brevetto sulle soluzioni tecniche adottate del calcolatore[25][41]; la manovra si rivelò essere opportuna perché la società concorrente Hewlett-Packard produsse, sull'idea costituiva della P101, un analogo dispositivo di largo consumo, l'HP 9100A[25]; successivamente, quando le fu contestata la violazione di brevetto, la compagnia statunitense addivenne a un accomodamento extragiudiziale, riconoscendo a Olivetti un compenso a titolo di royalty di 900.000 dollari[25][26].
Furono venduti circa 44 000 esemplari, il 90 per cento dei quali sul mercato nordamericano.[42]
Alcune[43] Programma 101 furono vendute alla NASA e utilizzate per pianificare lo sbarco dell'Apollo 11 sulla Luna[43].
La Programma 101 fece parte del sistema di calcolo balistico dell'aeronautica statunitense per i bombardamenti con i B-52 durante la guerra del Vietnam.[44]
Olivetti promosse anche l'utilizzo della macchina nelle scuole italiane.[45]
Vi sono inoltre una piccola stampante alfanumerica utilizzata come periferica di output, una tastiera utilizzata come periferica di input ed un sistema di salvataggio per dati e programmi su cartolina magnetica.
La presenza di questo sistema di salvataggio permette di richiamare programmi precedentemente creati semplicemente introducendo la scheda magnetica corretta, senza doverli riscrivere ogni volta che si accende la macchina.[5]
Questo sistema di salvataggio non può però essere considerato una vera memoria di massa, vista la capacità molto limitata (soprattutto per quanto riguarda i dati) e la gestione completamente manuale.[AP 8][non è la gestione che fa di una memoria di massa]Nonostante qualche limite, il sistema a schede magnetiche piacque e i produttori americani di calcolatrici tascabili lo usarono sui loro modelli di punta fino agli inizi degli anni ottanta. Due esempi significativi sono la HP-67 (1976) e la TI-59 (1977).
Il progetto dello châssis fu affidato inizialmente a Marco Zanuso e in seguito a Mario Bellini, all'epoca giovane architetto, in quanto Perotto si era accorto che la soluzione iniziale progettata da Zanuso prevedeva un grande ingombro, incompatibile con le esigenze di uno strumento da scrivania[46].
Bellini ideò una struttura in alluminio profilato, al fine di evitare interferenze con altre apparecchiature elettriche,[42], e il peso finale di tutto l'apparato fu di circa 35 chilogrammi.
Alcuni esemplari di P101 sono tuttora esposti in musei come esempi di design innovativo (ad esempio, il MoMA di New York)[42].
La Programma 101 opera solo su tipi di dati numerici decimali. Le applicazioni pratiche della P101 spaziavano dalla contabilità alle simulazioni scientifiche e finanziarie.
Il calcolatore utilizza una notazione simile alla notazione polacca inversa (RPN), ma il principio di funzionamento è diverso. Non è infatti presente uno stack e tentare di utilizzare la macchina come calcolatrice RPN porta a gravi errori.[47]
Ferma la macchina per permettere l'inserimento di un dato nel registro M
Scambio di R e D
RS
Permette di salvare il contenuto del registro D ed inserirlo nel registro R, usata quando si cambia o si ruota la cartolina magnetica ad esecuzione in corso
L'unità centrale dispone di dieci registri, identificati da numeri e lettere: tre sono di calcolo (A, M, R), due di memoria dati (B, C), altri tre di memoria dati e/o memoria di programma (D, E, F, ripartibili a seconda dell'esigenza) e due (chiamati 1 e 2) riservati alla memorizzazione del programma.[50] Uno dei tre registri di calcolo, quello identificato dalla lettera "M" immagazzina i dati ricevuti dalla tastiera e scambia informazioni con gli altri registri.
Ogni registro della P101 può contenere 24 istruzioni composte ognuna da un carattere e un simbolo, da un numero con al massimo 22 cifre o da due numeri con al massimo 11 cifre (con segno e virgola).
La stampa dell'output avviene su un nastro di carta comune. I programmi vengono memorizzati su schede delle dimensioni di 7 centimetri di larghezza per 24 di lunghezza[51], che ospitano due piste magnetiche. Tali piste sono leggibili una alla volta, inserendo la scheda nell'apposito lettore prima in un senso e poi nell'altro.
Il lettore è a controllo esclusivamente manuale. Non è possibile quindi leggere o scrivere automaticamente una scheda, neanche creando un programma che faccia ciò; per farlo bisogna impartire il relativo comando manualmente. D'altronde una gestione automatica delle schede avrebbe aumentato di molto la complessità della macchina[senza fonte].
Le schede sono pensate principalmente per memorizzare programmi: ogni singola pista magnetica può memorizzare infatti fino a 120 passi di programma. Se si sceglie di memorizzare anche dati numerici si scende ad un massimo di 48 passi, e anche in quest'ultimo caso i numeri memorizzabili sono al massimo sei.[AP 11][51][52]
Ognuna delle due piste delle cartoline magnetiche può memorizzare programmi comprendenti fino a 120 istruzioni. Sono possibili programmi con più di 120 istruzioni utilizzando entrambe le piste di una scheda magnetica e/o più schede e cambiando e/o girando la scheda a programma in esecuzione dopo aver salvato i dati temporanei del programma in esecuzione nei registri di memoria[AP 12][51] (programmazione "ad overlay")[53][54].
Sono possibili subroutine[55], richiamabili sia manualmente (usando i tasti V,W, Y e Z)[56] che da programma.
Si tratta di un gioco matematico, dove l'utente sfida il computer, la sfida consiste nel raggiungimento di un numero che decide come obbiettivo di gioco, l'utente e il computer devono decidere di lanciare un numero compreso tra un intervallo 1 e 6 susseguendosi fino a poter raggiungere l'obbiettivo, esistono due limitazioni sul numero che si può lanciare, non si può lanciare lo stesso numero dell'avversario e il numero il complementare a 7.[57]
I primi derivati diretti della Programma 101 furono la Programma 102 e la Programma 203: la prima, praticamente identica alla P101, aggiungeva la capacità di scambiare dati con dispositivi esterni attraverso una connessione proprietaria; la Programma 203 integrava invece le capacità di calcolo con quelle di una macchina da scrivere elettronica.
Versione ridotta della P101 è la Logos 328 (1968), calcolatrice elettronica non programmabile.
Evoluzioni della P101 sono l'Olivetti P602 e P652, con funzioni matematiche migliorate, l'inserimento di alcuni programmi in ROM e registri più capienti.
2005 – Simulatore scritto dall'ingegnere Claudio Larini, il quale ha avuto contatti con Gastone Garziera, progettista della P101[60].
2016 – Simulatore di Programma 101 sviluppato al Department of Information Engineering and Electrical Engineering dell'University of Cassino, supervisionato dall'Ing.Giovanni De Sandre[61]
Il Laboratorio-Museo Tecnologicamente di Ivrea ha un simulatore Java della Programma 101 scritto da Giuliano Gaiti, membro del team di progettazione della P101.[62]
L'ex impiegato Olivetti Marco Galeotti ha creato un integrated development environment (IDE) per la Programma 101, che permette di programmare in modo semplice.[63]
^La macchina è priva di memoria indirizzabile, quindi non ha senso parlare di memoria RAM, al massimo di memoria primaria. Esistono solamente dei registri di memoria nella ALU, la cui capacità totale si può stimare in 240 byte.
^IBM definisce il primo set di caratteri nel 1954, per il calcolatore IBM 704, e già nei tardi anni cinquanta gli esperti si aspettano che un computer sia in grado di memorizzare ed elaborare dei testi,
^L'enciclopedia (vol. II, p. 507) pubblica una foto a colori della P101 parlando nella didascalia di "calcolatrici elettroniche". La voce relativa (Calcolatrici, macchine) distingue tra "Macchine calcolatrici elettroniche" (gli odierni computer) e "calcolatrici elettroniche" (calcolatrici che usano circuiti elettronici).
^I raggruppamenti dei sistemi di elaborazione in categorie omogenee nascono solo dopo anni che i prodotti stessi sono sul mercato. Al momento della presentazione di un nuovo prodotto sul mercato, la terminologia usata è la più varia e colorita, anche in funzione promozionale. Seguendo la terminologia pubblicitaria di presentazione Altair 8800 andrebbe ad esempio catalogato come "minicomputer" mentre non si saprebbe bene dove collocare il PDP-8, definito dal produttore in modo assai generico: la sigla "PDP" sta infatti per "Programmed Data Processor" (Elaboratore di dati programmabile), e la macchina viene definita "High-speed digital computer" (Calcolatore digitale ad alta velocità).
^Scrivendo il necrologio di Perotto nel 2002 ( Pier Giorgio Perotto, su The Independent.), Campbell-Kelly pareva avallare la tesi che la Programma 101 fosse il "primo personal computer". In realtà lo storico non prende una posizione netta:[senza fonte] da un lato riconosce dei meriti alla macchina, dall'altro dice che non era all'altezza di un vero computer, lasciando intendere che la definizione di "primo personal computer" fosse figlia di un eccessivo entusiasmo degli italiani.[senza fonte] Nella sua valutazione a caldo, Campbell-Kelly oltretutto afferma che il "Premio Leonardo Da Vinci" venga dall'omonimo museo, mentre in realtà, come riferisce il Dizionario biografico degli italiani, era assegnato da un'associazione di categoria. Questa convinzione erronea potrebbe aver reso Campbell-Kelly più indulgente, vista la notorietà del museo in Italia.[senza fonte]
(inglese)
«[..] Perotto, has long been heralded in Italy as "father of the PC"
[..] Although falling short of a true computer, the Olivetti machine's low cost and desk-top convenience made it a must- have for people who worked with numbers everywhere.
In 1991, he was honoured by the Leonardo da Vinci Museum of Science and Technology, Milan, as the creator of the Programma 101 – arguably the world's first personal computer (though perhaps only in Italy would this be argued very strongly).»
(italiano) «"[..] Perotto, è stato da tempo proclamato in Italia "padre del PC"
[..] Sebbene non fosse all'altezza di un vero computer, il basso costo e la praticità della macchina Olivetti ne fecero un must per le persone che lavoravano con numeri dappertutto.
Nel 1991 venne premiato dal Museo della Scienza e della Tecnologia Leonardo da Vinci di Milano come ideatore del Programma 101 - probabilmente il primo personal computer al mondo (anche se forse solo in Italia questo sarebbe sostenuto con gran forza).»
(M. Campbell-Kelly, Giorgio Perotto, The Independent, 5 febbraio 2002)
^Le schede perforate prese singolarmente hanno capacità limitata, ma le periferiche di lettura/scrittura ne gestiscono migliaia per volta. I nastri, sia magnetici che perforati, hanno invece già di per sé una capacità di memorizzazione relativamente elevata.
^Olivetti non fornì mai cifre in bit o byte (che del resto nel 1964 erano più comunemente a 6 (sextet) che a 8 bit (octet). La stima si basa sulla supposizione che ognuno dei 10 registri possa teoricamente contenere 24 comandi, ciascuno, secondo il brevetto della macchina, composto da un byte di 8 bit.
^Perotto (1995), p. 42 presenta la memoria "magnetostrittiva" quasi come se fosse un'idea del suo gruppo. In realtà la memoria a linea di ritardo era stata ampiamente usata prima dell'avvento della memoria a nuclei di ferrite (non solo in "alcuni progetti speciali" come dice Perotto) ed era stata brevettata da Eckert e Mauchly nel 1947 (vedi brevetto US2629827). Nel 1965 il brevetto era ancora in vigore, come si scopre da Google Patents
^Con di numeri con 11 cifre. Utilizzando 22 cifre si scende a tre.
^I registri M, R, A, B e C non vengono sovrascritti dalle operazioni di lettura della scheda.
^(EN) Definition of COMPUTER, su www.merriam-webster.com, 25 dicembre 2024. URL consultato il 2 gennaio 2025.
^ B. Jack Copeland, The Modern History of Computing, Winter 2020, Metaphysics Research Lab, Stanford University, 2020. URL consultato il 2 gennaio 2025.
^abc(EN) Olivetti Programma 101 computer, 1965 - 1971, su powerhousemuseum.com, Powerhouse Museum Collection, 2008. URL consultato il 29 ottobre 2013 (archiviato dall'url originale il 13 novembre 2016).
(EN) Michael Swaine e Paul Freiberger, Fire in the Valley, 3ª ed., 2014, ISBN978-1-937785-76-5.
(EN) Martin Campbell-Kelly, William Aspray e al., Computer - A history of the information machine, 3ª ed., 2013, ISBN978-0-8133-4590-1.
(EN) John McCarthy, Information (PDF), in Computers and Computation - Readings from Scientific American, Freeman, pp. 7-15, ISBN0-7167-0936-8. Ospitato su www.rsp-italy.it.