Informatica
Informatica
Informazione
Automatica
È una disciplina nata dalla necessità di
velocizzare le operazioni di calcolo
matematico e per trattare l’informazione in
modo automatizzato
Il computer è uno strumento concepito per
l’eleborazione automatica dei dati
Informatica e telecomunicazione
Cos’è l’informatica?
lo studio sistematico degli algoritmi che descrivono e
trasformano l’informazione: la loro teoria, analisi,
progetto, efficienza, realizzazione e applicazione
[ACM – Association for Computing Machinery
Machinery]]
la scienza della rappresentazione e dell’elaborazione
dell’informazione
Cos’è la telecomunicazione?
la trasmissione rapida a distanza dell’informazione
Attenzione:
Non si parla di tecnologia dei calcolatori !
Si attribuisce ruolo centrale al concetto di
informazione !
1
Il problema
?
L’informazione è oggi oggetto di grande interesse:
• si parla, per esempio, di società dell’informazione ...
• si parla, per esempio, di tecnologia dell’informazione ...
ma ci si accorge immediatamente che quello di
informazione è un concetto diversificato e complesso
...
• nel 1999 GM ha trattato più MIPS di IBM
• nel 1996 il bilancio relativo alla gestione dell’informazione nel
sistema sanitario USA è stato superiore all’intero bilancio del
settore dei mass-media
?
Ma cosa significa informazione
informazione??
Una transizione
? L’evoluzione
economico--industriale della
economico
società occidentale può essere interpretata
secondo tre fasi
• società pre
pre--industriale
industriale: gestione della materia
• società industriale:
industriale gestione dell’energia
energia
• società post
post--industriale
industriale: gestione dell’informazione
informazione
2
Un’altra transizione
? Le reti da sempre costituiscono per la società uno strumento
indispensabile di trasporto, scambio e comunicazione
? … dapprima reti per il trasferimento di persone e beni materiali:
materiali:
•
•
•
•
•
reti stradali,
reti fluviali,
acquedotti,
reti fognarie,
…
? … quindi anche reti infrastrutturali per il trasferimento di
energia::
energia
•
•
•
•
reti elettriche,
gasdotti,
reti petrolifere,
…
? … infine anche reti per il trasferimento di informazione
informazione::
•
•
•
•
•
reti
reti
reti
reti
…
telegrafiche,
telefoniche,
televisive,
informatiche,
Ma il problema rimane …
? Cosa
significa informazione?
• Un esempio: lampioni e semafori ...
al di là delle differenze materiali,
funzionalmente che differenza c’è?Energia elettrica
(alimentazione)
Luce
(energia)
Luce
(energia)
Energia elettrica
(alimentazione)
Informazione !!
3
I calcolatori: cos’hanno di speciale?
? Molti
strumenti sono stati progettati e
realizzati per trattare informazione:
• le matite servono per scrivere
(non per trasferire grafite su carta)
• i violini servono per suonare
(non per produrre onde acustiche)
?A
differenza di questi, i calcolatori sono
dispositivi programmabili.
programmabili.
? Ma cosa significa programmabile
programmabile??
Elaborazione dell’informazione
? La programmabilità di un
dispositivo attiene alle
modalità con cui esso gestisce
informazione
? Per esempio, per risolvere
questo problema, si può:
• provare e riprovare
(= operare nel mondo fisico)
• fare i conti a mente
• fare i conti con carta e penna
(= operare con supporti
passivi)
• fare i conti con una
calcolatrice
(= operare con supporti
“rigidi”)
• oppure …
Quando si gestisce informazione,
si opera su dati mediante istruzioni
4
I primi calcolatori meccanici
/1
? Blaise Pascal (1623
(1623--1662)
dispositivo meccanico (ingranaggi azionati da
una manovella) per l’esecuzione di somme e
sottrazioni..
sottrazioni
? Gottfried Wilhelm von Leibniz (1646
(1646--1716)
introduce anche moltiplicazioni e divisioni
(~ calcolatrice a quattro funzioni).
? Charles Babbage (1792(1792-1871)
progetta e realizza un “difference
“difference engine
engine”
”
• calcola tabelle di numeri utili per la navigazione;
• unico algoritmo: polinomiale alle differenze finite;
finite
• output: fori su una piastra di rame
(~ schede perforate).
I primi calcolatori meccanici
/2
? Charles
Babbage (1792
(1792--1871)
macchina programmabile: “analytical
“analytical
engine”
engine
”
• Formata da quattro parti:
• store (memoria: 1000 celle × 50 cifre),
• mill (unità di calcolo: 4 operazioni + trasferimento
dati),
• input (lettore schede),
• output (perforatore schede).
5
Il periodo bellico
?
/1
Konrad Zuse (Germania, anni ’30 e ’40)
• Realizza macchine calcolatrici automatiche basate su relè
elettromagnetici.
elettromagnetici
?
John Atanasoff (Iowa State College, anni ’30)
• Macchina basata sull’aritmetica
aritmetica binaria.
binaria
• Memoria basata su condensatori rinfrescati periodicamente.
• Troppo avanzata per la tecnologia disponibile (problemi
problemi HW
HW).
?
George Stibbitz (Bell Labs
Labs,, anni ’30)
• Calcolatore più primitivo rispetto a quello di Atanasoff, ma
funzionante!! (presentato a una conferenza nel 1940)
funzionante
?
Howard Aiken (Harvard
Harvard,, anni ’40)
• Riprende il lavoro di Babbage e lo implementa sfruttando la
tecnologia dei relè elettromagnetici.
elettromagnetici
Il periodo bellico
?
/2
Negli anni ’40 si sviluppa una nuova tecnologia: le
valvole termoioniche rendono obsoleti i relè
elettromagnetici..
elettromagnetici
? COLOSSUS
(Inghilterra 1943)
• Primo calcolatore digitale elettronico.
? ENIAC
(Mauchley ed Eckert - USA 1946)
• Electronic Numerical Integrator And Computer.
Computer
• Composto da 18 000 valvole e 1500 relé per un peso
complessivo di 30 t e un consumo di 140 kw
kw.
6
John von Neumann
Partecipa al progetto ENIAC.
? Due intuizioni fondamentali:
?
• memorizzare i programmi in forma digitale nella stessa memoria
dei dati per rendere più semplice la programmazione (rispetto
all’utilizzo di cavi e interruttori);
• utilizzare l’aritmetica binaria invece di quella decimale (due
valvole per bit invece di dieci per cifra).
?
Il suo progetto (macchina
(macchina di von Neumann
Neumann)) è ancora
oggi alla base di quasi tutti i calcolatori digitali.
L’architettura di Von Neumann
?
Un calcolatore deve essere in grado di:
•
•
•
•
•
eseguire istruzioni su dati;
controllare il flusso dell’esecuzione;
memorizzare i dati su cui operare;
memorizzare successioni di istruzioni;
interagire con gli utenti e con eventuali altri sistemi.
Sottosistema
Sottosistema
di interfaccia
di memorizzazione
Comunica con utenti
Memorizza dati
o con altri dispositivi
e istruzioni
Sottosistema
di elaborazione
Ha due funzioni:
1. eseguire le istruzioni;
2. controllare il flusso
dell’esecuzione.
Sottosistema di interconnessione
7
Il transistor
?
Inventato ai Bell Labs nel 1948 da John Bardeen
Bardeen,,
Walter Brattain e William Shockley
Shockley::
• nel giro di 10 anni rivoluziona la ricerca sui calcolatori;
• alla fine degli anni ’50 i calcolatori a valvole sono già obsoleti.
?
Digital Equipment Corporation (DEC)
• fondata nel 1957 da Kenneth Olsen;
• nel 1961 realizza il PDP–1, il primo minicalcolatore
minicalcolatore.
?
Sviluppo della tecnologia d’
d’integrazione:
• decine (SSI), centinaia (MSI) e migliaia (LSI) di transistor sono
integrati sullo stesso pezzo di silicio (chip);
• possibilità di realizzare calcolatori più piccoli, più veloci e
meno costosi dei loro predecessori.
?
Due famiglie di calcolatori rappresentative:
• 360 di IBM
• PDP-11 di DEC
Very Large Scale Integration (VLSI)
?
?
105– 107 transistor integrati per chip.
105–
Passaggio dai minicalcolatori
minicalcolatori,, alle workstation
workstation,, ai
Personal Computer (PC):
• usati per applicazioni fortemente interattive (elaborazione
testi, fogli elettronici, …);
• in origine proposti come kit da assemblare,
assemblare senza software;
• due architetture principali:
• Apple (basato su CPU Motorola e PowerPC)
• primo PC, progettato da Steve Jobs e Steve Wozniak nel ’78,
• architettura proprietaria!
proprietaria
• IBM e compatibili (CPU Intel e SW Microsoft – “Wintel”)
• realizzato utilizzando componenti “off the shelf”,
• architettura di dominio pubblico,
pubblico quindi replicabile da altri (cloni)!
8
Il calcolatore in un sistema
ambiente da
controllare
sensori
calcolatore
locale
attuatori
automazione
rete
interfaccia
utente
calcolatore
remoto
Interazione tra utenti e
calcolatori
a
f
c
b
e
d
? Ciclo aa- f
• interazione tra un utente e un calcolatore
• esecuzione locale di un programma o accesso a documentazione loc ale
? Ciclo aa-b -e-f
• interazione tra un utente e un calcolatore remoto, mediata da un
secondo calcolatore in rete con il primo
• esecuzione remota o distribuita di un programma o accesso a
documentazione remota
? Ciclo aa-b -c-d -e-f
• interazione tra utenti mediata da calcolatori
• esecuzione distribuita e cooperativa di un programma o scambio di
documentazione
9
Il concetto di informazione
un foglio
cosparso di
macchie
Configurazione 1
Configurazione 2
Informazione e supporto
? L’informazione
è “portata
“portata da”,
da”, o “trasmessa
“trasmessa
su”,
su
”, o “memorizzata
“ memorizzata in”,
in”, o “contenuta
“contenuta in”
in”
qualcosa; questo “qualcosa
“qualcosa”
” però non è
l’informazione stessa.
? Ogni
supporto ha le sue caratteristiche in
quanto mezzo su cui può essere scritta
dell’informazione .
10
Informazione e supporti (1)
La stessa informazione può essere
scritta su supporti differenti.
11
10
9
8
7
6
10
Informazione e supporti (2)
Lo stesso supporto può portare
informazioni differenti.
fare
burro
italiano
to make, to do, to build, …
inglese
tariffa, prezzo, …
italiano
mantequilla, manteca, …
spagnolo
asino, cavalletto, somaro, …
11
Informazione e supporto (3)
? Distinguere
informazione e supporto fisico è
distinguere tra “entità
“entità logiche”
logiche” ed “entità
“entità
fisiche”:
fisiche
”:
• l’informazione richiede un supporto fisico,
fisico ma non
coincide con esso;
• l’informazione è un’entità extra
extra--fisica
fisica, non
interpretabile in termini di materia-energia e
sottoposta alle leggi della fisica solo perché basata su
un supporto fisico.
? L’informazione
si può creare e distruggere
distruggere..
Quali caratteristiche deve avere un sistema
fisico per supportare informazioni?
? Si
ottiene informazione quando, dato un
insieme di alternative possibili, la lettura del
supporto ne elimina alcune e ne seleziona
altre.
? Condizione necessaria perché un supporto
possa portare informazione è che possa
assumere configurazioni differenti,
differenti, a ognuna
delle quali venga associata una differente
entità di informazione.
informazione.
12
Informazione
Il concetto di informazione implica quello di scelta
Esempio:
di che colore è la luce accesa del semaforo all’incrocio?
La luce del semaforo è ..........
scelta fra { { rosso, giallo, verde} }
… scelta di un valore tra quelli definiti in un insieme finito di
di
elementi
… nessun altro valore che non appartiene a { { rosso, giallo,
verde} } potrà essere usato per definire il colore della luce
accesa del semaforo ...l’eleborazione
...l’eleborazione automatica dei dati
TIPO e VALORE
TIPO dell'informazione: insieme finito nel quale viene
effettuata la scelta
VALORE dell’informazione: l'elemento scelto
… Tipo e Valore non bastano ...
esempio:
numeri interi
Tipo
2.000.000
Valore
… ma cosa rappresenta il valore 2.000.000?
gli abitanti di Napoli? il patrimonio di Mario Rossi ? il
numero di articoli venduti dalla ACME SpA
SpA?? .....
tipo valore
13
ATTRIBUTO
ATTRIBUTO: definisce il significato dell’informazione, ossia serve
ATTRIBUTO:
a capire di cosa si tratta e ad identificarla (distinguerla da
altre)
Esempio:
Il cliente è il sig. Ugo
Attributo
Tipo: Nome di persona
Tipo: Numero reale
Valore
la soluzione dell'equazione è
3,5
Informazione
Definizione:
L'informazione è la terna di elementi
{TIPO
TIPO,, ATTRIBUTO
ATTRIBUTO,, VALORE
VALORE}}
se manca uno di questi elementi non si ha informazione!
14
…attenzione !
non confondere un valore e la sua
rappresentazione
QUATTRO
4
IV
… tre diverse rappresentazioni di uno stesso
valore
… altro esempio
“Quattro di quadri”
4
Cardinalità di un tipo e Quantità di
informazione
Ogni tipo ha una propria cardinalità n
che è pari al numero di elementi che compongono il tipo
La cardinalità esprime il numero di elementi tra cui scegliere
La cardinalità può essere usata per misurare la quantità di
informazione
15
Cardinalità di un tipo e Quantità di
informazione
Una scelta fra valori di un tipo a cardinalità n é più
complessa di una scelta fra valori di un tipo a
cardinalità m
Una cardinalità n>m, implica che il tipo a cardinalità n
ha una quantità di informazione maggiore di quello
a cardinalità m
N.B. nell'universo esistono infiniti tipi, un ambiente di
elaborazione è caratterizzato da un numero finito
e definito di tipi
Misura dell’informazione
La scelta più elementare è quella fra elementi
di un tipo a cardinalità 2 (al di sotto di 2
non c’è scelta ...)
BIT:
BIT:
è la quantità di informazione associata ad ogni
informazione il cui tipo ha cardinalità 2
il BIT è l’unità di misura dell’informazione
16
Misura dell’informazione
E' possibile stabilire a quanti bit equivale la
quantità di un’informazione il cui tipo sia a
cardinalità n
Il problema può essere posto in questi termini:
a quante scelte fra 2 equivale una scelta
fra n?
e ha una semplice formulazione
matematica
Esempio
Me Gio Do
Lu Ma Ve Sa
Do
Ve Sa
Me Gio
Lu Ma
Lu
Ma
Lu
Ma
Ve
Sa
Me
Gio
Me
Gio
Ve
Do
Sa
Do
… una scelta fra 7 elementi è equivalente a 3 scelte fra 2 insiemi
17
Misura dell’informazione
Formulazione matematica
B = [log n] 2
B = quantità di informazione in BIT
n = cardinalità del tipo
[x] operazione che associa ad x il minimo numero intero
maggiore o uguale ad x
… ovvero B è pari alla parte intera di log2 n, maggiorata di 1 se
se la
parte decimale è diversa da 0
… ovvero B è l’esponente da dare a 2 affinché la potenza
risultante sia pari al minimo numero maggiore o uguale di n
2B>n
Esempi:
colore semaforo 2 bit
seme carta 2 bit
cifra decimale 4 bit
lettera alfabeto italiano 5 bit
numero lotto 7 bit
una regione di Italia ..........
uno studente in aula ..........
un cittadino di Napoli ..........
un italiano ..........
18
Misura dell’informazione
il bit ha solo multipli
byte 8 bit (23 )
K
1024 bit (210 )
Kbyte
1024 byte (210 byte)
M
1048576 bit (220 )
Mbyte
1048576 byte (220 byte)
G
1073741324 bit (230 )
Gbyte
1073741324 byte (230 byte)
19