L`informazione

annuncio pubblicitario
L informazione
L informazione si può:
–  rappresentare
–  elaborare
–  gestire
–  trasmettere
–  reperire
L informatica offre la possibilità di effettuare
queste operazioni in modo automatico.
Informazione analogica e digitale
L informazione (ad es. il valore di grandezze fisiche
come tempo, temperatura, massa, ecc.) può essere
rappresentata in forma continua (analogica) o discreta
(digitale).
Digit (Inglese) = cifra
Informazione analogica e digitale
Lettura analogica:
i valori variano con continuità
fra un minimo e un massimo
Lettura digitale:
c è un numero finito di valori
fra il minimo e il massimo
CAMPIONAMENTO
4
QUANTIZZAZIONE
5
La codifica dell’ informazione
•  COME possiamo rappresentare un’informazione di
tipo DIGITALE ?
•  Il modo di rappresentare le informazioni è detto
codifica delle informazioni.
•  Come possiamo CODIFICARE un’informazione di
tipo digitale ?
La codifica dell informazione
•  Le parole che usiamo per parlare e scrivere, ad esempio,
sono codificate attraverso le lettere dell alfabeto
Se abbiamo un alfabeto con 20 lettere quante
parole diverse possiamo formare utilizzando ad
esempio due sole lettere?
AA, AB, GH, SP, ....
Ci sono in pratica 202 = 400 combinazioni diverse.
La codifica dell informazione
Con parole da tre lettere avremmo 203 = 8000
combinazioni diverse:
AAB, DFR, GGH, ecc.
Con un alfabeto con 6 lettere soltanto avremmo
bisogno di parole da 5 per poter formare un
numero simile di combinazioni: 65 = 7776
Diminuendo il numero di lettere aumenta la
lunghezza delle parole che posso formare a parità
di numero di combinazioni
La codifica dell informazione
Altri codici si possono costruire usando i numeri
naturali (numeri interi: 1, 2, 3, ecc.)
Se abbiamo un sistema numerico a dieci simboli,
quante combinazioni diverse possiamo formare
utilizzando ad esempio due sole cifre?
11, 12, 45, 54, ....
Ci sono in pratica 102 = 100 combinazioni diverse
(da 00 a 99).
La codifica dell informazione
Con il sistema numerico in base 10 e numeri da tre
cifre avremmo 103 = 1000 combinazioni diverse
(da 000 a 999).
Con un sistema numerico in base 4 avremmo
bisogno di numeri da cinque cifre per avere 45 =
1024 combinazioni diverse (da 00000 a 33333).
La codifica dell informazione
Il numero minimo di cifre per costruire un sistema
di numerazione è due (sistema binario).
Se abbiamo un sistema numerico a due simboli (0, 1),
quante combinazioni diverse possiamo formare
utilizzando ad esempio due sole cifre?
Ci sono in pratica 22 = 4 combinazioni diverse:
00, 01, 10, 11
utilizzabili, ad esempio, per rappresentare i numeri
interi da zero a tre.
La codifica dell informazione
Quindi:
Con il sistema numerico in base 10 ci bastano
numeri da tre cifre per avere 103 = 1000
combinazioni diverse (da 000 a 999).
Con un sistema numerico in base 4 avremmo bisogno
di numeri da cinque cifre per avere 45 = 1024
combinazioni diverse (da 00000 a 33333).
Con il sistema binario avremmo bisogno di numeri
da dieci cifre per avere 210 = 1024 combinazioni
diverse (da 0000000000 a 1111111111).
La codifica dell informazione
Riassumendo….
Per rappresentare i numeri da 000 a 999 con una
codifica di tipo binario dobbiamo necessariamente
usare sequenze di 10 cifre (da 0000000000 a
1111111111.
Il Sistema Numerico Binario
I moderni calcolatori
utilizzano il
sistema numerico binario
(1 e 0), messo a punto da
George Boole, per poter
rappresentare
un informazione che può
essere un numero o una
lettera.
Perchè i PC si basano su una codifica di
tipo binario?
Poiché lo stato di molti dispositivi è definibile
senza errori utilizzando solo due alternative, è
naturale pensare di adottare il sistema binario
nell elaborazione automatica dell informazione:
–  La lampadina (accesa o spenta)
–  La porta di casa (aperta o chiusa)
–  Il motore della macchina (acceso o spento)
Conversioni tra Sistemi Numerici
I più comuni sono:
• 
• 
• 
• 
Sistema decimale
Sistema binario
Sistema ottale
Sistema esadecimale
Sistema di numerazione posizionale
Il sistema di numerazione decimale che usiamo normalmente è
posizionale, cioè il valore di ogni cifra dipende dalla sua posizione nel
numero.
Per un numero scritto in notazione decimale (es: 23) abbiamo:
23 = due decine più tre unità, ossia: 23 = 3x100 +2x101
4132 = 2x100 + 3 x101 + 1x102 +4x103
1 = uno,
11 = undici;
9 = nove,
99 = novantanove.
Il Sistema Numerico Binario
•  In modo analogo al sistema decimale, le cifre del
sistema binario 0 e 1 assumono un valore posizionale
nella scrittura del numero binario con riferimento alle
potenze di 2, anziché alle potenze di 10.
•  Conversione binario-decimale:
Si moltiplica ciascuna cifra binaria partendo da destra
per la corrispondente potenza di 2 e si sommano i
prodotti ottenuti.
Esempi: 101 = 1x20 + 0x21 + 1x22= cinque 1110 = 0x20 + 1 x21 + 1x22 + 1x23 = qua5ordici Il Sistema Numerico Binario
Conversione decimale binario
Si divide il numero dato per 2 e si scrive il resto, che
può essere 0 o 1;
Il quoziente ottenuto viene a sua volta diviso per 2
ottenendo un nuovo resto.
Si prosegue fino a quando si ottiene come quoziente il
numero 0.
•  Per esempio , la trasformazione del numero decimale 35: •  QuozienA ResA 35 17 1 8 1 4 0 2 0 1 0 0 1 3510 = 1000112
Il Sistema Ottale
Il sistema ottale si chiama così perché utilizza 8 cifre
nella rappresentazione dei numeri: 0,1,2,3,4,5,6,7.
Le regole per la conversione di un numero ottale in
decimale e da decimale ad ottale sono analoghe al
sistema binario
esempio: trasformazione del numero o5ale 325 in numero decimale: 80 ! 5 + 81 ! 2 + 8 2 ! 3 = 5 +16 +192 = 213
Viceversa trasformazione del numero decimale 1602 in numero o5ale QuozienA ResA 1602 200 2 25 0 3 1 0
3 160210 = 31028
Il Sistema Esadecimale
Il sistema esadecimale utilizza 16 cifre:
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Quindi la lettera A rappresenta il numero decimale 10
in esadecimale, B il numero 11, C il numero 12, D il
numero 13, E il numero 14, F il numero 15. Il valore
delle cifre dipende dalla posizione nella scrittura del
numero secondo le potenze di 16
Esempio: trasformazione del numero esadecimale 3AF2 in numero decimale: 0
1
2
3
16 ! 2 +16 !15 +16 !10 +16 ! 3 = 15090
Trasformazione del numero decimale 16034 in numero esadecimale: QuozienA resA 16034 1002 2 2 62 10 A 3 14 E 0 3 3 1603410 = 3EA216
Nelle operazione di conversione dei numeri da un sistema all’altro, è conveniente ricordare le seguenA tabelle: Binario
Ottale
Binario
Esadecimale
000
001
010
011
100
101
110
111
0
1
2
3
4
5
6
7
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
Regole di conversione binario/ottale/
esadecimale
Da binario ad o5ale Si raggruppano le cifre del numero binario a gruppi di tre a par+re da destra, e si trasformano le cifre di ciascun gruppo nel corrispondente numero o5ale secondo la tabella precedente. Es.: il numero binario 1011110111 Si può scrivere come: 1 011 110 111 1 3 6 7 10111101112 = 13678
Da o5ale a binario Si fa corrispondere a ciascuna cifra o5ale che compone il numero un gruppo di tre bit secondo la tabella precedente. Es.: dato il numero o5ale 625 si può scrivere: 6 2 5 110 010 101 Quindi: 6258 = 1100101012
Da binario a esadecimale Si raggruppano le cifre del numero binario a gruppi di qua/ro a parAre da destra e si trasformano le cifre di ciascun gruppo nel corrispondente numero esadecimale secondo la tabella di conversione Es.: il numero binario 1011110111 Si può scrivere come 10 1111 0111 2 F 7 Quindi: 1011110111 2 = 2F7 16
Da esadecimale a binario Si fa corrispondere a ciascuna delle cifre esadecimale che compongono il numero un gruppo di qua/ro bit secondo la tabella di conversione. Es.: dato il numero esadecimale C3B C 3 B 1100 0011 1011 Quindi: C 3B16 = 1100001110112
L unità di misura del mondo digitale: il bit
•  Il bit (binary digit): unità minima
dell informazione digitale, una singola cifra 0 o 1
•  1 bit: la quantità di informazione fornita dalla
scelta tra due diverse alternative
Le parole digitali
Un insieme di bit forma una parola digitale:
110010110001…
Come abbiamo visto, il numero di parole diverse
che possiamo formare con n bit è 2n
Le parole digitali
Analogamente al nostro linguaggio, il significato di
una parola digitale dipende dall ordine in cui si
incontrano i caratteri:
da e ad sono due parole diverse, come lo sono
10 e 01
Le parole digitali
Abbiamo visto come costruire un sistema di
numerazione posizionale in base due (sistema binario):
0112 = 310, 1012 = 510, ecc.
Abbiamo anche capito che possiamo usare i due
simboli binari per costruire un codice qualunque:
011 = H, 101 = W, ecc.
In questo modo non solo i numeri, ma anche le
informazioni di tipo testo sono rappresentate
internamente al computer usando il codice binario.
Il codice ASCII (American Standard Code for
Information Interchange) •  E una tabella che associa le diverse combinazioni che
si possono formare con 7 bit (che sono 2^7=128) ai
simboli usati nell alfabeto latino, ai principali segni di
interpunzione e ad alcuni caratteri speciali
•  Il codice decimale va da 0 a 127 quello binario da 0 a
1111111
•  Oltre al codice ASCII standard o stretto, esiste
anche un codice esteso a 256 caratteri
Il codice ASCII Il codice ASCII Il codice ASCII Il codice ASCII
Ad esempio, in questo
codice alla combinazione
10000012 (= 6510 ),
corrisponde il carattere A
ecc..
L unità di misura del mondo digitale: il bit
•  Il bit (binary digit): unità minima
dell informazione digitale, una singola cifra 0 o 1
•  1 bit: la quantità di informazione fornita dalla
scelta tra due diverse alternative
Il Byte
1 Byte = 8 bit (1 bit quantità di informazione fornita
dalla scelta tra due solo possibilità).
1 Byte può codificare 28 diverse possibilità: 256
combinazioni diverse di 0 e 1. (quantità di
informazione fornita dalla scelta tra 256 possibilità)
Unità di misura della memoria
Grandezza
Valore
Circa
1KiloByte (KB) 210 = 1024 Byte
103 Byte
1 Mega (MB)
220= 10242= 1024 KB
106 Byte
1 Giga (GB)
230= 10243= 1024 MB
109 Byte
1 Tera (TB)
240= 10244= 1024 GB
1012 Byte
1 Peta (PB)
250= 10245= 1024 TB
1015 Byte
Unità di misura della memoria
bit
1 cifra binaria
memorizza 0 oppure 1
byte
8 bit
memorizza un carattere
Kilobyte (KB)
1024 byte
circa mezza pagina di testo
Megabyte (MB)
1024 KB
un libro di 200 pagine
Gigabyte (GB)
1024 MB
alcuni volumi
Terabyte (TB)
1024 GB
una biblioteca
Petabyte (PB)
1024 TB
molte biblioteche
Lunghezza della parola di un calcolatore
•  Oltre ai dati numerici e al testo, anche le istruzioni
elementari che la CPU è in grado di eseguire (somma,
differenza, memorizzazione, ecc.) sono codificate in
binario.
•  Ogni elaboratore usa una stringa di bit di lunghezza
definita (parola) per codificare le istruzioni, gli
indirizzi delle celle di memoria, ecc.
•  Elaboratori diversi possono avere parole di lunghezza
diversa (8 bit, 16 bit, 32 bit, 64 bit).
Rappresentazione dei numeri in un
calcolatore
•  Quanti bit sono usati normalmente per
rappresentare i numeri, per esempio i numeri interi?
•  Questo dipende dal tipo di elaboratore, ma si può
anche stabilire in un linguaggio di programmazione di
alto livello.
•  Tipicamente i numeri interi sono rappresentati
(e memorizzati) con 16 o 32 bit, mentre i numeri
reali con 32 o 64 bit).
Codici a lunghezza fissa
In generale, con N cifre a disposizione e base b, il
numero più grande (intero positivo) rappresentabile si
può esprimere come
bN – 1
Esempio: N =4
–  In base 10:
9999 = 104 - 1
–  In base 2: 1111
–  In base 16:
= 24 - 1
FFFF = 164 - 1
–  In base 8: 7777 = 84 - 1
Codici a lunghezza fissa
Se si usa un numero prestabilito di cifre si ha.
quindi, un codice a lunghezza fissa.
In questo modo si pone anche un limite al numero
massimo rappresentabile.
Esempio: qual è il numero più grande rappresentabile
con 4 cifre?
–  In base 10: 9999
–  In base 2: 1111
(=1510)
–  In base 16: FFFF
(=6553510)
–  In base 8: 7777
(=409510)
Operazioni su numeri binari
Addizione:
0+0=0
0+1=1
1+0=1
1+1=0
con riporto 0
con riporto 0
con riporto 0
con riporto 1
Esempi:
1 + 1 = 1 0 1 0 1 + 1 1 = 1 0 0 0 1 0 1 1 0 1 0 1 + 1 0 0 0 1 1 0 = 1 1 1 1 1 0 1 1 1 1 1 + 1 1 = 1 0 1 0 Operazioni su numeri binari
Cosa succede se il risultato di un operazione supera
il valore massimo rappresentabile con la lunghezza
del codice utilizzato?
Operazioni su numeri binari
Consideriamo la seguente operazione aritmetica,
immaginando di avere un codice a lunghezza fissa con
tre cifre binarie (3 bit):
5+4 =
9
(nel sistema decimale)
Ricordiamo: 510 = 1012 ,
1 0 1 + 1 0 0 = 1 0 0 1 410 = 1002
Errore di overflow (il risultato (910 = 10012) non può essere codificato con tre bit) Codici a lunghezza fissa
•  Numeri maggiori di quello massimo rappresentabile
causano problemi di overflow, ovvero per essere
rappresentati richiedono più cifre di quelle a
disposizione.
•  Esempio: 4 cifre
–  In base 10: 9999 + 1 = 1000010
–  In base 2: 1111 + 1 = 100002 (=1610)
–  In base 16: FFFF + 1 = 1000016 (=6553610)
–  In base 8: 7777 + 1 = 100008 (=409610)
Scarica