Informatica in pillole, con Attilio A. Romita (2)

Pubblicato il 23 Dicembre 2008 in da Vitalba Paesano

Nelle ultime righe dell’articolo precedente ho dato alcune informazioni sulle dimensioni di una caratteristica dei computer.
Penso che sia utile fare qualche riflessione sul valore reale espresso dai numeri che usiamo per definire le caratteristiche di un elaboratore.
Noi sentiamo gli “esperti” parlare di Kilo-yy (k), Mega-xx (M), Giga-kk (G), Tera (T). Questi termini non ci danno la reale impressione sul fatto che per passare da uno all’altro si deve moltiplicare per mille.
Volendo fare un esempio legato a fatti noti possiamo dire che l’Everest è alto 8000 m, cioè 8 km (kilo-metri), la Luna è distante mediamente dalla terra 38.000 km cioè 38 Mega-metri, Marte è distante mediamente 80.000.000 di Km cioè 80 tera-metri e per arrivarci una sonda spaziale impiega circa un anno cioè circa 525 Mega-ore e, per finire il sole è distante 130 tera-metri.
Facendo riferimento a valori economici con 1€ posso prendere un caffè, con 1 K€ posso passare un bel week end in Compagnia in Europa, con 1M€ posso comprarmi una bella casa al centro di Roma e con 1T€……beh mi farebbe piacere averli.
Dall’estremamente grande al molto piccolo. La velocità di elaborazione di un elaboratore viene indicata con il tempo che l’elaboratore impiega per fare una operazione semplice. Nel famoso 1967 quell’elaboratore d’avanguardia aveva un ciclo base di 11,5 micro secondi (milionesimi di secondo), oggi questo ciclo è inferiore a 1 nanosecondo (miliardesimo di secondo). L’uomo non riesce a concepire realmente queste differenze in quanto il più bravo di noi è capace di valutare al massimo differenze di molti minuti, ma se rapportiamo 1 nanosecondo ad una ora, allora 11,5 micro secondi sono 11 mila ore cioè circa 1 anno e 3 mesi. In pratica il nuovo elaboratore fà in un’ora quello che il vecchio faceva in un anno e tre mesi.
Questi pochi esempi spero possano aiutarvi a fare riflessioni “umane” sulle misure che caratterizzano un computer, la sua potenza e la velocità della sua evoluzione.

IL “CERVELLONE” È REALMENTE INTELLIGENTE?
Non voglio entrare in una discussione sull’intelligenza che vede schierati, con molte più capacità di me e secondo diversi punti vista, neurologi, psichiatri, psicologi e filosofi.
Tanto per capirci mi vorrei accordare con voi sulla idea che l’intelligenza è la capacità di scegliere autonomamente in funzioni del variare delle condizioni ambientali e basandosi sulle cognizioni che, chi deve decidere, ha al momento.
Può essere utile condividere un altro modo di identificare il pensiero esaminando due concetti: scoperta ed invenzione.
La scoperta è la conseguenza dell’analisi di una serie di fatti e fenomeni e porta alla conoscenza di un qualcosa che già esisteva, ma era nascosto.
L’invenzione è un modo nuovo di risolvere un problema basato sempre sull’analisi, ma con l’aggiunta finale di una “scintilla”, il pensiero creativo, che conduce all’invenzione.
Un elaboratore è dotato di grandi capacità di analisi e di sintesi, ma la sua intelligenza si limita a questo.
L’uomo può interpretare le sintesi fornite dall’elaboratore e con queste può “inventare qualcosa”.Un elaboratore, non è autonomo in quanto tutte le decisioni che prende derivano dalle decisioni che ha preso per lui la persona che lo ha costruito.
L’illusione che il cervellone sia un oggetto pensante cade tutte le volte in cui ci rendiamo conto, magari perché ci arriva un miliardo di € di tasse da pagare, che collaudate procedure gestite da potenti elaboratori hanno prodotto risultati erronei perché “il programmatore” non aveva previsto qualcosa.
Altra leggenda da sfatare è la bravura del “cervellone” a maneggiare grandi quantità: il cervellone è la dimostrazione reale che è possibile “svuotare il mare con un secchiello”. Un calcolatore per moltiplicare 100 per 10 non usa la tavola pitagorica, ma somma 100 volte la cifra 1 e ripete l’operazione 10 volte.
Inoltre il calcolatore è particolarmente “pigro” in quanto non usa le normali 10 cifre del sistema decimale che siamo soliti usare, infatti è capace di usare solo 2 cifre, 0 e 1, e con queste fa tutto con un grande dispendio di spazio. Ovviamente questa pigrizia non dipende da progettisti incapaci, ma deriva dal fatto che con uno strumento elettrico è facile accendere e spegnere qualcosa o vedere se qualcosa è acceso o spento.
Questa quantità minima di informazione che l’elaboratore è capace di comprendere ed usare è stata definita bit ed è opportuno sottolineare che un bit può assumere per definizione il valore SI oppure il valore NO e di conseguenza non possiamo con 1 bit dire NI piuttosto che SO. Per tradizione i due valori che il bit può assumere sono indicati con 0 ed 1. Mettendo insieme tanti bit è possibile individuare tutti i numeri e con opportune combinazioni (codifiche) possiamo individuare tutti i segni che vogliamo dalle 25 lettere dell’alfabeto latino alle migliaia di ideogrammi cinesi.
Due delle codifiche più comuni, e note con i loro strani nomi EBCDIC e ASCII, hanno definito il valore delle 256 combinazioni possibili con 8 bit. Ciascuna combinazione composta da 8 bit per convenzione si chiama BYTE.