Introduzione all'informatica
Oggi nessuno può fare a meno dell'informatica in quanto si socializza, tramite i computer e i cellulari, sui social e si scambiano documenti e comunicazioni.
Storia dell'informatica
Dal punto di vista storico l'informatica nasce nel III sec. a.C. a opera di Euclide, un matematico greco, che creò l'algoritmo (aprendo inconsapevolmente la strada verso l'informatica), un metodo per calcolare, a suo tempo, il massimo comun divisore di due numeri senza usare il ragionamento ma solo attraverso il "metodo a passi" (che consiste nel seguire passo a passo le istruzioni).
Con questo Euclide non comprese la portata enorme della sua scoperta perché per lui era solo un semplice metodo, senza farne una scienza, ma da questo momento altri matematici si basarono sull'algoritmo di Euclide come:
- Al-khwarizmi (780 d.C.-850 d.C.), un matematico persiano, che pubblicò un metodo a passi per risolvere equazioni lineari e di secondo grado.
- George Boole: nel 1947 Boole inventò una algebra, nota come algebra booleana, che utilizza solo due valori, ovvero "vero" (1) e "falso" (0). Questo si rivelò fondamentale per i computer perché nacque il sistema binario.
Nel 1936, nonostante la vicinanza allo scoppio della Seconda Guerra Mondiale, Alan Turing studiò e sviluppò la teoria degli algoritmi e della computabilità, grazie alla sua "Macchina di Turing", con lo scopo di decifrare i messaggi codificati dei nazisti.
A partire dal secondo dopoguerra l'informatica iniziò a progredire con velocità impressionante: nel 1988 l'IBM costruì il SSEC, ovvero un calcolatore dotato di una memoria di 50kB, che dava la possibilità di memorizzare i programmi con i quali eseguire le operazioni. Per qualche anno queste tecnologie rimasero solo accessibili per compiti militari o universitari in quanto costose e difficili da utilizzare.
Convergenza ICT
Negli anni '60 iniziò il fenomeno di convergenza ICT, ovvero un fenomeno che, grazie allo sviluppo della ricerca nel settore delle tecnologie per il calcolo automatico, permette alle persone comuni di approcciarsi con la tecnologia grazie ai minori costi dei computer e al minore volume di essi. I primi utenti comuni a dotarsi di computer furono le banche, le quali necessitavano di nuovi mezzi tecnologici perché il loro lavoro era fortemente caratterizzato da operazioni di calcolo e di attività di contabilità, per poi allargarsi ulteriormente alle grandi industrie (che avevano bisogno dei computer per l'automatizzazione dei magazzini e del controllo della produzione).
Entrando negli anni '70 iniziarono a svilupparsi le tecnologie di rete, ponendo le basi per Internet, e iniziò anche la trasformazione dell'ICT in una tecnologia commerciale (dando la possibilità di acquisire un maggior numero di utenti). Da questo momento nacquero i linguaggi "di alto livello", chiamati così perché si cercò di agevolare la programmazione attraverso istruzioni che avessero una sintassi vicina al linguaggio umano, e l'industria dei software (che diventa un settore economico e lavorativo fondamentale).
Grazie a questa convergenza si ha la costruzione del primo processore commerciale, nel 1974, da Intel che lo inserì nel MITS ALTAIR 8800. La caratteristica di questo computer fu l'assemblaggio, il costo, che fu alla portata di tutti, ma anche il fatto che questo computer suscita interesse da parte di Allen e Gates, i quali decisero di investire il loro tempo per realizzare un software, Microsoft (nato nel 1975) mentre nel 1976 Steve Jobs, assieme ad altri collaboratori, fondarono la Apple.
Il primo PC commerciale IBM uscì nel 1981, il quale aveva installato MS/DOS, il sistema operativo di Microsoft che ha permesso all'ICT la sua diffusione verso il grande pubblico; in quello stesso periodo la Apple creò il sistema operativo Macintosh (caratterizzato dalla diversità di design, robustezza e minima possibilità da parte dell'utente di manipolare le caratteristiche di fabbrica).
L'evoluzione del software
Il 1990 fu un anno storico in quanto venne pubblicato un nuovo sistema operativo di Microsoft, ovvero Windows 3.1: la sua particolarità è il fatto che a differenza degli altri sistemi operativi, i quali erano disponibili per un pubblico più professionale, questa doveva essere accessibile a tutti e quindi Gates ebbe l'intuizione di rendere più facile l'interfaccia grafica attraverso il mouse. Anche Jobs capì che la diffusione del PC era dipendente dall'usabilità, ma la sua intenzione era quella che il PC doveva avere anche un peso estetico.
Una differenza che può essere rilevata tra Gates e Jobs fu il fatto che il primo sosteneva una architettura aperta (ovvero la possibilità di personalizzare liberamente i prodotti Microsoft) mentre il secondo sosteneva una architettura chiusa (ovvero il divieto di personalizzare il proprio prodotto se non solo con elementi concessi da Apple).
La nascita del World Wide Web
Nel 1991 il ricercatore Berners-Lee inventò il World Wide Web (www), che fu la base di Internet; le basi tecnologiche esistevano già e derivavano dallo sviluppo di ARPANET, un progetto del 1969 finanziato dal Dipartimento della Difesa americano. L'idea di ARPANET era disporre di una rete di comunicazione, che collegava tutti i computer militari e universitari degli USA, in grado di resistere ad un attacco su vasta scala da parte dell'URSS.
A partire dal 1993 il CERN (istituto svizzero in cui lavorò Berners-Lee) decise di rendere pubblica la tecnologia alla base del www e dal 1995 iniziò la diffusione su vasta scala nel mondo (contando oggi circa il 53% della popolazione connessa ad Internet), permettendo a tutti gli utenti di navigare ed usufruire servizi, ma anche a nascita di nuove piattaforme on-line come:
- Amazon (1995): creato da Jeff Besos, esso venne concepito come un sito che permettesse ai clienti di acquistare articoli dalla propria residenza.
- Google (1998): creato da due studenti universitari, esso nasce per permettere agli utenti di navigare velocemente, sulla base dell'algoritmo.
Etimologia e evoluzione dell'ICT
Riguardo all'etimologia, ICT deriva da due termini:
- Dal francese "Information automatique".
- Dall'inglese "Information tecnology" (IT): con questo termine si sottende l'insieme delle tecnologie di elaborazione dei dati e delle informazioni; in particolare questi due termini non sono analoghi perché:
- Dato: è una rappresentazione asettica e oggettiva della realtà presente alla conoscenza.
- Informazione: è una concezione della realtà che deriva dall'elaborazione di più dati.
Successivamente, nel corso del tempo, IT si evolve in ICT ("Information and Comunitation Tecnology") che permette di comprendere anche le tecnologie di comunicazione. Nell'ICT è presente una distinzione tra due sistemi:
- Sistema informatico: è l'infrastruttura tecnologica che serve per elaborare, memorizzare e trasmettere dati e informazioni.
- Sistema informativo: è l'insieme delle applicazioni, procedure e risorse umane che consentono la produzione e la gestione delle informazioni di un soggetto, di un'impresa o di un individuo.
Struttura organizzativa delle aziende
Le organizzazioni aziendali sono strutturate su tre livelli, che usano i sistemi come ausilio decisionale:
- Livello operativo: in questo livello si applicano delle attività operative.
- Livello manageriale: in questo livello si applicano attività tattiche.
- Livello esecutivo: in questo livello si applicano attività strategiche.
Nel 1987 John Zachman progettò il "Framework for Enterprise Architecture", detto anche modello Zachman, in cui fu adattato il concetto di architettura (ovvero una disciplina che ha come scopo l'organizzazione dei processi e delle tecnologie) ai sistemi informatici; in particolare Zachman teorizzò che il modello architetturale di un sistema informativo può essere generalizzato sulla base della prospettiva della figura professionale coinvolta rispetto alle macrocomponenti di cui è composto.
Inoltre questo modello coinvolge le prospettive per figura business e le finalità, in cui l'incrocio determina gli elementi per i quali il sistema operativo verrà realizzato per gestire dati e informazioni.
Il ruolo di George Boole
Per comprendere un sistema informativo, è necessario capire il funzionamento di un computer, che è possibile grazie a George Boole (inventore dell'algebra booleana, che porta alla nascita del sistema binario).
In particolare Boole sviluppò le modalità di calcolo e la logica per mezzo di:
- Due valori (0,1): noi abitualmente utilizziamo 10 cifre (da 0 a 9), dopo di che, dopo il 9, si passa dalle unità alle decine per poi, dopo il 99, passare alle centinaia, migliaia e oltre. Con il sistema binario, che ha solo due cifre, non esiste il numero 2 e quindi dobbiamo scrivere 10 ("unozero"); per continuare a contare e arrivare a quattro, dobbiamo utilizzare la posizione successiva formando un numero a tre cifre, ovvero 100 ("unozerozero"). Quindi mentre il sistema decimale rappresenta le cifre come potenze di 10 (101=10, 100=102, ecc.), il sistema binario rappresenta le cifre come potenze di 2 (10=21, 100=22, ecc.).
- Operatori booleani (AND, OR, NOT, XOR): in questa algebra sono utilizzati gli operatori booleani per scrivere espressioni logiche che testano se una specifica condizione è "vera" o "falsa" e sono 4:
- AND: restituisce "vero" se entrambe le condizioni sono vere.
- OR: restituisce "vero" se almeno una condizione è vera.
- NOT: nega la condizione e restituisce "vero" da un risultato falso, mentre restituisce "falso" da un risultato vero.
- XOR: restituisce "vero" se le condizioni sono diverse fra loro.
Con questi due elementi si crea il sistema binario, il quale è un sistema di calcolo basato su due cifre; per avere uniformità nei sistemi di base per la gestione delle informazioni, sono stati divisi:
- Bit (b): è un singolo digit che può assumere valori 0 o 1.
- Byte (B): è composto da 8 bit, che corrisponde ad un carattere del computer. Esso presenta dei multipli:
- Kilobyte (KB).
- Megabyte (MB).
- Gigabyte (GB): è l'ordine di grandezza delle memorie RAM.
- Terabyte (TB): è l'ordine di grandezza delle memorie dei PC.
- Petabyte (PB): è l'ordine di grandezza della capacità di data center di una azienda.
- Exabyte (EB): è l'ordine di grandezza della capacità di data center di una internet company.
- Zettabyte (ZB): è l'ordine di grandezza dei dati che circolano su internet.
Architettura e codifica
Un computer sa lavorare solo con 0 e 1, quindi esisteva il problema di come tradurre le informazioni dal linguaggio della macchina al linguaggio dell'uomo (e viceversa). Per interagire con le macchine, nel 1968 l'ANSI ("American National Standards Institute") ideò l'ASCII: questo codice utilizza 8 bit per rappresentare un carattere (composto da 7 bit per la codifica e 1 di controllo, chiamato "bit di parità").
A quei tempi il bit di parità serviva molto perché l'affidabilità dei circuiti era abbastanza limitata e nei registri poteva accadere che per qualche motivo si perdesse un bit; tuttavia ben presto ci si accorse che l'ASCII non era più sufficiente a mappare tutti i caratteri e si dovette adottare una codifica su 2 registri (composti da 16 bit), dando vita all'UNICODE, che permette di arrivare a circa 65.000 caratteri ed è sufficiente a soddisfare le esigenze.
Digitalizzazione e convergenza
Riguardo alla digitalizzazione (intesa come la trasformazione della realtà fisica in formato digitale per condividere contenuti e informazioni) e alla convergenza (inteso come l'integrazione di più strumenti che possono confluire per il loro utilizzo in un unico apparato) offre molte opportunità tra cui il fatto che ogni elemento multimediale può essere trasformato in formato digitale per essere realizzato con ogni dispositivo.
Hardware, software e reti
Componenti del computer
Qualunque computer può essere sintetizzato in uno schema logico che fu creato da Von Neumann che, nel 1949, portò alla luce uno dei primi computer digitali; in particolare Neumann disegnò questo schema ipotizzando che un computer dovesse essere composto da 5 strutture, che formano l'attuale hardware:
- Unità centrale: è un insieme di componenti collocati sulla scheda madre, una piastra a circuiti, sulla quale vengono collocate due componenti:
- CPU (Central Processing Unit): essa è il motore del computer ed è composto da:
- ALU (Aritmetical Processing Unit), unità preposta a eseguire calcoli.
- Unità di controllo, che ha il compito di gestire l'esecuzione delle istruzioni.
- Memoria cache, che ha il compito di velocizzare il funzionamento della ALU.
- Detto anche microprocessore, la CPU opera a una sequenza di funzionamento (clock) in cui maggiore è la frequenza, maggiore è il numero di operazioni che è in grado di svolgere.
- Memoria centrale: essa è composta da registri sui quali vengono scritte le istruzioni per la ALU. A sua volta, la memoria centrale è composta da:
- RAM (Random Access Memory): essa è una memoria ad accesso casuale e può essere:
- Diretto alla prima locazione libera, se è in fase di scrittura.
- Diretto all'indirizzo, se è in fase di lettura.
La capacità della memoria si misura in byte e i suoi multipli; attualmente le RAM di un PC hanno una capacità di memoria nell'ordine dei gigabyte ma si è reso necessario definire dei nuovi multipli per poter misurare la quantità di informazioni. La RAM è una memoria volatile, ovvero che una volta terminata l'operazione, se non è salvata, la memoria RAM si cancella allo spegnimento del computer.
ROM (Read Only Memory): è una memoria permanente, cioè non volatile, che contiene le istruzioni che consentono al computer di avviarsi. L'operazione di avvio del computer si chiama "bootstrap" e nella ROM si trova un programma che, quando si preme il tasto di accensione, la CPU ricerca sul disco fisso il sistema operativo, lo carica sulla RAM e lo esegue.
- Periferica di input: essa serve da interfaccia verso la CPU e tramite la quale vengono inseriti i dati da elaborare; comprende tutti quei dispositivi che sono in grado di trasmettere informazioni al computer come:
- Tastiera.
- Mouse.
- Foto/videocamera.
- "Wearable device".
- Strumenti per uso specialistico, come i lettori di codice a barre.
- Una periferica di output: essa serve da interfaccia verso la CPU per ottenere i dati prodotti dall'elaborazione e presentarli all'utente; comprende tutti quei dispositivi in grado di trasmettere informazioni dal PC all'utente come:
- Videoterminale: è un dispositivo di output volatile, cioè quando si spegne il computer, ciò che era visualizzato sullo schermo si perde. I videoterminali si possono avvalere di tre tecnologie di base:
- A cristalli liquidi (LCD).
- Al plasma: questa è la meno usata perché oltre a inquinare l'ambiente, ha il difetto di consumare moltissima corrente.
- A LED.
- La qualità dei monitor dipende da moltissimo fattori che ruotano su 4 caratteristiche principali:
- Dimensione: si misura in pollici ed è la lunghezza della diagonale maggiore della superficie dello schermo.
- Risoluzione: è la definizione dell'immagine e può essere espressa in dpi (che indica quanti punti si trovano per pollice quadrato) o in pixel x inch (che esprime il numero di pixel che compongono lo schermo).
- Frequenza di refresh: espressa in Hz, essa indica quante volte al secondo lo schermo viene ridisegnato.
- Gamma di colore: dipende da quanti bit è la codifica del colore per colorare un pixel e ci sono due tipologie:
- Gamma a 8 bit: il PC è in grado di colorare un pixel con un massimo di 256 colori.
- Gamma a 24 bit: il PC è in grado di colorare un pixel con 16 milioni di colori.
- La gamma dei colori è resa dalla composizione dei 3 tre colori (rosso, verde e blu).
- La stampante: è un dispositivo che si basa su 3 tecnologie:
- Termiche: questa stampante utilizza il calore per riprodurre la stampa; in particolare si usa una carta speciale con delle sostanze, che evaporavano a contatto con gli aghi riscaldati. Oggi viene utilizzata per l'emissione degli scontrini.
- A getto di inchiostro: molto diffusa ancora oggi, in questa stampante gli aghi sono sostituiti da testine che spruzzano l'inchiostro sul foglio.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.