4 Creare contenuti per il web - Andrea Giachetti
4 Creare contenuti per il web - Andrea Giachetti
4 Creare contenuti per il web - Andrea Giachetti
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Computer ed informazione digitale 9<br />
stessa cosa: un dispositivo capace di memorizzare ed elaborare dati digitali sulla base di<br />
sequenze di comandi preordinati. Nel corso degli anni, <strong>per</strong>ò, sono cresciute in modo<br />
esponenziale la potenza di calcolo delle CPU, la quantità di spazio a disposizione <strong>per</strong><br />
memorizzare i dati e le velocità di trasferimento degli stessi all'interno ed all'esterno della<br />
macchina. Questo ha consentito di cambiare radicalmente le modalità di interazione con la<br />
macchina.<br />
E' probab<strong>il</strong>mente nota a tutti la famosa “legge di Moore”, un'ipotesi avanzata negli anni 60 da<br />
Gordon Moore, co-fondatore di Intel (nota casa produttrice di microprocessori) che prevedeva<br />
una crescita esponenziale (cioè un raddoppio ogni 18 mesi) del numero di transistor dei<br />
processori (e quindi un sim<strong>il</strong>e incremento delle capacità di calcolo) e che si è sostanzialmente<br />
rivelata esatta fino al nuovo m<strong>il</strong>lennio. Oggi acquistiamo normalmente <strong>per</strong>sonal computer con<br />
CPU che lavorano a frequenze intorno ai 2 GigaHertz, <strong>il</strong> ché significa che in un secondo<br />
vengono eseguiti in esse due m<strong>il</strong>iardi di o<strong>per</strong>azioni elementari sincronizzate dai cicli del clock,<br />
cioè dell'orologio che scandisce i tempi dell'attività della CPU stessa. Questo fa capire come un<br />
moderno calcolatore possa interagire in tempo reale con l'utente (nel tempo in cui inseriamo un<br />
dato o ci accorgiamo di un cambiamento sullo schermo, dell'ordine del decimo di secondo, la<br />
CPU ha tempo di accorgersi dell'azione dell'utente, eseguire m<strong>il</strong>ioni di o<strong>per</strong>azioni di calcolo,<br />
cambiare la rappresentazione sullo schermo, e così via.<br />
Un moderno PC ha, poi, una memoria RAM dell'ordine dei Gigabyte, cioè m<strong>il</strong>ioni di m<strong>il</strong>ioni di<br />
byte. Questo consente, ad esempio, di elaborare dati digitali che non rappresentano solo numeri<br />
o caratteri di testo, ma codificano anche grandezze fisiche come suoni ed immagini,<br />
consentendo le moderne applicazioni multimediali (anche grazie allo sv<strong>il</strong>uppo di efficienti<br />
tecniche di codifica e compressione che <strong>per</strong>mettono di rappresentare i dati multimediali<br />
ut<strong>il</strong>izzando una quantità ridotta di memoria e di cui parleremo nel capitolo 5).<br />
I calcolatori moderni sono inoltre dotati di dispositivi di memorizzazione di massa (cioè<br />
memorie che mantengono i dati <strong>per</strong>manentemente a macchina spenta) di grandissima capacità,<br />
ovvero dischi rigidi che oggi arrivano al Terabyte, cioè m<strong>il</strong>ioni di m<strong>il</strong>iardi di byte, ma anche<br />
CD, DVD, Blu-Ray, memorie flash, che <strong>per</strong>mettono di salvare <strong>per</strong>manentemente tali dati e<br />
averli accessib<strong>il</strong>i all'occorrenza.<br />
1.2 Algoritmi e programmi<br />
L'incredib<strong>il</strong>mente grande capacità di calcolo e memorizzazione (ossia la potenza dell'hardware)<br />
non basta, <strong>per</strong>ò, a capire come mai i calcolatori siano diventati strumenti così versat<strong>il</strong>i ed<br />
ut<strong>il</strong>izzati <strong>per</strong> le più disparate applicazioni.<br />
Per capirlo dobbiamo considerare quindi anche l'evoluzione del software, cioè dei programmi<br />
che vengono fatti eseguire ai calcolatori e dei dati che questi elaborano. I primi calcolatori<br />
venivano ut<strong>il</strong>izzati <strong>per</strong> compiere o<strong>per</strong>azioni ripetitive su dati <strong>per</strong>lopiù numerici oppure risolvere<br />
automaticamente problemi matematici di cui sia nota la metodologia di soluzione (ad esempio<br />
risolvere un'equazione di secondo grado dati i coefficienti o trovare <strong>il</strong> volume di un solido dati i<br />
parametri geometrici): sebbene la complicazione tecnica sia notevole, <strong>il</strong> fatto che tali compiti si<br />
possano realizzare con lo strumento elettronico è intuitivo. Basta infatti avere una<br />
rappresentazione binaria dei dati di interesse e tradurre le o<strong>per</strong>azioni necessarie a completare<br />
l'elaborazione richiesta in una serie di azioni eseguib<strong>il</strong>i dalla CPU. Svolgere questo compito è<br />
quello che in informatica si dice implementare (cioè realizzare in pratica) un algoritmo,<br />
creando un programma eseguib<strong>il</strong>e. Nei primi modelli di calcolatore questo comportava un<br />
enorme lavoro di codifica, dato che era necessario scrivere direttamente <strong>il</strong> programma nel