Questo scritto si origina da un percorso didattico che ho svolto quest’anno durante le lezioni di storia con gli studenti del terzo anno del corso di informatica e telecomunicazioni. La scelta non non è stata dettata solamente da una mera ottemperanza alle indicazioni nazionali, ove, si legge nella sezione dedicata agli istituti tecnologici, è richiesto di «correlare la conoscenza storica generale agli sviluppi delle scienze, delle tecnologie e delle tecniche negli specifici campi professionali di riferimento». Assumendo come base metodologica le riflessioni epistemologiche emerse nei precedenti anni di insegnamento in merito alla necessità di raggiungere una dimensione “reticolare” della conoscenza, il percorso si è proposto di ascendere ad una prospettiva interdisciplinare che sottraesse la storia al suo isolamento fittizio e la restituisse al confronto con saperi e linguaggi diversi, nello specifico attinenti alla disciplina d’indirizzo del corso.

Cos’hanno in comune il digitale e il Medioevo? Cosa lega la debole luce azzurrina degli odierni videoschermi alla presunta oscurità di un’età a torto ritenuta “barbarica” e regressiva? Ormai la storiografia è allineata nel definire il Medioevo come un proficuo “laboratorio” (politico, filosofico, umanistico e scientifico) della civiltà europea. Nel Sacro Romano Impero di Carlo Magno possiamo scorgere (con uno sguardo retrospettivo) un “proto-nucleo” politico, economico e legislativo dell’ancora lontana Europa Unita; a partire dal VI-VII secolo, dall’Italia alla Scandinavia, risuonano i primi vagiti delle moderne lingue europee (germanico, norreno, lingue romanze e slave); tra  l’XI e il XIII secolo, i troubadores provenzali, i giuristi della corte federiciana di Palermo, gli scaldi norreni e i minnesanger germanici, elaborano quelle che saranno le basi della poesia europea; nello stesso periodo, con le trasformazioni socio-economiche avviate intorno all’Anno Mille, nascono e si sviluppano (soprattutto a Firenze e a Genova) i prototipi di molte delle attuali tecniche economiche e finanziarie, oltre a modelli di organizzazione produttiva quasi “proto industriali” (settore tessile); con i processi di consolidamento delle monarchie feudali, iniziano a prendere forma i lineamenti di molti dei futuri Stati dell’Europa occidentale e orientale; contestualmente, con l’attività di decine di intellettuali poliedrici e cosmopoliti quali Gerberto d’Aurillac (poi Papa Silvestro II), Alberto Magno, Leonardo Fibonacci o Luca Pacioli, trovano dibattito molte questioni del sapere scientifico e tecnologico destinate a influenzare le epoche successive.

Beda il Venerabile

Una di queste ultime riguarda proprio l’informatica o, meglio, le basi teoriche e fisiche del moderno computing, attraverso un lungo ed esile filo che, percorso a ritroso, ci riporta nella Britannia altomedievale, precisamente nella regione della Northumbria. Qui, nel VII secolo d.C., vive ed opera un monaco benedettino, Beda (definito in seguito “il Venerabile”), autore di opere storiche, letterarie e scientifiche. In una di queste, il De ratione temporum, nel capitolo intitolato De computo vel loquela digitorum (“Dell’arte di calcolare o il linguaggio delle dita”), questo poliedrico studioso metteva a punto un codice dattilonumerico per rappresentare un sistema di calcolo “digitale”, ossia con le dita (dal latino digitus, “dito”). Associando poi ai numeri interi le lettere latine, Beda aveva creato anche una sorta di “Morse” ante litteram. Ma, tralasciando la parte letterale, è la parte numerica che ci interessa.

