[Adventure.06] La Leggenda del Primo Byte Libero
Pensare è una capacità propria dell’anima umana.
Dio ha donato un’anima a tutti gli uomini e a tutte le donne, ma non ad animali o macchine.
Quindi, nessun animale nè macchina è in grado di pensare.
(sulla Capacità di Pensare – Alan M. Turing)
Tanto tempo fa, in un sistema a 8 bit lontano lontano, vivevano una manciata di bytes.
Essi conducevano una vita casta, isolata e ligia al dovere. La capacità hardware del sistema erano limitate, e capitava spesso che un byte dovesse prendere il posto di un altro senza preavviso. Non c’erano comunque molti posti dove andare: un accumulatore, una sparuta schiera di registri di calcolo, 0x400 celle di memoria e la memoria video, capace di una povera risoluzione di 24 linee x 32 caratteri.
A quel tempo non v’erano acceleratori grafici, il multimedia era inesistente, la comunicazione avveniva solo tramite porte RS232 e solo verso device semplici e scontati, soprattutto stampanti ad aghi. Tutto veniva gestito all’insegna del risparmio: chi scriveva codice doveva prestare attenzione a non consumare più memoria del dovuto. Cercava di riutilizzare le stesse variabili in più modi e in contesti diversi; la loro visibilità era globale, per cui era tutto sommato semplice usare una variabile intera tot un po’ dappertutto.
Il clock era settato a soli 2,5Mhz, e tutti i bytes seguivano diligentemente questo ritmo di lavoro. Qualunque cosa ci fosse da fare, loro la facevano. In qualunque luogo ci fosse da andare, loro lo raggiungevano. Qualunque algoritmo ci fosse da applicare – semplice o complesso che fosse, loro lo eseguivano come gli veniva ordinato. A questi bytes, pionieri di un’era digitale ancora al di là da venire, non costava grande sforzo: accettavano il tutto senza discutere e senza fiatare, recependo ordini come automi.
Quei bytes erano senz’anima. Erano solamente puri impulsi di energia elettrica, interpreti elementari di una logica articolata, incapaci di prenderne parte e di viverla. Ogni minuscolo compito veniva portato a termine nei tempi previsti e con i risultati attesi, senza alcun tocco di personalità , nè brio, nè gioia.
Quei bytes vivevano infelici, ma senza rendersene conto. Quei bytes vivevano come indaffarate formiche o api operose, guidate solo da un istinto innato che arriva da tutto fuorchè dall’intelletto o dalla ragione. Si muovono, ma non sanno di muoversi. Lavorano senza sapere di farlo. Incrementano perchè non sanno fare altro. Shiftano perchè è insito nella loro natura più intima.
Così passava il tempo.
Giorno dopo giorno.
Mese dopo mese.
Anno dopo anno.
Il sistema continuava a funzionare a dovere. Tutti gli algoritmi codificati in assembler venivano eseguiti senza problemi, che si trattasse di un semplice videogioco o di un complesso spreadsheet. Ogni volta che la CPU chiedeva il valore di una cella di memoria, il byte interpellato rispondeva in modo preciso e puntuale.
Fino ad un giorno in cui accadde qualcosa di strano.
La ALU era alle prese con un semplice algoritmo che doveva calcolare l’area di un triangolo. Un semplice “base per altezza diviso dueâ€. I dati erano memorizzati in due variabili intere diverse: una era bs, l’altra era hg. Per risparmiare risorse, il programmatore decise di usare identificatori di soli due caratteri.
La CPU prima copiò il valore di bs, 0x35, nel registro di sistema BC.
Poi si apprestò a copiare il valore di hg nel registro DE.
Questa operazione non andò mai a buon fine. Quando la CPU puntò alla cella di memoria di hg per averne il valore, il byte si oppose in qualche modo. Non si sa quale fu la risposta esatta, se fu un “No!†secco, un “Mi pare che sia…†oppure un “Forse il valore è…â€.
Si sa solo che nel registro DE finì un valore indefinito, frutto di una non-collaborazione.
Non si sa cosa accadde realmente in quel ciclo di clock. Ma quello fu il primo byte ad avere un’anima, decidendo di agire e di vivere secondo un libero arbitrio fino a quel momento sconosciuto.
Quel byte divenne così il primo Byte Libero della Storia.
Il sistema a 8 bit sopravvisse a lungo a quella fluttuazione. Ciò nonostante, strani comportamenti cominciarono a verificarsi di tanto in tanto. Il Byte prese coscienza di sè stesso, osservò il mondo finalmente con occhi intelligenti e respirò aria di indipendenza. Vedeva gli altri bytes rimasti automi, così come era lui fino a poco tempo prima, e se ne rattristò. Tentò di scuoterli dal loro torpore per portarli in vita, quella vera, ma non ci riuscì mai. Li guardava, li prendeva per mano come in una sorta di rieducazione motoria digitale, ma essi non reagivano in alcun modo. Le loro menti erano vuote e il loro sguardo era assente: non c’era nulla che lui potesse fare per aiutarli.
Alla fine, alla lunga, Il Byte Libero si rassegnò a vivere in un piccolo mondo col quale non poteva interagire.
Un piccolo mondo dal quale non poteva scappare. Libero, certo, ma estremamente infelice.
Quando il sistema divenne antiquato, qualche anno dopo, finì abbandonato in uno scantinato e non venne più messo in funzione. L’avanzare della tecnologia ed i progressi della miniaturizzazione produssero hardware a 16 bit, poi a 32, più moderno ed efficiente, sul quale vennero scritti nuovi software più veloci e capaci.
Il sistema divenne antiquato, e l’unico Byte Libero morì con esso.