Sembra che la tecnica del calcolo con le dita, o dattilonomia, o indigitatio, esistesse già nell’antico Egitto (tracce se ne scorgono ad esempio nelle sculture del Censimento del bestiame, conservato al museo del Cairo). Da lì si sarebbe diffusa poi nell’occidente greco-romano e nell’oriente persiano. La prima descrizione completa dell’indigitatio, si ha nel Liber de computo di Cirillo d’Alessandria, nel cap. CXXXVIII, intitolato De flexibus digitorum, datato al IV sec. d.C.. Secondo Georges Ifrah (Storia universale dei numeri, pag. 91) i romani utilizzavano regolarmente la tecnica dell’indigitatio (ad essa accennano Plutarco, Giovenale, Apuleio), donde si deduce come la dattilonomia numerica godesse di una certa diffusione già nell’antichità, e non solo occidentale. Un analogo codice dattilonumerico, ancora basato sull’indigitatio, si riscontra anche nel Vicino Oriente, precisamente in Persia. La sua descrizione si trova nel dizionario persiano Farhangi Djihangiri, datato al XVI secolo, ma è verosimile che il codice fosse ben più antico: in un passo delle sue Vitae infatti, Plutarco riferisce della presenza di “calcoli con le dita” già alla corte del re persiano Artaserse III (vissuto tra IV e III sec. a.C.).

(fig. 2) La “indigitatio” di Beda (VII sec. d.C.) secondo la rappresentazione di George Ifrah

Al modello dell’indigitatio romana si è poi ispirato, nell’Alto Medioevo, il Venerabile Beda, attraverso il riferimento al Liber di Cirillo contenuto nel Liber etimologiarum voluto dal vescovo Isidoro di Siviglia tra VI e VII secolo. Ed è proprio Beda che, con il suo codice, consegna all’Europa medievale, ed all’intera storia europea successiva, il sistema del calcolo digitale: il codice di Beda è probabilmente alle radici di un famoso enigma matematico posto da Alcuino di York ad uno dei figli di Carlo Magno; viene poi ripreso nel X secolo da un altro ingegno eclettico, il monaco Ràbano Mauro che, nel suo De numeris, ce ne dà la prima rappresentazione grafica che si conosca, ripresa poi nel XV secolo in uno dei capitoli della Summa de arithmetica del matematico pisano Luca Pacioli. Il codice ha poi continuato a godere di una diffusione eccezionale anche nel Rinascimento ed oltre, giacché si ritrova nel

4fc8dc798555a50fb9d7fb6065fab251--hand-signals-art-medieval
(fig. 3) La “indigitatio” di Beda rappresentata nel De Numeris di Rabano Mauro

Theatrum Arithmetico-Geometricum redatto nel XVIII secolo dal matematico tedesco Jacob Leupold. Come si può osservare nelle figg. 2 e 3, nell’indigitatio non viene semplicemente associata la quantità di oggetti alla corrispondente quantità di dita, poiché ogni cifra viene rappresentata attraverso una combinazione diversa delle dita stesse, che possono essere estese o piegate. Siamo appunto dinanzi ad un calcolo, non soltanto ad un conto.

Ora, è davvero possibile connettere siffatto codice dattilonumerico all’informatica e al digitale? Può sembrare eccentrico, almeno fin quando non si osserva che il moderno sistema di numerazione binario (ovvero in base 2), sul quale poggiano l’informatica e il digitale, è anch’esso rappresentabile con la stessa tecnica dell’indigitatio alla base degli antichi sistemi dattilonumerici (fig. 4).

(fig. 4) La rappresentazione “digitale” del sistema di numerazione binario

Nella rappresentazione “digitale” del sistema binario, il dito svolge la medesima funzione del bit: il dito alzato vale 1 mentre il dito abbassato vale 0. Così facendo, è possibile rappresentare con le dita la scrittura binaria dei numeri. Come?

Ad esempio, il numero decimale 2 in binario è dato dalla sequenza 10. Per trasformare un numero decimale in numero binario, occorre continuare a dividere il numero per 2 sino a quando il quoziente è nullo. La sequenza dei resti (espressa in “1” e “0”) darà il numero corrispondente in binario. Perciò, volendo trasformare il numero decimale 2 in binario, si proceda così:

2 : 2 = 1

               resto 0

1 : 2 = 0                            

               resto 1

L’ordine di lettura, condotto dall’ultimo resto al primo resto, darà la sequenza del corrispondente binario di 2: appunto, 10 (uno-zero). Quindi:

2(10) = 10(2)

In figura (4), l’ordine di lettura sulla mano è orientato dal pollice al mignolo, ossia da destra verso sinistra: il pollice quindi corrisponde al primo resto che si incontra nelle divisioni, ossia allo 0, mentre l’indice all’1, ossia all’ultimo resto. La rappresentazione del 2 decimale con l’indigitatio binaria darà pertanto la terza combinazione da sinistra della prima riga in fig. 4.

Se invece si volesse trasformare il numero binario in decimale, si dovrebbe moltiplicare ogni cifra del numero binario per la potenza di 2 corrispondente al suo valore posizionale (tenendo sempre presente che la lettura del codice binario è orientata da destra verso sinistra e, pertanto, la posizione più a destra sarà lo zero). Quindi

10(2) = (1 x 21) + (0 x 20) = 2(10)

Proviamo ora con il numero decimale 9: in binario è espresso dalla sequenza 1001 (sempre letta da destra verso sinistra). Per ottenere il corrispondente binario si applichi il procedimento sopra esposto:

9 : 2 = 4

               resto 1

4 : 2 = 2

               resto 0

2 : 2 = 1                                    

               resto 0

1 : 2 = 0      

               resto 1

Come si può di nuovo notare, l’ordine di lettura, condotto dall’ultimo resto al primo resto, darà la sequenza del corrispondente binario di 9: appunto, 1001 (uno-zero-zero-uno). Quindi:

9(10) = 1001(2)

Tenendo presente quanto già osservato relativamente l’ordine di lettura delle dita (dal pollice al mignolo, ossia da destra verso sinistra), il pollice rappresenta il primo resto che si incontra nelle divisioni, ossia l’1, l’indice abbassato il secondo resto (0), il medio abbassato il terzo (0), mentre l’anulare rappresenta l’ultimo resto (1). La rappresentazione del 9 decimale con l’indigitatio binaria darà pertanto la seconda combinazione da sinistra della seconda riga in fig. 4.

Volendo trasformare il numero binario in decimale, si moltiplichi ogni cifra del numero binario per la potenza di 2 corrispondente al suo valore posizionale (tenendo sempre presente che la lettura del codice binario è orientata da destra verso sinistra e, pertanto, la posizione più destra è lo zero). Quindi

1001(2) = (1 x 23 )+ (0 x 22)+ (0 x 21)+ (1 x 20) = 8 + 0 + 0 + 1 = 9(10)

Consideriamo, come ultimo esempio, il numero 13, che in cifre binarie è espresso come 10001. Per ottenere il corrispondente binario si procede con il solito procedimento:

13 : 2 = 6

                  resto 1

6 : 2 = 3

                  resto 0

3 : 2 = 1

                  resto 1

1 : 2 = 0

                  resto 1

Notiamo ancora che l’ordine di lettura, condotto dall’ultimo resto al primo resto, darà la sequenza del corrispondente binario di 13: appunto, 1011 (uno-zero-uno-uno). Quindi:

13(10) = 1101(2)

Tenendo presente quanto già osservato relativamente l’ordine di lettura delle dita (dal pollice al mignolo, ossia da destra verso sinistra), il pollice rappresenta il primo resto che si incontra nelle divisioni (1), l’indice abbassato il secondo resto (0), il medio alzato (impudicus digitus) il terzo (1), mentre l’anulare rappresenta l’ultimo resto (1). La rappresentazione del 9 decimale con l’indigitatio binaria darà pertanto la terza combinazione da destra della seconda riga in fig. 4.

E volendo trasformare il numero binario in decimale, si moltiplichi ogni cifra del numero binario per la potenza di 2 corrispondente al suo valore posizionale (tenendo sempre presente che la lettura del codice binario è orientata da destra verso sinistra e, pertanto, la posizione più destra è lo zero). Quindi

1101(2) = (1 x 23 )+ (1 x 22) + (0 x 21) + (1 x 20) = 8 + 4 + 0 + 1 = 17(10)

L’indigitatio di Jacob Leupold

Come si diceva sopra, la dattilonomia numerica di Beda viene ripresa tra il XVII e il XVIII secolo dal matematico Jacob Leupold, contemporaneo di Leibniz, il filosofo prussiano al quale una certa tradizione farebbe risalire l’invenzione del sistema numerico binario (mentre secondo altri vanterebbe una paternità cinese). In realtà, già Francesco Bacone si serviva di un’aritmetica a due soli simboli. Leibniz fu colui che iniziò ad utilizzare le cifre “0” e “1” per codificare i numeri descrivendo al contempo le regole principali del sistema di numerazione binaria. Naturalmente il sistema binario poteva anche essere rappresentato per mezzo dell’indigitatio, dando origine così, oltre al linguaggio delle prime macchine calcolatrici (costruite proprio da Leibniz), anche alla dattilonomia numerica binaria e non più ternaria, come doveva essere quella di Beda. Difatti, confrontando le figure (3) e (4) si nota come il sistema di numerazione di Beda e quello binario differiscano nel fatto che, nel primo, le dita sono articolate non su due ma su tre posizioni: dito interamente alzato, dito mezzo alzato e dito abbassato. E’ quindi probabile che l’indigitatio di Beda, di derivazione romana, fosse in base 3. Ma il concetto di fondo non cambia.

Sia nel caso dell’indigitatio in base 3 che in quella in base 2, possiamo considerare il dito alla stregua del bit o del trit (a seconda che sia in base 2 o 3). Com’è noto, il bit in informatica rappresenta l’unità di misura elementare dell’informazione e viene rappresentato alternativamente con le cifre 0 e 1 che rappresentano i due simboli del nastro perforato o le posizioni del circuito elettrico: vuoto/pieno, on/off, acceso/spento, sì/no, vero/falso.

Nell’indigitatio ogni cifra viene rappresentata attraverso una combinazione diversa delle dita stesse, che possono essere estese o piegate; i computer utilizzano gli interruttori come dita per calcolare, trasformando gli impulsi elettrici in codice binario. In questo modo, così come nell’indigitatio si ha una combinazione di dita sulla mano, in informatica e in elettronica si ha una combinazione di movimenti di corrente elettrica all’interno delle schede elettroniche (dapprima intere pareti di relais, diodi e transistors, poi microchip grandi quanto un’unghia).

La rappresentazione “digitale” delle potenze del due, alla base del metodo di calcolo binario

 

Un moderno microprocessore

In sintesi, l’indigitatio ha rappresentato il primo calcolatore della storia. Dal dito si arriva al bit, dalla mano allo hardware e dalla tecnica dell’indigitatio ai moderni sistemi operativi. Il codice dattilonumerico è un antico “sistema operativo” per calcolare (o “computare”) mentre la mano è lo hardware che lo sostiene e le dita i bit, le unità minime di questo primordiale sistema informatico: dal tessuto organico al silicio (o altri materiali). Un concetto riassumibile secondo il seguente schema:

Dito -> bit

Mano -> hardware

Indigitatio / dattilonomia numerica -> sistema operativo

A chiusura di questo breve viaggio nella storia, se si considera che la lingua costituisce una fonte storica (in questo caso preterintenzionale), si potrebbero inseguire le radici del digitale e dell’informatica anche per via linguistica.

“Digitale” si ricollega al latino digitus, ossia “dito”. Ciò riguarda sì l’uso delle dita, ma non nel pigiare i tasti o i touch-screen dei moderni mezzi di telecomunicazione, bensì all’antica tecnica dell’indigitatio. “Digitale”, ossia: “relativo al calcolo con le dita”, le cui combinazioni sono traducibili nelle combinazioni delle due cifre del sistema di numerazione binario.

Una traccia di quest’antica etimologia latina, e un ricordo dell’antica tecnica dell’indigitatio, è rimasto nella lingua inglese, come un fossile linguistico sopravvissuto ai secoli: digit significa infatti “numero” (mentre l’italiano ha in parte perso questo legame, dato che il termine “cifra” deriva dall’arabo zifrà, che indicava originariamente lo zero). In inglese dunque, il termine che indica la “cifra” è ancora  oggi connesso all’idea informazionale dell’antica rappresentazione dattilonumerica.

E l’inglese computer? Non deriva dal latino tardo computare (“calcolare”)? La mano e le dita “computavano” ciò che oggi è “computato” dal microprocessore.

Lat. Digitus “dito” -> ingl. digit, “cifra” > it. digitale, “relativo al calcolo con le dita”

Lat. computo “io calcolo” -> ingl. computer “colui che calcola”

La mano dunque è stata la prima macchina calcolatrice della storia e, in fondo, il microprocessore del computer che stiamo utilizzando non svolge una funzione poi tanto differente dalla mano sulla quale “giravano” le antiche indigitationes delle dattilonomie numeriche.

Ed allora come può il pensiero non correre allo storico francese Marc Bloch, e alla sua definizione di storia come «scienza che studia gli uomini nel tempo» e di tempo storico come «un immenso continuum in cui le grandi vibrazioni sono perfettamente in grado di propagarsi dalle molecole più lontane fino alle più vicine»? La storia studia scientificamente e integralmente l’uomo, in tutte le sue manifestazioni, culturali, spirituali, tecnologiche. Contestualmente, la storia è quel continuum in cui anche i fatti più lontani sono connessi da fili, talvolta invisibili, che sta allo storico dissotterrare o riannodare, permettendo così la comprensione del passato attraverso il presente e, correlativamente, la comprensione del presente attraverso il passato, tramite un costante andirivieni mai definitivo.

Il calcolo digitale e la “testa parlante” di Gerberto D’Aurillac

Alla luce di siffatte connessioni ci si potrebbe spingere a connettere ulteriormente queste informazioni a quella che è stata definita una delle prime intelligenze artificiali della storia: la celebre “testa parlante” che la tradizione vorrebbe assemblata nel X secolo d.C. da Gerberto D’Aurillac (poi salito al soglio pontificio con il nome di Silvestro II). Riferimenti ad essa sono contenuti in numerose fonti, tutt’ora custodite nella Biblioteca Vaticana. Il Migne ce ne dà una descrizione piuttosto dettagliata:

«Possedeva (Gerberto) nel suo palazzo, una testa di bronzo che rispondeva “si” o “no” alle domande che egli le rivolgeva sulla politica e sulla situazione della cristianità. Secondo Silvestro II questo procedimento era molto semplice e corrispondeva al calcolo con sole due cifre».

Nessuno purtroppo sa esattamente su quale architettura si basasse una simile creazione, poiché la testa sembra sia stata distrutta (forse per motivi religiosi) dopo la morte del grande studioso. Tuttavia, l’ultimo particolare citato dal Migne potrebbe dare qualche indizio. Il fatto che funzionasse “con sole due cifre” ci permetterebbe di ipotizzare una relazione circolare tra la testa, il codice binario odierno (che funziona appunto con due cifre, 1-0) e la tecnica del calcolo digitale contemporaneo alla costruzione della testa.

Ma nel Medioevo non esistevano né relais, né diodi, né transistors. Su quale supporto, dunque, la testa avrebbe potuto “computare”, ossia elaborare, le cifre di eventuali sistemi binari o ternari? Qui si entra davvero nel campo delle pure ipotesi, tuttavia, a rigor di logica, non sarebbe da scartare l’idea di una sorta di nastro perforato ante litteram, simile a quelli utilizzati dai primi calcolatori e automi del secolo scorso (ad esempio la celebre macchina di Turing). Su tale nastro, il foro e il pieno equivalevano alle cifre 1 e 0 del sistema binario: le istruzioni in codice binario venivano quindi composte in sequenze di “buchi” e “pieni” che la macchina doveva leggere ed eseguire. Questi “buchi nella memoria” in realtà risalivano a ben prima del XX secolo: se ne trovano menzionati già alla fine del XVIII secolo, applicati ai telai meccanici. Se Gerberto avesse utilizzato qualcosa di simile per far funzionare la sua testa, avrebbe avuto una macchina forse non dotata di autonomia cosciente ma senz’altro in grado di esprimersi in base a determinate istruzioni.

 

 

 

 

 

© RIPRODUZIONE RISERVATA

Annunci