Avviso
Informazioni per accedere al
credito per l'acquisto di un pc
sono disponibili sul sito:
http://www.ict4university.gov.it/
iniziative/in-corso/diamoglicredito.aspx
Lo trovate anche sulla mia pagina web sotto
avvisi
Versione:
14/10/10
Facoltà di Farmacia - Corso di Informatica
1
Un breve prologo, in due parti....
Prima parte
Calcoliamo, con la macchina di Turing
3+2=?
Versione:
14/10/10
Facoltà di Farmacia - Corso di Informatica
2
Rivediamo la macchina di Turing ...
Un nastro infinito ed una
unita' di lettura e scrittura
Versione:
14/10/10
La macchina...
1. Legge il contenuto del nastro,
una cella alla volta
2. Se la cella contiene un simbolo
puo' cancellarlo
3. Se la cella e' vuota puo' scrivere
un simbolo
Versione:
14/10/10
1. Queste operazioni sono eseguite
secondo certe regole, che dipendono
dal problema che si vuole risolvere .
2. Quali regole vengano seguite
dipende dallo stato in cui si trova
la macchina.
Versione:
14/10/10
In altre parole....
1. Ogni stato equivale ad un diverso
modo di comportarsi cioe' ad
un diverso programma
2.La macchina puo' cambiare stato
(sempre secondo certe regole)
Versione:
14/10/10
Nel nostro caso......
Un unico simbolo “I”
Due soli stati “A” e “B”
Versione:
14/10/10
Posizione iniziale (P0) del nastro
A
vuote | | I | I | | I | I | I | | vuote
2
3
Il nastro va da sinistra a destra
Versione:
14/10/10
Le regole dipendono
dal problema: nel nostro
caso sono ......
Versione:
14/10/10
A
B
Versione:
14/10/10
I
vuota
Va alla
Cancella,
cella successiva
passa allo
stato B e va
alla cella
successiva
Va alla cella
successiva
Scrivi il simbolo I e
fermati
A
P0 | | I | I | | I | I | I | |
A
P1 | | I | I | | I | I | I | |
Cancella, passa allo stato B e
prosegui
Versione:
14/10/10
B
quindi
P2 | | I | I | | I | I | | |
e poi
B
P3 | | I | I | | I | I | | |
In P2 e P3 si passa semplicemente
alla cella successiva
Versione:
14/10/10
B
P4 | | I | I | | I | I | | |
Scrivi il simbolo I e fermati, per cui finalmente
B
P5 | | I | I | I | I | I | | |
Versione:
14/10/10
5!
Una macchina di Turing,
“reale”
Versione:
14/10/10
Versione:
14/10/10
Versione:
14/10/10
Seconda parte
Un micro-ripasso su
1. operazioni con potenze
2. logaritmi
Versione:
14/10/10
Versione:
14/10/10
In particolare useremo le potenze 2
2
Versione:
14/10/10
k
Potenze di 2
Potenza
20
21
22
23
24
25
26
27
28
…
Valore
1
2
2*2 = 4
2*2*2 = 8
2*2*2*2 = 16
2*2*2*2*2 = 32
2*…*2 = 64
2*…*2 = 128
2*…*2 = 256
…
Facoltà di Farmacia - Corso di Informatica
20
Passiamo ai logaritmi
b e' il numero cui bisogna elevare
a (la base) per ottenere x
Versione:
14/10/10
Ad esempio, in base 10
Noi pero' useremo la base 2...
Versione:
14/10/10
Rappresentazione delle
informazioni
Riferimenti: Console cap. 2
Versione:
14/10/10
Facoltà di Farmacia - Corso di Informatica
23
Tipi di segnali
• Segnali digitali
insieme discreto di valori, ad esempio due stati
– semplici da distinguere
– Es.: interruttore
on/off
–
• Segnali analogici
– insieme continuo di
valori, trasmettono
molte informazioni
– sensibili alle interferenze
– Es.: variatore di
luminosità
Facoltà di Farmacia - Corso di Informatica
24
Digitale e analogico
• Digitale o analogico?
–
–
–
–
accensione di una vettura
lancette di un orologio
tasti di una calcolatrice
volume di uno stereo
• Vantaggi del digitale:
– semplice
– non ambiguo (non sensibile alle interferenze)
– riproducibile senza errori
Facoltà di Farmacia - Corso di Informatica
25
Il bit
Segnale binario:
binario segnale discreto su due
valori
bit: binary digit
(cifra binaria)
Elemento di base per rappresentare le
informazioni
Facoltà di Farmacia - Corso di Informatica
26
Il bit
Perché il sistema binario?
• è semplice
• può rappresentare quasi ogni
informazione
Facoltà di Farmacia - Corso di Informatica
27
Come viene realizzato un bit
• direzione di
magnetizzazione
• presenza/ assenza
di corrente/tensione
•passaggio/non
passaggio di luce
Facoltà di Farmacia - Corso di Informatica
28
Rappresentazione delle
informazioni
Un bit rappresenta 2 possibili informazioni
Es.: sì/no, on/off, su/giù, vero/falso
Combinando più bit si rappresentano più
informazioni. 2 bit  4 informazioni:
00, 01, 10, 11
Es.: Un esame con 4 possibili esiti:
insufficiente (00), sufficiente (01),
buono (10), ottimo (11)
La corrispondenza concetto/configurazione di bit
è una convenzione!
Facoltà di Farmacia - Corso di Informatica
29
Problema: misurare in maniera
precisa l'informazione.
Fortunatamente il problema e'
stato risolto da Shannon nel 1948
Supponiamo di avere N eventi
possibili
1) lancio di una moneta N=2
2) lancio di un dado N=6
Prima del lancio :
Informazione (riguardo l'evento) =0
*
a meno che non bariamo
Il verificarsi di un evento e' messaggio che ci manda la
natura
Il verificarsi di un evento rimuove la nostra incertezza
Come possiamo calcolare
Incertezza prima dell'evento=informazione guadagnata?
Definizione di
Shannon
N e' il numero di possibili eventi che
possono accadere o messaggi che
possono essere ricevuti
NB: Questa formula vale solo se tutti gli eventi
sono equiprobabili!
H e' chiamata Informazione
o, piu' correttamente,
Entropia; tanto per ripeterci,
misura
l' incertezza a priori sul
verificarsi di un evento =
l'informazione a posteriori
guadagnata con l'osservazione
(di un particolare evento )
Dalla formula e' chiaro che al crescere
del numero di eventi possibili N anche H
cresce.
Ad esempio nel caso del lancio
di una moneta N=2
un bit di informazione
In generale l'andamento di H e'
rappresentabile con un grafico
Al crescere di N cresce H
Per N fissato, l'informazione (entropia) e' massima
In caso di eventi equiprobabili
Rappresentazione delle
informazioni
Con 1 bit si rappresentano 2 informazioni
Con 2 bit si rappresentano 4 informazioni
(22)
Con 3 bit si rappresentano 8 informazioni
(23)
…
Con N bit si rappresentano 2N informazioni
Facoltà di Farmacia - Corso di Informatica
40
Rappresentazione delle
informazioni
Per rappresentare K informazioni, si deve
utilizzare un numero di bit sufficiente per
esprimerle tutte,
per cui devo scegliere N in modo che
2N ≥ K
Facoltà di Farmacia - Corso di Informatica
41
Esempio
Per rappresentare 61 informazioni diverse si devono
usare N bit tali che
2N ≥ 61
5 bit non sono sufficienti, infatti
25 = 32 < 61
Occorrono almeno 6 bit, infatti
26 = 64 ≥ 61
Un insieme di 6 bit può assumere 64 configurazioni
diverse:
000000 / 000001 / 000010 /…
/ 111110 / 111111
Alcune sequenze (la 62a, la 63a e la 64a) non
vengono utilizzate
Facoltà di Farmacia - Corso di Informatica
42
Prove d'esame!
Rappresentazione delle
informazioni
Riassumendo:
• 1 bit può assumere 2 valori
• N bit possono assumere 2N valori, che
permettono di rappresentare 2N
informazioni
Quindi:
Per rappresentare K informazioni, si devono
usare N bit, in modo che
2N ≥ K
Facoltà di Farmacia - Corso di Informatica
44
Il Byte
È stato attribuito un significato particolare ai
gruppi di 8 bit;
8 bit formano un byte
8 bit
28 = 256 informazioni diverse
Il byte viene utilizzato - insieme al bit - come
unità di misura per esprimere la capacità della
memoria, la potenza di un calcolatore, la
velocità di trasmissione di una linea
Facoltà di Farmacia - Corso di Informatica
45
Unità di misura (bit)
Valore
Nome
1
bit
1.024
1.048.576
1.073.741.824
1.099.511.627.776
Abbreviazione
Potenza
b
20
Kilobit
Kb
210
(kibibit)
(Kib)
Megabit
Mb
(Mebibit)
(Mib)
Gigabit
Gb
(Gibibit)
(Gib)
Terabit
Tb
(Tebibit)
(Tib)
220
230
240
Tra parentesi la nomenclatura standard ma meno usuale
Facoltà di Farmacia - Corso di Informatica
46
Unità di misura (byte)
analoghe al bit. (1 byte = 8 bit)
Valore
Nome
1
byte
1.024
1.048.576
1.073.741.824
1.099.511.627.776
Abbreviazione
Potenza
B
20
Kilobyte
KB
210
(kibibyte)
(KiB)
Megabyte
MB
(Mebibyte)
(MiB)
Gigabyte
GB
(Gibibyte)
(GiB)
Terabyte
TB
(Tebibyte)
(TiB)
220
230
240
Tra parentesi la nomenclatura standard ma meno usuale
Facoltà di Farmacia - Corso di Informatica
47
Altra prova
Per concludere ......
Informazione e DNA
Rappresentazione dei
numeri
Ci serve una rappresentazione adatta all’elaboratore, ma
prima di tutto ci serve fare un po’ di chiarezza sui
problemi legati alla rappresentazione dei numeri.
Iniziamo con il distinguere tra numerale e numero.
numero
numerale:
numerale simbolo che rappresenta un numero
• I numerali differiscono dai numeri come le parole
differiscono dai concetti che rappresentano
• Es.: 6, sei, VI, six rappresentano tutti lo stesso numero
“What’s in a name? That which we call a rose by any other name
would smell as sweet.”
Facoltà di Farmacia - Corso di Informatica
50
Notazione Posizionale
Obiettivo: Stiamo cercando un modo efficiente di rappresentare i numeri (i.e.
delle quantità).
Soluzione inefficiente: usiamo un simbolo per indicare un oggetto. Es. Scriviamo III
per indicare il numero tre.
Scriviamo IIIII per indicare il numero cinque.
Scriviamo IIIIIIIIII per indicare il numero dieci.
…
Problema: Utilizziamo “tanti simboli” quanti sono gli oggetti. Non è una soluzione
praticabile quando gli oggetti sono nell’ordine dei milioni.
Facoltà di Farmacia - Corso di Informatica
51
Notazione Posizionale
Posizione
2
1
Facoltà di Farmacia - Corso di Informatica
0
52
Notazione Posizionale
La notazione posizionale non è l’unica possibile
(es. i numeri romani non sono in notazione
posizionale)
Vantaggi della notazione posizionale:
– Efficiente - Il numero di oggetti indicato cresce
esponenzialmente con il numero di cifre usate
– Potente - Gli “algoritmi” che implementano le
quattro operazioni sono “semplici”
Facoltà di Farmacia - Corso di Informatica
53
Il sistema di numerazione
decimale
• Decimale:
Decimale “alfabeto” di 10 cifre ⇒ 0, 1,
2, …, 9
• numerale 245:
245
– 2 centinaia, 4 decine, 5 unità
cioè
– 2 volte 102+ 4 volte 101+ 5 volte 100
• La potenza di 10 da considerare dipende
dalla posizione della cifra
Facoltà di Farmacia - Corso di Informatica
54
Il sistema di numerazione
decimale
• Notazione posizionale:
posizionale la posizione di una
cifra in un numerale indica il suo peso in
potenze di 10
I pesi sono:
– unità = 100 = 1 (posizione 0)
– decine
= 101 = 10
(posizione 1)
– centinaia = 102 = 100
(posizione 2)
– migliaia
– …
= 103 = 1000
…
…
…
Facoltà di Farmacia - Corso di Informatica
(posizione 3)
…
…
…
55
Rappresentazione decimale
Il numerale 3704 in notazione decimale (= in base 10)
10
rappresenta la quantità:
3704 (numerale)
numerale =
3*103 + 7*102 + 0*101 + 4*100 =
3000 + 700 + 0 + 4 = 3704 (numero)
numero
N.B.: Di norma utilizziamo un unico sistema (quello
decimale) per la rappresentazione dei numeri. Pertanto
è comune “confondere” numero e numerale. In realtà
esiste un numero infinito di modi di rappresentare lo
stesso numero. Se vogliamo evitare ambiguità, usiamo
la notazione 370410
Facoltà di Farmacia - Corso di Informatica
56
Il sistema di numerazione
binario
• Binario:
Binario “alfabeto” di 2 cifre di base ⇒ 0, 1
numerale 1012:
– 1 volta 22, 0 volte 21, 1 volta 20
• La potenza di 2 da considerare dipende dalla
posizione della cifra
Facoltà di Farmacia - Corso di Informatica
57
Il sistema di numerazione
binario
• Notazione posizionale:
posizionale la posizione di
una cifra in un numerale indica il suo
peso in potenze di 2
I pesi sono:
– 20 = 1
(posizione 0)
– 21 = 2
(posizione 1)
– 22 = 4
(posizione 2)
– 23 = 8
– … …
(posizione 3)
… …
Facoltà di Farmacia - Corso di Informatica
58
Rappresentazione binaria
Il numerale 100100112 in notazione binaria
(o in base 2) rappresenta la quantità:
100100112 (numerale)
numerale =
1*27 + 0*26 + 0*25 + 1*24 + 0*23 + 0*22 +
1*21 + 1*20 =
128 + 0 + 0 + 16 + 0 + 0 + 2 + 1 =
147 (numero)
numero
Facoltà di Farmacia - Corso di Informatica
59
Rappresentazione binaria
Facoltà di Farmacia - Corso di Informatica
60
Massimo numero
rappresentabile
Massimo numero rappresentabile:
il numero più grande esprimibile con un dato
numero di cifre (decimali, binarie, …)
NON coincide con il numero di informazioni
rappresentabili!
Per esempio, con 2 cifre decimali rappresento
100 numeri distinti, ma il numero più grande
che posso rappresentare utilizzando la
notazione decimale a due cifre è 9910
(Questo perché si inizia a contare da 0)
Facoltà di Farmacia - Corso di Informatica
61
Massimo numero
rappresentabile
Numeri a 2 cifre
• Sistema decimale:
– 100 (102) numeri diversi
– da 010 a 9910 , cioè da 0 a 102 – 1
– massimo numero rappresentabile: 102 – 1
• Sistema binario:
– 4 (22) numeri diversi
– da 02 a 112 (da 0 a 3), cioè da 0 a 22 – 1
– massimo numero rappresentabile: 22 – 1
Facoltà di Farmacia - Corso di Informatica
62
Massimo numero
rappresentabile
Numeri a N cifre
• Sistema decimale:
– 10N numeri diversi
– da 010 a 9…910, cioè da 0 a 10N – 1
N
– massimo numero rappresentabile: 10N – 1
• Sistema binario:
– 2N numeri diversi
– da 02 a 1…12, cioè da 0 a 2N – 1
N
– massimo numero rappresentabile: 2N – 1
Facoltà di Farmacia - Corso di Informatica
63
Massimo numero
rappresentabile
Esempio con 8 cifre:
111111112 (8 bit) = 28 -1 = 25510
Per rappresentare il numero 25610 ci vuole
un bit in più:
25610 = 1000000002 = 1*28
Facoltà di Farmacia - Corso di Informatica
64
Riassumendo...
Definendo il numero di cifre con cui si
rappresentano i numeri, si definisce anche il
massimo numero rappresentabile:
• con 16 bit: 216-1 = 65.535
• con 32 bit: 232-1 = 4.294.967.295
• con 64 bit: 264-1 = 18446744073709551615 ≈
1,84 * 1019
È possibile rappresentare numeri più grandi a
spese della precisione
Facoltà di Farmacia - Corso di Informatica
65
Incoraggiamento
“In mathematics you don’t understand
things. You just get used to them.”
John von Neumann,
matematico e pioniere dell’Informatica
Facoltà di Farmacia - Corso di Informatica
67
Sistema decimale
Numerale 34510
Facoltà di Farmacia - Corso di Informatica
68
Sistema decimale
Numerale 34510
posizione:
2
1
Facoltà di Farmacia - Corso di Informatica
0
69
Sistema decimale
Numerale 34510
posizione:
2
1
Facoltà di Farmacia - Corso di Informatica
0
70
Sistema decimale
Numerale 34510
posizione:
2
1
Facoltà di Farmacia - Corso di Informatica
0
71
Sistema decimale
Numerale 34510
posizione:
2
102
102
102
1
0
3
Facoltà di Farmacia - Corso di Informatica
72
Sistema decimale
Numerale 34510
posizione:
2
102
102
102
1
0
3
cifra del
numerale
Facoltà di Farmacia - Corso di Informatica
73
Sistema decimale
Numerale 34510
posizione:
2
102
102
102
1
0
3
posizione
cifra del
numerale
Facoltà di Farmacia - Corso di Informatica
74
Sistema decimale
Numerale 34510
posizione:
2
102
102
102
base
1
0
3
posizione
cifra del
numerale
Facoltà di Farmacia - Corso di Informatica
75
Sistema decimale
Numerale 34510
posizione:
2
1
102
102
102
101
101
101
101
3
0
4
Facoltà di Farmacia - Corso di Informatica
76
Sistema decimale
Numerale 34510
posizione:
2
102
102
102
3
1
0
101
101
101
101
100
100
100
100
100
4
Facoltà di Farmacia - Corso di Informatica
5
77
Sistema decimale
Numerale 34510
posizione:
2
102
102
102
3
1
0
101
101
101
101
100
100
100
100
100
4
5
Numero: 3*102
Facoltà di Farmacia - Corso di Informatica
78
Sistema decimale
Numerale 34510
posizione:
2
102
102
102
Numero: 3*102
3
1
0
101
101
101
101
100
100
100
100
100
4
5
4*101
Facoltà di Farmacia - Corso di Informatica
79
Sistema decimale
Numerale 34510
posizione:
2
102
102
102
Numero: 3*102
3
4*101
1
0
101
101
101
101
100
100
100
100
100
4
5
5*100
Facoltà di Farmacia - Corso di Informatica
80
Sistema decimale
Numerale 34510
posizione:
2
102
102
102
3
1
0
101
101
101
101
100
100
100
100
100
4
5
Numero: 3*102 + 4*101 + 5*100
Facoltà di Farmacia - Corso di Informatica
81
Sistema decimale
Numerale 34510
posizione:
2
102
102
102
3
1
0
101
101
101
101
100
100
100
100
100
4
5
Numero: 3*102 + 4*101 + 5*100 =345
Facoltà di Farmacia - Corso di Informatica
82
Sistema binario
Numerale 1112
Facoltà di Farmacia - Corso di Informatica
83
Sistema binario
Numerale 1112
posizione:
2
1
Facoltà di Farmacia - Corso di Informatica
0
84
Sistema binario
Numerale 1112
posizione:
2
1
Facoltà di Farmacia - Corso di Informatica
0
85
Sistema binario
Numerale 1112
posizione:
2
22
base
1
0
1
posizione
cifra del
numerale
Facoltà di Farmacia - Corso di Informatica
86
Sistema binario
Numerale 1112
posizione:
2
22
1
1
21
0
1
Facoltà di Farmacia - Corso di Informatica
87
Sistema binario
Numerale 1112
posizione:
2
22
1
1
21
0
1
Facoltà di Farmacia - Corso di Informatica
20
1
88
Sistema binario
Numerale 1112
posizione:
2
22
Numero:
1
1
21
0
1
20
1
1*22
Facoltà di Farmacia - Corso di Informatica
89
Sistema binario
Numerale 1112
posizione:
2
22
Numero:
1*22
1
1
21
0
1
20
1
1*21
Facoltà di Farmacia - Corso di Informatica
90
Sistema binario
Numerale 1112
posizione:
2
22
Numero:
1*22
1
1
1*21
21
0
1
20
1
1*20
Facoltà di Farmacia - Corso di Informatica
91
Sistema binario
Numerale 1112
posizione:
2
22
Numero:
1
1
21
0
1
20
1
1*22 + 1*21 + 1*20
Facoltà di Farmacia - Corso di Informatica
92
Sistema binario
Numerale 1112
posizione:
2
22
Numero:
1
1
21
0
1
20
1
1*22 + 1*21 + 1*20 =
=4
+ 2
+ 1 = 7
Facoltà di Farmacia - Corso di Informatica
93
Conversione da base 2 a
base 10
• È sufficiente moltiplicare ogni bit per il
suo peso e sommare.
Facoltà di Farmacia - Corso di Informatica
94
Conversione da base 2 a
base 10
• È sufficiente moltiplicare ogni bit per il
suo peso e sommare. Esempio:
110102 =
Facoltà di Farmacia - Corso di Informatica
95
Conversione da base 2 a
base 10
• È sufficiente moltiplicare ogni bit per il
suo peso e sommare. Esempio:
110102 =
1*24 + 1*23 + 0*22 + 1*21 + 0*20 =
Facoltà di Farmacia - Corso di Informatica
96
Conversione da base 2 a
base 10
• È sufficiente moltiplicare ogni bit per il
suo peso e sommare. Esempio:
110102 =
1*24 + 1*23 + 0*22 + 1*21 + 0*20 =
= 16 + 8 + 2 = 2610 = 26
Facoltà di Farmacia - Corso di Informatica
97
Conversione da base 2 a
base 10
• È sufficiente moltiplicare ogni bit per il
suo peso e sommare. Esempio:
110102 =
1*24 + 1*23 + 0*22 + 1*21 + 0*20 =
= 16 + 8 + 2 = 2610 = 26
• Somma di potenze di 2!
2
Facoltà di Farmacia - Corso di Informatica
98
Conversione da base 2 a
base 10
• È sufficiente moltiplicare ogni bit per il suo peso e
sommare. Esempio:
110102 =
1*24 + 1*23 + 0*22 + 1*21 + 0*20 =
= 16 + 8 + 2 = 2610 = 26
• Somma di potenze di 2!
2
Notiamo:
• un numero la cui rappresentazione binaria termina con
0 è pari, altrimenti (con 1) è dispari
• il resto della divisione di un numero per 2 è 0 se il
numero è pari, 1 se è dispari
• Il resto della divisione di un numero per 2 è 0 se
l’ultima cifra della sua rappresentazione binaria è 0, il
resto è 1 se l’ultima cifra è 1.
Facoltà di Farmacia - Corso di Informatica
99
Conversione da base 10 a
base 2
• Idea: effettuiamo divisioni successive per
2 del numero N e consideriamo i resti
Facoltà di Farmacia - Corso di Informatica
100
Conversione da base 10 a
base 2
• Idea: effettuiamo divisioni successive per
2 del numero N e consideriamo i resti
• Algoritmo:
– Passo 1: Dividere N per 2 e memorizzare il
resto
Facoltà di Farmacia - Corso di Informatica
101
Conversione da base 10 a
base 2
• Idea: effettuiamo divisioni successive per
2 del numero N e consideriamo i resti
• Algoritmo:
– Passo 1: Dividere N per 2 e memorizzare il
resto
– Passo 2: Ripetere il passo 1 finché il numero
diventa 0
Facoltà di Farmacia - Corso di Informatica
102
Conversione da base 10 a
base 2
• Idea: effettuiamo divisioni successive per
2 del numero N e consideriamo i resti
• Algoritmo:
– Passo 1: Dividere N per 2 e memorizzare il
resto
– Passo 2: Ripetere il passo 1 finché il numero
diventa 0
– Passo 3: Prendere i resti in ordine inverso e
scriverli da sinistra a destra
Facoltà di Farmacia - Corso di Informatica
103
Conversione da base 10 a
base 2
• Consideriamo il numerale 19010:
Facoltà di Farmacia - Corso di Informatica
104
Conversione da base 10 a
base 2
• Consideriamo il numerale 19010:
190/2
= 95 resto 0
Facoltà di Farmacia - Corso di Informatica
105
Conversione da base 10 a
base 2
• Consideriamo il numerale 19010:
190/2
= 95 resto 0
95/2
= 47 resto 1
Facoltà di Farmacia - Corso di Informatica
106
Conversione da base 10 a
base 2
• Consideriamo
190/2
=
95/2
=
47/2
=
il numerale 19010:
95 resto 0
47 resto 1
23 resto 1
Facoltà di Farmacia - Corso di Informatica
107
Conversione da base 10 a
base 2
• Consideriamo
190/2
=
95/2
=
47/2
=
23/2
=
il numerale 19010:
95 resto 0
47 resto 1
23 resto 1
11 resto 1
Facoltà di Farmacia - Corso di Informatica
108
Conversione da base 10 a
base 2
• Consideriamo
190/2
=
95/2
=
47/2
=
23/2
=
11/2
=
il numerale 19010:
95 resto 0
47 resto 1
23 resto 1
11 resto 1
5
resto 1
Facoltà di Farmacia - Corso di Informatica
109
Conversione da base 10 a
base 2
• Consideriamo
190/2
=
95/2
=
47/2
=
23/2
=
11/2
=
5/2
=
il numerale 19010:
95 resto 0
47 resto 1
23 resto 1
11 resto 1
5
resto 1
2
resto 1
Facoltà di Farmacia - Corso di Informatica
110
Conversione da base 10 a
base 2
• Consideriamo
190/2
=
95/2
=
47/2
=
23/2
=
11/2
=
5/2
=
2/2
=
il numerale 19010:
95 resto 0
47 resto 1
23 resto 1
11 resto 1
5
resto 1
2
resto 1
1
resto 0
Facoltà di Farmacia - Corso di Informatica
111
Conversione da base 10 a
base 2
• Consideriamo
190/2
=
95/2
=
47/2
=
23/2
=
11/2
=
5/2
=
2/2
=
1/2
=
il numerale 19010:
95 resto 0
47 resto 1
23 resto 1
11 resto 1
5
resto 1
2
resto 1
1
resto 0
0
resto 1
Facoltà di Farmacia - Corso di Informatica
112
Conversione da base 10 a
base 2
• Consideriamo il numerale 19010:
190/2
= 95 resto 0
95/2
= 47 resto 1
47/2
= 23 resto 1
23/2
= 11 resto 1
11/2
= 5
resto 1
5/2
= 2
resto 1
2/2
= 1
resto 0
1/2
= 0
resto 1
• Leggiamo i resti dal basso verso l’alto:
Facoltà di Farmacia - Corso di Informatica
113
Conversione da base 10 a
base 2
• Consideriamo il numerale 19010:
190/2 =
95 resto 0
95/2
=
47 resto 1
47/2
=
23 resto 1
23/2
=
11 resto 1
11/2
=
5
resto 1
5/2
=
2
resto 1
2/2
=
1
resto 0
1/2
=
0
resto 1
• Leggiamo i resti dal basso verso l’alto: la
rappresentazione binaria del numerale 19010 è
101111102
Facoltà di Farmacia - Corso di Informatica
114
Perché funziona?
Il numero che vogliamo rappresentare ha una
rappresentazione binaria del tipo
xNxN-1 …x1x0
Il numero si può pensare come la somma di
potenze di due:
xN*2N+xN-1 *2N-1 +…+x1*21+x0*20
Facoltà di Farmacia - Corso di Informatica
115
Perché funziona?
Noi siamo interessati a trovare x0,x1,x2,etc.
Proviamo a dividere il numero per due e vediamo cosa succede
(xN*2N+xN-1 *2N-1 +…+x1*21+x0*20)/2 =
xN*2N-1 +xN-1 *2N-2 +…+x1*20 con resto x0
Notiamo:
• Il resto della divisione è pari alla cifra meno significativa del numero che
cerchiamo
• Il risultato della divisione ha le stesse cifre binarie del numero originale (tranne
l’ultima), ma queste sono “spostate” tutte a destra di una posizione.
Facoltà di Farmacia - Corso di Informatica
116
Proviamo a sommare due numeri
in notazione binaria
101+
11=?
Possiamo fare in due modi!
1. Trasformiamo i numeri in
notazione decimale sommiamo
e ritrasformiamo in binario
1012
=
112
=
5 10 +
310
=
8 10
Ritrasformando
810
=
1000 2
Oppure possiamo calcolare
la somma usando le regole di
calcolo in binario
11
101 +
11
1000
riporto
Qualche semplice esercizio....
Dati 6 bit, quante informazioni distinte si possono
rappresentare?
Quante informazioni distinte si possono rappresentare con
un byte?
Quanti bit si devono utilizzare per rappresentare 20
informazioni distinte?
ed ancora....
Codificate i seguenti numeri nella corrispondente
rappresentazione decimale:
– 1012
– 10112
– 11012
– 100000012
– 110011002
– 111111112
Codificate i seguenti numeri nella corrispondente
rappresentazione binaria:
– 810
– 710
– 6010
– 28110
Verificate i risultati convertendoli nella rappresentazione
decimale.
• Dato il numero 86210 qual è il numero minimo di bit che si devono
usare per la sua rappresentazione binaria?
Facoltà di Farmacia - Corso di Informatica
122
e per finire ........
Calcolare 1100 +1101 (binari!)
nei due modi spiegati a lezione
Numeri positivi e negativi
Problema
• Come rappresentare anche i numeri
negativi?
Facoltà di Farmacia - Corso di Informatica
126
Numeri positivi e negativi
Problema
• Come rappresentare anche i numeri
negativi?
Soluzione ingenua (provvisoria)
Usiamo:
• 1 bit per rappresentare il segno
• gli altri bit per rappresentare il valore
assoluto del numero
Facoltà di Farmacia - Corso di Informatica
127
Numeri positivi e negativi
Il segno viene rappresentato dal bit più
significativo (MSB), il bit più a sinistra:
•
0 indica un numero positivo
•
1 indica un numero negativo
Facoltà di Farmacia - Corso di Informatica
128
Numeri positivi e negativi
Il segno viene rappresentato dal bit più
significativo (MSB), il bit più a sinistra:
•
0 indica un numero positivo
•
1 indica un numero negativo
Problema:
due rappresentazioni dello 0:
-0, +0
Facoltà di Farmacia - Corso di Informatica
129
Numeri positivi e negativi
Il segno viene rappresentato dal bit più
significativo (MSB), il bit più a sinistra:
•
0 indica un numero positivo
•
1 indica un numero negativo
Problema:
due rappresentazioni dello 0:
-0, +0
Occorre una rappresentazione diversa:
Complemento a due
Facoltà di Farmacia - Corso di Informatica
130
Rappresentazione
in complemento a due
Anziché usare un byte per rappresentare i numeri da 0
a 255, lo usiamo per i numeri da -128 a 127:
da 000000002 = 010 a 011111112 = 12710
e da 100000002 = -12810 a 111111112 = -110
Facoltà di Farmacia - Corso di Informatica
131
Rappresentazione
in complemento a due
Ad es., anziché usare un byte per rappresentare i numeri
da 0 a 255, lo usiamo per i numeri da -128 a 127:
Usiamo le configurazioni da 000000002 a 01111112 per
rappresentare i numeri positivi da 010 a 12710
Usiamo le configurazioni da 100000002 a 111111112 per
rappresentare i numeri negativi da -110 a -12810
Analogamente:
usando 16 bit rappresentiamo da –215 a 215 – 1
cioè da –32768 a +32767
usando 32 bit rappresentiamo da –231 a 231 – 1
cioè da –2.147.483.648 a +2.147.483.647
usando N bit rappresentiamo da –2N-1 a 2N-1 – 1
Facoltà di Farmacia - Corso di Informatica
132
Rappresentazione
in complemento a due
Come realizzo praticamente questa idea?
1. Lasciamo inalterati la codifica dei numeri
positivi
Facoltà di Farmacia - Corso di Informatica
133
Rappresentazione
in complemento a due
Come realizzo praticamente questa idea?
1. Lasciamo inalterati la codifica dei numeri positivi.
Esempio:
Supponiamo di volere usare 3 bit per la codifica.
Possiamo codificare 8 valori: -4,-3,-2,-1,0,1,2,3
Lasciando inalterata la codifica dei numeri positivi otteniamo:
000
0
001
1
010
2
011
3
Facoltà di Farmacia - Corso di Informatica
134
Rappresentazione
in complemento a due
Come realizzo praticamente questa idea?
1. Lasciamo inalterati la codifica dei numeri
positivi
2. Per rappresentare i numeri negativi abbiamo a
disposizione i numerali
100
101
110
111
Facoltà di Farmacia - Corso di Informatica
135
Rappresentazione
in complemento a due
Come realizzo praticamente questa idea?
1. Lasciamo inalterati la codifica dei numeri
positivi
2. Per rappresentare i numeri negativi abbiamo a
disposizione i numerali
100
101
110
111
-1
-2
-3
-4
Possibile codifica
Facoltà di Farmacia - Corso di Informatica
136
Rappresentazione
in complemento a due
Come realizzo praticamente questa idea?
1. Lasciamo inalterati la codifica dei numeri
positivi
2. Per rappresentare i numeri negativi abbiamo a
disposizione i numerali
100
101
110
111
-1
-2
-3
-4
Possibile codifica
Facoltà di Farmacia - Corso di Informatica
137
Rappresentazione
in complemento a due
Come realizzo praticamente questa idea?
1. Lasciamo inalterati la codifica dei numeri
positivi
2. Per rappresentare i numeri negativi abbiamo a
disposizione i numerali
100
101
110
111
-4
-3
-2
-1
Codifica in complemento a 2
Facoltà di Farmacia - Corso di Informatica
138
Rappresentazione
in complemento a due
Quindi
100
101
110
111
-4
-3
-2
-1
000
001
010
011
0
1
2
3
Facoltà di Farmacia - Corso di Informatica
139
Rappresentazione
in complemento a due
Ulteriore prospettiva:
Facoltà di Farmacia - Corso di Informatica
140
Rappresentazione
in complemento a due
Ulteriore prospettiva:
Facoltà di Farmacia - Corso di Informatica
141
Dato un numero positivo come si
ottiene il corrispondente negativo?
Con tre facili passi!
1. Si rappresenta il numero in complemento
a due (quindi con uno 0 come primo bit)
2. Si invertono tutti i bit, cioe' si pone
0 al posto di 1 e viceversa
3. Si somma 1 al risultato cosi' ottenuto
Esempio: rappresentazione di -5
1. Con 4 bits la rappresentazione in
complemento a due di +5 e'
0101
Indica che il numero e' positivo
2. Invertendo tutti i bits si ottiene
1010
3. Aggiungendo 1 si ha 1011
Nel caso di -3
1. +3 in notazione binaria in complemento
a due e' 011
2. invertendo i bits si ottiene 100
3. infine aggiungendo 1 ottengo 101
In definitiva, per la codifica da -4 a +3
1. Considero sequenze di 3 bit: assegno
ai numeri positivi quelle che cominciano
con 0 e ai negativi quelle che iniziano con 1.
2. Codifico i numeri positivi (compreso lo 0)
con il metodo usuale.
3. Utilizzo l'algoritmo che abbiamo appena
visto per ottenere -1, -2, -3
4. E -4? Facile, gli assegno l'ultimo simbolo
rimasto cioe' 100
Quindi
0
1
2
3
000
001
010
011
111
110
101
100
-1
-2
-3
-4
Importante:
la codifica complemento
a due dipende in modo
cruciale dal numero di
bit che usiamo
Ad esempio, con 4 bit: 3=0011
e applicando la regola di trasformazione
-3=1101
Tuttavia le regole sono sempre
le stesse. Ad esempio con 4 bit
0
1
2
3
4
5
6
7
0000
0001
0010
0011
0100
0101
0110
0111
1111
1110
1101
1100
1011
1010
1001
1000
-1
-2
-3
-4
-5
-6
-7
-8
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+, 1–)
Facoltà di Farmacia - Corso di Informatica
149
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+, 1–)
• se il numero è positivo, fare conversione usuale
000
001
010
011




Facoltà di Farmacia - Corso di Informatica
0
1
2
3
150
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+, 1–)
• se il numero è positivo, fare conversione usuale
• se il numero è negativo,
Facoltà di Farmacia - Corso di Informatica
151
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+, 1–)
• se il numero è positivo, fare conversione usuale
• se il numero è negativo,
– fare conversione usuale e sottrarre 2N
Facoltà di Farmacia - Corso di Informatica
152
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+, 1–)
• se il numero è positivo, fare conversione usuale
• se il numero è negativo,
– fare conversione usuale e sottrarre 2N
100
101
110
111




4-23
5-23
6-23
7-23
Facoltà di Farmacia - Corso di Informatica
=
=
=
=
-4
-3
-2
-1
153
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+, 1–)
• se il numero è positivo, fare conversione usuale
• se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione usuale,
sommare 1, cambiare segno
Facoltà di Farmacia - Corso di Informatica
154
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1, cambiare segno
Esempi:
010011012
Facoltà di Farmacia - Corso di Informatica
155
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1, cambiare segno
Esempi:
010011012
Facoltà di Farmacia - Corso di Informatica
156
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1, cambiare segno
Esempi:
010011012 = 7710
Facoltà di Farmacia - Corso di Informatica
157
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1, cambiare segno
Esempi:
100010102
Facoltà di Farmacia - Corso di Informatica
158
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1, cambiare segno
Esempi:
100010102
Facoltà di Farmacia - Corso di Informatica
159
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1, cambiare segno
Esempi:
100010102
Facoltà di Farmacia - Corso di Informatica
160
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1, cambiare segno
Esempi:
100010102 ⇒ 13810
Facoltà di Farmacia - Corso di Informatica
161
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1, cambiare segno
Esempi:
100010102 ⇒ 13810 - 25610
Facoltà di Farmacia - Corso di Informatica
162
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1, cambiare segno
Esempi:
100010102 ⇒ 13810 - 25610 = -11810
Facoltà di Farmacia - Corso di Informatica
163
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1, cambiare segno
Esempi:
100010102
Facoltà di Farmacia - Corso di Informatica
164
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0),
0) fare conversione
usuale, sommare 1, cambiare segno
Esempi:
100010102⇒011101012
Facoltà di Farmacia - Corso di Informatica
165
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale,
usuale sommare 1, cambiare segno
Esempi:
100010102⇒011101012 ⇒ 11710
Facoltà di Farmacia - Corso di Informatica
166
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+,
1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1,
1 cambiare segno
Esempi:
100010102⇒011101012⇒11710+1=11810
Facoltà di Farmacia - Corso di Informatica
167
Conversione da complemento a
due su N bit a decimale
Il bit più significativo identifica il segno (0+, 1–)
•se il numero è positivo, fare conversione usuale
•se il numero è negativo,
– fare conversione usuale e sottrarre 2N
oppure
– invertire i bit (0  1, 1  0), fare conversione
usuale, sommare 1, cambiare segno
Esempi:
100010102⇒011101012⇒11710 +1=11810 =
-11810
Facoltà di Farmacia - Corso di Informatica
168
Vantaggi della codifica in
complemento a due
• “Facile” passare dalla rappresentazione
decimale a quella in complemento a due
e viceversa
• L’operazione di somma (e di conseguenza
la sottrazione, la moltiplicazione,…)
rimane invariata (questa è una
caratteristica molto importante di
questa codifica)
Facoltà di Farmacia - Corso di Informatica
169
L’operazione di somma rimane
invariata!
Es.
1+1 =
1
001 +
001 =
0
Facoltà di Farmacia - Corso di Informatica
170
L’operazione di somma rimane
invariata!
Es.
1+1 =
001 +
001 =
10
Facoltà di Farmacia - Corso di Informatica
171
L’operazione di somma rimane
invariata!
Es.
1+1 =
001 +
001 =
010 = 2
Facoltà di Farmacia - Corso di Informatica
172
L’operazione di somma rimane
invariata!
Es.
1+1 =
001 +
001 =
010 = 2
2-1
Facoltà di Farmacia - Corso di Informatica
173
L’operazione di somma rimane
invariata!
Es.
1+1 =
001 +
001 =
010 = 2
2-1 =2+(-1)
Facoltà di Farmacia - Corso di Informatica
174
L’operazione di somma rimane
invariata!
Es.
1+1 =
2-1 =2+(-1)=
001 +
001 =
010 = 2
010 +
111 =
Facoltà di Farmacia - Corso di Informatica
175
L’operazione di somma rimane
invariata!
Es.
1+1 =
2-1 =2+(-1)=
001 +
001 =
010 = 2
010 +
111 =
1
Facoltà di Farmacia - Corso di Informatica
176
L’operazione di somma rimane
invariata!
Es.
1+1 =
2-1 =2+(-1)=
001 +
001 =
010 = 2
1
010 +
111 =
01
Facoltà di Farmacia - Corso di Informatica
177
L’operazione di somma rimane
invariata!
Es.
1+1 =
2-1 =2+(-1)=
001 +
001 =
010 = 2
1
010 +
111 =
001 = 1
Facoltà di Farmacia - Corso di Informatica
178
Alcuni esercizi
Codificate i seguenti numeri rappresentati in complemento
a due nella corrispondente rappresentazione decimale:
1.1111002
2.0001002
3.1000112
4.1010102
5.0101012
6.1111112
0
0
0
0
e prove di esame
ed anche ....
ed infine....
Rappresentazione dei
caratteri
Facoltà di Farmacia - Corso di Informatica
183
Rappresentazione dei
caratteri
Per rappresentare i caratteri,
occorre stabilire una convenzione per la
corrispondenza tra configurazione di bit e
carattere:
codice ASCII
(American Standard Code for Information
Interchange)
Facoltà di Farmacia - Corso di Informatica
184
Codice ASCII
Usa i 7 bit meno significativi di un byte
(27 = 128 diversi caratteri rappresentabili)
Rappresenta – oltre ad altri caratteri – le
lettere dell’alfabeto anglosassone
maiuscole e minuscole, le cifre, i segni di
punteggiatura
Esiste un codice ASCII esteso,
esteso che usa 8
bit, ma non è standard; cambia con la
lingua usata
Facoltà di Farmacia - Corso di Informatica
185
Codice ASCII
Codice ASCII:
ASCII esteso:
esteso
nelle parti scure
Facoltà di Farmacia - Corso di Informatica
186
NB. Nella codifica ASCII non estesa si
usano sequenze di 8 elementi ma il
primo e' sempre 0: cosi il numero di bit
realmente impiegati e' 7
Esempio: c=01100011
Rappresentazione dei
caratteri
Altri codici:
UNICODE:
UNICODE standard proposto per coprire le principali
lingue (sistemi di scrittura):
alfabeto latino, arabo, cirillico, ebraico, greco, hàn,
hiragana e katakana, hangul, braille, IPA…
– caratteri codificati con 1, 2 o 4 byte
(il libro fa riferimento alla sola codifica a 2 byte)
– attualmente rappresentati oltre 96000 caratteri
Facoltà di Farmacia - Corso di Informatica
188
Esempio di codifica ASCII
Codifica della parola ‘casa’:
c
01100011
a
01100001
s
01110011
Facoltà di Farmacia - Corso di Informatica
a
01100001
189
Esempio di codifica ASCII
Codifica della parola ‘casa’:
c
01100011
a
01100001
s
01110011
a
01100001
Il codice ASCII contiene anche la codifica per lo
spazio (anch’esso è un carattere!, ASCII 32) e il
simbolo di fine riga ‘CR’ (ASCII 13)
Con questi caratteri è quindi possibile codificare
un testo strutturato
Facoltà di Farmacia - Corso di Informatica
190
Esempio di decodifica ASCII
A partire da una sequenza di bit in codice ASCII, si
vuole conoscere la rappresentazione in
caratteri:
011010010110110000100000010100000110111100101110
Facoltà di Farmacia - Corso di Informatica
191
Esempio di decodifica ASCII
A partire da una sequenza di bit in codice ASCII, si
vuole conoscere la rappresentazione in
caratteri:
• si divide la sequenza in gruppi di 8 bit
(ogni gruppo è un byte)
011010010110110000100000010100000110111100101110
Facoltà di Farmacia - Corso di Informatica
192
Esempio di decodifica ASCII
A partire da una sequenza di bit in codice ASCII, si
vuole conoscere la rappresentazione in
caratteri:
• si divide la sequenza in gruppi di 8 bit
(ogni gruppo è un byte)
01101001 01101100 00100000 01010000 01101111 00101110
Facoltà di Farmacia - Corso di Informatica
193
Esempio di decodifica ASCII
A partire da una sequenza di bit in codice ASCII, si
vuole conoscere la rappresentazione in
caratteri:
• si divide la sequenza in gruppi di 8 bit
(ogni gruppo è un byte)
• si determina il carattere corrispondente a ogni
gruppo
01101001 01101100 00100000 01010000 01101111 00101110
Facoltà di Farmacia - Corso di Informatica
194
Esempio di decodifica ASCII
A partire da una sequenza di bit in codice ASCII, si
vuole conoscere la rappresentazione in
caratteri:
• si divide la sequenza in gruppi di 8 bit
(ogni gruppo è un byte)
• si determina il carattere corrispondente a ogni
gruppo
01101001 01101100 00100000 01010000 01101111 00101110
105=i
108=l
32=
80=P
111=o
Facoltà di Farmacia - Corso di Informatica
46=.
195
Codifica ASCII dei numeri
N.B.: le cifre da 0 a 9 rappresentate in ASCII sono
caratteri (simboli) e non quantità numeriche,
quindi:
Facoltà di Farmacia - Corso di Informatica
196
Codifica ASCII dei numeri
N.B.: le cifre da 0 a 9 rappresentate in ASCII sono
caratteri (simboli) e non quantità numeriche,
quindi:
• NON possono essere utilizzati per
rappresentare quantità da utilizzare in calcoli
aritmetici
• Non è così strano: tutti i giorni usiamo i numeri
telefonici, che sono sequenze di simboli, con
essi non facciamo calcoli aritmetici
Facoltà di Farmacia - Corso di Informatica
197
Codifica ASCII dei numeri
N.B.: le cifre da 0 a 9 rappresentate in ASCII sono
caratteri (simboli) e non quantità numeriche,
quindi:
il numero ‘4’ è rappresentato in binario per
mezzo del numerale 000001002
la cifra `4’ è rappresentata in ASCII dal codice
52=001101002
Facoltà di Farmacia - Corso di Informatica
198
Prove di esame
Codifica delle immagini
• Vi sono varie tecniche utilizzate per
memorizzare in modo digitale un’immagine, e
poi elaborarla
• Per semplificare, immaginiamo di dover
codificare un’immagine in bianco e nero (dual
tone, con soli due colori)
Facoltà di Farmacia - Corso di Informatica
201
Codifica delle immagini
• L’immagine da codificare
Facoltà di Farmacia - Corso di Informatica
202
Codifica delle immagini
• L’immagine da codificare
• viene suddivisa da una griglia formata da linee
a distanza costante
Facoltà di Farmacia - Corso di Informatica
203
Codifica delle immagini
• Ogni quadrato derivante da tale suddivisione
viene chiamato pixel
(picture element)
element e può essere codificato in
binario con la convenzione che:
• 0 rappresenta un pixel bianco
• 1 rappresenta un pixel nero
Facoltà di Farmacia - Corso di Informatica
204
Codifica delle immagini
• Ogni quadrato derivante da tale suddivisione
viene chiamato pixel
(picture element)
element e può essere codificato in
binario con la convenzione che:
• 0 rappresenta un pixel bianco
(ovvero in cui il bianco è predominante)
• 1 rappresenta un pixel nero
(ovvero in cui il nero è predominante)
Facoltà di Farmacia - Corso di Informatica
205
Codifica delle immagini
Facoltà di Farmacia - Corso di Informatica
206
Codifica delle immagini
Facoltà di Farmacia - Corso di Informatica
207
Codifica delle immagini
Facoltà di Farmacia - Corso di Informatica
0
1 0
0
1
1 0
0 0 0
0
1
1 1
1 0 0
0 0
0 0
0
0
0 0
0
0 0
208
Codifica delle immagini
1 0
0
22
0
23
1
15
0
1
25
17
9
10
18
3
27
28
19
20
21
1 0 0
11
0 0
2
26
0
0 0 0
1 1
0 0
1
24
0 0
1 0
16
8
0
12
0
4
5
13
14
0 0
6
7
Problema: per avere una sequenza di bit,
in quale ordine leggere i pixel?
Occorre una convenzione: qui assumiamo da sinistra destra, e dal basso
verso l’alto
La rappresentazione della figura è quindi:
0000000 0111100 0110000 0100000
Facoltà di Farmacia - Corso di Informatica
209
Codifica delle immagini
Non sempre il contorno della figura coincide con le linee
della griglia
Facoltà di Farmacia - Corso di Informatica
210
Codifica delle immagini
Non sempre il contorno della figura coincide con le linee
della griglia: digitalizzando un’immagine si ha sempre
un’approssimazione dell’immagine stessa
Facoltà di Farmacia - Corso di Informatica
211
Codifica delle immagini
Non sempre il contorno della figura coincide con le linee
della griglia: digitalizzando un’immagine si ha sempre
un’approssimazione dell’immagine stessa
0 1 0 0 0 0 0
22
23
24
25
26
27
28
15
16
17
18
19
20
21
8
9
10
11
12
13
14
1
2
3
4
5
6
7
0 1 1 0 0 0 0
0 1 1 1 1 0 0
0 0 0 0 0 0 0
Facoltà di Farmacia - Corso di Informatica
212
Codifica delle immagini
Non sempre il contorno della figura coincide con le linee
della griglia: digitalizzando un’immagine si ha sempre
un’approssimazione dell’immagine stessa
0 1 0 0 0 0 0
22
23
24
25
26
27
28
15
16
17
18
19
20
21
8
9
10
11
12
13
14
1
2
3
4
5
6
7
0 1 1 0 0 0 0
0 1 1 1 1 0 0
0 0 0 0 0 0 0
0000000 0111100 0110000 0100000
Facoltà di Farmacia - Corso di Informatica
213
Codifica delle immagini
Non sempre il contorno della figura coincide con le linee
della griglia: digitalizzando un’immagine si ha sempre
un’approssimazione dell’immagine stessa
0 1 0 0 0 0 0
22
23
24
25
26
27
28
15
16
17
18
19
20
21
8
9
10
11
12
13
14
1
2
3
4
5
6
7
0 1 1 0 0 0 0
0 1 1 1 1 0 0
0 0 0 0 0 0 0
0000000 0111100 0110000 0100000
Facoltà di Farmacia - Corso di Informatica
214
Codifica delle immagini
Problema. Come avere un’immagine più fedele?
Facoltà di Farmacia - Corso di Informatica
215
Codifica delle immagini
Problema. Come avere un’immagine più fedele?
Idea. Aumentiamo la risoluzione,
risoluzione cioè il numero dei pixel
(e rimpiccioliamo i quadratini della griglia di
campionamento)
Facoltà di Farmacia - Corso di Informatica
216
Codifica delle immagini
Problema. Come avere un’immagine più fedele?
Idea. Aumentiamo la risoluzione,
risoluzione cioè il numero dei pixel
(e rimpiccioliamo i quadratini della griglia di
campionamento)
7x4
14x8
zz
Facoltà di Farmacia - Corso di Informatica
217
Codifica delle immagini
Problema. Come avere un’immagine più fedele?
Idea. Aumentiamo la risoluzione,
risoluzione cioè il numero dei pixel
(e rimpiccioliamo i quadratini della griglia di
campionamento)
7x4
14x8
zz
La rappresentazione di un’immagine mediante la codifica dei pixel
viene chiamata codifica bitmap
Facoltà di Farmacia - Corso di Informatica
218
Codifica delle immagini a toni
di grigio
• Con un solo bit per pixel si possono codificare solo due
colori (tipicamente bianco e nero)
• Per codificare più informazioni, dobbiamo usare più bit
Facoltà di Farmacia - Corso di Informatica
219
Codifica delle immagini a toni
di grigio
• Con un solo bit per pixel si possono codificare solo due
colori (tipicamente bianco e nero)
• Per codificare più informazioni, dobbiamo usare più bit
Ad es., tonalità di grigio:
grigio
per ogni quadratino si stabilisce il livello medio di grigio
si codifica ogni livello di grigio
(se uso 4 bit  16 livelli di grigio,
se uso 8 bit  256 livelli di grigio, …
se uso k bit  2k tinte diverse)
Facoltà di Farmacia - Corso di Informatica
220
Ad esempio
Il numero di bit per pixel e' importante come
possiamo vedere nella prossima slide
Ma anche il numero di pixels e' rilevante!
In definitiva:
Codifica delle immagini a
colori
Immagini a colori:
• si individua una serie di sfumature di
colore differenti
• ognuna è codificata con un’opportuna
rappresentazione binaria
Facoltà di Farmacia - Corso di Informatica
226
Codifica delle immagini a
colori
Immagini a colori:
• si individua una serie di sfumature di
colore differenti
• ognuna è codificata con un’opportuna
rappresentazione binaria
Due modi di codificare le immagini a colori:
• true color
• palette
Facoltà di Farmacia - Corso di Informatica
227
True color
True color
• Colori come somma di tre colori primari:
rosso, verde e blu (Red, Green, Blue:
Blue RGB)
• Monitor e televisori funzionano così
256 livelli ( 8 bit) per ogni canale (colore primario)
3 byte per ogni pixel
23*8 colori = 224 colori = 16.777.216 colori
Colore
nero
bianco
rosso
giallo
R
0
255
255
255
G
0
255
0
255
B
0
255
0
0
grigio
127
127
127
Facoltà di Farmacia - Corso di Informatica
“Demo”
229
Riassumendo quanto visto fino ad adesso:
Palette
Tavolozza dei colori (palette):
palette
• in un’immagine indica quali colori possono
essere assegnati ad un pixel
• dà la corrispondenza tra un numero associato
a un pixel e il colore reale
Ogni immagine ha una propria tavolozza, a
meno che sia un’immagine true color
Facoltà di Farmacia - Corso di Informatica
231
Pixel e palette
Partiamo da un’immagine a 256 colori, cioè 8 bit/pixel
Facoltà di Farmacia - Corso di Informatica
232
Pixel e palette
Partiamo da un’immagine a 256 colori, cioè 8 bit/pixel
Facoltà di Farmacia - Corso di Informatica
233
Pixel e palette
Facoltà di Farmacia - Corso di Informatica
234
Pixel e palette
Codifica dei pixel
32
32
32
21
32
21
21
17
21
21
17
21
21
21
17
21
21
17
32
21
21
33
33
33
Facoltà di Farmacia - Corso di Informatica
235
Pixel e palette
Codifica dei pixel
32
32
32
21
32
21
21
17
21
21
17
21
21
21
17
21
21
17
32
21
21
33
33
33
Facoltà di Farmacia - Corso di Informatica
236
Pixel e palette
Tavolozza
Indice
R
G
B
53
23
56
57
...
17
112
…
21
118
…
Codifica dei pixel
32
146
64
33
33
149
66
54
32
32
32
21
32
21
21
17
21
21
17
21
21
21
17
21
21
17
32
21
21
33
33
33
Facoltà di Farmacia - Corso di Informatica
…
237
Pixel e palette
Tavolozza
Indice
R
G
B
53
23
56
57
...
17
112
…
21
118
…
Codifica dei pixel
32
146
64
33
33
149
66
54
32
32
32
21
32
21
21
17
21
21
17
21
21
21
17
21
21
17
32
21
21
33
33
33
Facoltà di Farmacia - Corso di Informatica
…
238
In definitiva
Occupazione delle immagini
a colori (N.B.!!!)
• Es.: immagine 150 x 200 pixel a 16
colori
Facoltà di Farmacia - Corso di Informatica
240
Occupazione delle immagini
a colori (N.B.!!!)
• Es.: immagine 150 x 200 pixel a 16
colori
Occorrono 4 bit per pixel (perché 24=16),
Facoltà di Farmacia - Corso di Informatica
241
Occupazione delle immagini
a colori (N.B.!!!)
• Es.: immagine 150 x 200 pixel a 16
colori
Occorrono 4 bit per pixel (perché 24=16),
quindi occupa
150 * 200 * 4 bit = 120000 bit = 15000 byte
(oltre alla palette)
Facoltà di Farmacia - Corso di Informatica
242
Occupazione delle immagini
a colori (N.B.!!!)
• Es.: immagine 150 x 200 pixel a 16
colori
Occorrono 4 bit per pixel (perché 24=16),
quindi occupa
150 * 200 * 4 bit = 120000 bit = 15000 byte
(oltre alla palette)
• Es.: immagine 150 x 200 pixel true color
Facoltà di Farmacia - Corso di Informatica
243
Occupazione delle immagini
a colori (N.B.!!!)
• Es.: immagine 150 x 200 pixel a 16
colori
Occorrono 4 bit per pixel (perché 24=16),
quindi occupa
150 * 200 * 4 bit = 120000 bit = 15000 byte
(oltre alla palette)
• Es.: immagine 150 x 200 pixel true color
Occorrono 3 byte (24 bit) per pixel,
Facoltà di Farmacia - Corso di Informatica
244
Occupazione delle immagini
a colori (N.B.!!!)
• Es.: immagine 150 x 200 pixel a 16
colori
Occorrono 4 bit per pixel (perché 24=16),
quindi occupa
150 * 200 * 4 bit = 120000 bit = 15000 byte
(oltre alla palette)
• Es.: immagine 150 x 200 pixel true color
Occorrono 3 byte (24 bit) per pixel,
quindi occupa
150 * 200 * 3 byte = 90000 byte
Facoltà di Farmacia - Corso di Informatica
245
Codifica delle immagini a
colori
• Esistono tecniche di compressione delle immagini che
consentono di ridurre la dimensione dello spazio
occupato
• Per esempio, una tecnica consiste nel codificare aree
dello stesso colore in modo abbreviato
6*
• Formati compressi più diffusi sono gif e jpeg
• Altri formati di codifica sono tiff, bmp, pict, png
• In generale si può passare da un formato all’altro
Facoltà di Farmacia - Corso di Informatica
246
Codifica delle immagini in
movimento
• Codifica di sequenze di immagini (dette
fotogrammi o frame)
• Visto lo spazio elevato richiesto, occorrono
tecniche di memorizzazione efficienti:
per esempio, sono memorizzate solo le
differenze tra un fotogramma e l’altro
• Esistono vari formati (compresi i suoni): mpeg,
avi (microsoft), quicktime (apple)
• È possibile ritoccare i singoli fotogrammi
Facoltà di Farmacia - Corso di Informatica
247
Codifica dei suoni
• Il suono è uno dei mezzi principali di comunicazione
• Anche i suoni possono essere codificati in digitale
• Un suono è un’onda di pressione che si ha in presenza
di un mezzo (l’aria, l’acqua)
• Quando un suono viene rilevato dall’orecchio o da un
microfono, viene trasformato in uno stimolo – o segnale
– elettrico
• Durata,
Durata intensità e variazione nel tempo della pressione
dell'aria sono le quantità fisiche che rendono un suono
diverso da ogni altro
Facoltà di Farmacia - Corso di Informatica
250
Codifica dei suoni
• Sull'asse delle ascisse (x) viene rappresentato il
tempo
Sull'asse delle ordinate (y) viene rappresentata
l' ampiezza (o intensita') corrispondente al
suono stesso
• Si rappresenta quindi l’intensità del suono in
funzione del tempo
ampiezza
tempo
• Tempo e intensità sono quantità analogiche
Facoltà di Farmacia - Corso di Informatica
251
Codifica dei suoni
• Problema. Passare da rappresentazione analogica a
rappresentazione digitale
ampiezza
tempo
Facoltà di Farmacia - Corso di Informatica
252
Codifica dei suoni
• Problema. Passare da rappresentazione analogica a
rappresentazione digitale
• Idea. Si effettuano dei campionamenti sull’onda (cioè si
misura il valore dell’onda a intervalli costanti di tempo)
ampiezza
ampiezza
tempo
tempo
Facoltà di Farmacia - Corso di Informatica
253
Codifica dei suoni
• Problema. Passare da rappresentazione analogica a
rappresentazione digitale
• Idea. Si effettuano dei campionamenti sull’onda (cioè si
misura il valore dell’onda a intervalli costanti di tempo)
e si codificano in forma digitale le informazioni
(numeriche) estratte da tali campionamenti
ampiezza
ampiezza
ampiezza
tempo
tempo
Facoltà di Farmacia - Corso di Informatica
tempo
254
Codifica dei suoni
• Analogamente alle immagini,
maggiore è la frequenza dei campionamenti, migliore
sarà la precisione con cui il segnale viene memorizzato
e la fedeltà all’originale
ampiezza
ampiezza
tempo
Facoltà di Farmacia - Corso di Informatica
tempo
255
Codifica dei suoni
• Analogamente alle immagini,
maggiore è la frequenza dei campionamenti, migliore
sarà la precisione con cui il segnale viene memorizzato
e la fedeltà all’originale
• Qual è il campionamento più fedele?
ampiezza
tempo
Facoltà di Farmacia - Corso di Informatica
tempo
256
Codifica dei suoni
• Analogamente alle immagini,
maggiore è la frequenza dei campionamenti, migliore
sarà la precisione con cui il segnale viene memorizzato
e la fedeltà all’originale
• Qual è il campionamento più fedele?
ampiezza
tempo
Campionamento meno fedele
tempo
Campionamento più fedele
Facoltà di Farmacia - Corso di Informatica
257
Codifica dei suoni
• Discretizzando esclusivamente sul tempo, abbiamo
ancora campioni analogici (l’ampiezza è un valore
analogico)
• Occorre discretizzare anche l’ampiezza di ogni
campione, per poterla esprimere con un numero binario
ampiezza
livelli di
quantizzazione
tempo
Facoltà di Farmacia - Corso di Informatica
258
Codifica dei suoni
• A ogni livello viene assegnata una sequenza binaria
(diversa per ognuno).
• Nell’esempio, si noti che i livelli sono etichettati con i
numeri in complemento a 2, e non tutte le combinazioni
di 4 bit sono visualizzate (e usate).
ampiezza
0101
0100
livelli di
quantizzazione
0011
0010
0001
0000
1111
tempo
1110
1101
1100
1011
Facoltà di Farmacia - Corso di Informatica
259
Codifica dei suoni
• Ogni campione viene approssimato al livello più vicino,
al valore indicato con il cerchio. Ogni campione sarà
quindi espresso dal numero binario corrispondente al
livello più prossimo.
ampiezza
0101
0100
livelli di
quantizzazione
0011
0010
0001
0000
1111
tempo
1110
1101
1100
1011
Facoltà di Farmacia - Corso di Informatica
260
Codifica dei suoni
• Il segnale rappresentato con la sequenza
0001 0011 0100 0010 0010 0011 0010
0000 1101 1101 1101 0001 0010 0010
sarà quindi ricostruito con il seguente segnale:
ampiezza
0101
0100
livelli di
quantizzazione
0011
0010
0001
0000
1111
tempo
1110
1101
1100
1011
Facoltà di Farmacia - Corso di Informatica
261
Codifica dei suoni
• La sequenza dei valori numerici ottenuta dai campioni è
quindi digitalizzata. Si ha una discretizzazione in tempo
e una sul valore
• CD musicali: 44100 campionamenti al secondo, 16 bit
per campione (-32768, 32767)
• Diversi formati: mov, wav, mpeg (mp3), avi, midi
• Formato midi codifica le note e gli strumenti che
devono eseguirle: solo musica, non voce
• Formato mp3 molto diffuso e molto efficiente
Facoltà di Farmacia - Corso di Informatica
262
Ed infine, esercizi!
Quanti byte occupa un suono della durata di 5 secondi
campionato a 30 Hz (30 campioni per secondo), in cui ogni
campione occupa 6 byte?
Un secondo di suono campionato a 512 Hz occupa 1 KB.
Quanti valori distinti possono avere i campioni?
Una fiacca battuta finale
Ci sono 10 tipi di persone:
quelle che capiscono la notazione
binaria e quelle che non la capiscono
01000110011010010110111001100101
Una fiacca battuta finale
Ci sono 10 tipi di persone:
quelle che capiscono la notazione
binaria e quelle che non la capiscono
01000110011010010110111001100101
01000110
70=F
01101001
105=i
01101110 01100101
110=n
101=e
Esercizi
di riepilogo
Facoltà di Farmacia - Corso di Informatica
267
Esercizi
1. Dati 6 bit, quante informazioni distinte si possono
rappresentare?
2. Quante informazioni distinte si possono rappresentare con
un byte?
3. Quanti bit si devono utilizzare per rappresentare 20
informazioni distinte?
4. Quanti byte occupa la parola “letterature” scritta in ASCII
esteso?
5. Quanti byte occupa la frase “l’inglese, il francese” scritta
in ASCII esteso?
6. Quanti byte occupa la parola “cinese” rappresentata in
UNICODE?
Facoltà di Farmacia - Corso di Informatica
269
Risposte
1. Dati 6 bit, quante informazioni distinte si possono
rappresentare?
26=64 informazioni distinte
2. Quante informazioni distinte si possono rappresentare con
un byte?
1 byte = 8 bit, 28=256 informazioni distinte
3. Quanti bit si devono utilizzare per rappresentare 20
informazioni distinte?
Almeno 5 bit, perché 25=32 ≥20 (4 bit non sono sufficienti,
perché 24=16 < 20)
4. Quanti byte occupa la parola “letterature” scritta in ASCII
esteso?
11 (in ASCII esteso, un carattere corrisponde a un byte)
5. Quanti byte occupa la frase “l’inglese, il francese” scritta
in ASCII esteso?
22
6. Quanti byte occupa la parola “cinese” rappresentata in
UNICODE?
12 secondo il libro; da 6 a 24 secondo quanto detto a lezione
Facoltà di Farmacia - Corso di Informatica
270
Esercizi
7. Le parole “Shakespeare” e “shakespeare” hanno la stessa
rappresentazione in ASCII?
8. Le parole città e citta’ hanno la stessa rappresentazione in
ASCII?
9. Quanti byte occupa un suono della durata di 5 secondi
campionato a 30 Hz (30 campioni per secondo), in cui ogni
campione occupa 6 byte?
10.Un secondo di suono campionato a 512 Hz occupa 1 KB.
Quanti valori distinti possono avere i campioni?
11.Un'immagine a 256 colori è formata da 400x400 pixel.
Quanto spazio occupa?
Facoltà di Farmacia - Corso di Informatica
271
Risposte
7. Le parole “Shakespeare” e “shakespeare” hanno la stessa
rappresentazione in ASCII?
No
8. Le parole città e citta’ hanno la stessa rappresentazione in
ASCII?
No
9. Quanti byte occupa un suono della durata di 5 secondi
campionato a 30 Hz (30 campioni per secondo), in cui ogni
campione occupa 6 byte?
5 * 30 * 6 = 900 byte
10. Un secondo di suono campionato a 512 Hz occupa 1 KB.
Quanti valori distinti possono avere i campioni?
1 KB = 1024 byte; numero di campioni = 1 * 512 = 512; ogni
campione contiene 1024/512 = 2 byte; 2 byte = 16 bit; 216
valori distinti.
11. Un'immagine a 256 colori è formata da 400x400 pixel.
Quanto spazio occupa?
Ogni pixel richiede un byte (=8 bit, perché 28=256, sufficiente
per rappresentare 256 colori); l'immagine ha 400 * 400 = 160
000 pixel; l'immagine occupa 160 000 byte (= 1 280 000 bit)
Facoltà di Farmacia - Corso di Informatica
272
Esercizi
12.Hai ricevuto un messaggio di posta elettronica da un
amico. Il messaggio contiene:
un testo di 300 caratteri scritto in ASCII,
un'immagine di 120x150 pixel con 1024 colori.
Quanti byte occupa il messaggio?
13.Un'immagine di 300x400 pixel occupa 15 000 byte.
L'immagine è a colori oppure in bianco e nero?
14.Quanto spazio occupa un'immagine animata di 100x100
pixel a 128 colori, formata da 6 frame?
Facoltà di Farmacia - Corso di Informatica
273
Risposte
12.Hai ricevuto un messaggio di posta elettronica da un
amico. Il messaggio contiene:
un testo di 300 caratteri scritto in ASCII,
un'immagine di 120x150 pixel con 1024 colori.
Quanti byte occupa il messaggio?
Testo: 300 byte. Immagine: ogni pixel richiede 10 bit (perché
210=1024); l'immagine ha 120 * 150 = 18 000 pixel;
l'immagine occupa 10 * 18000 = 180 000 bit = 22 500 byte. Testo
+ immagine: 300 + 22 500 = 22 800 byte
13.Un'immagine di 300x400 pixel occupa 15 000 byte.
L'immagine è a colori oppure in bianco e nero?
L'immagine ha 300 * 400 = 120 000 pixel e occupa 15 000 *
8 = 120 000 bit. Quindi ad ogni pixel corrisponde un bit, e
l'immagine è in bianco e nero
14.Quanto spazio occupa un'immagine animata di 100x100
pixel a 128 colori, formata da 6 frame?
Ogni frame ha 100 * 100 = 10 000 pixel; ogni pixel richiede 7
bit (perché 27=128); ogni frame occupa 10 000 * 7 = 70 000
bit; l'immagine animata occupa 70 000 * 6 = 420 000 bit (=
52 500 byte)
Facoltà di Farmacia - Corso di Informatica
274
Esercizi
15.Codificate i seguenti numeri (in codifica binaria non in
complemento a due) nella corrispondente rappresentazione
decimale:
– 1012
– 10112
– 11012
– 100000012
– 110011002
– 11111111
16. Codificate i seguenti numeri nella corrispondente
rappresentazione binaria:
– 810
– 710
– 6010
– 28110
Verificate i risultati convertendoli nella rappresentazione
decimale.
• 17. Dato il numero 86210 qual è il numero minimo di bit che si
devono usare per la sua rappresentazione binaria?
Facoltà di Farmacia - Corso di Informatica
275
Risposte
15.Codificate i seguenti numeri (in codifica binaria non in
complemento a due) nella corrispondente rappresentazione
decimale:
– 1012 = 510
– 10112 = 1110
– 11012 = 1310
– 100000012 = 12910
– 110011002 = 20410
– 111111112 = 25510
16. Codificate i seguenti numeri nella corrispondente
rappresentazione binaria:
– 810 = 10002
– 710 = 1112
– 6010 = 1111002
– 28110 = 1000110012
Verificate i risultati convertendoli nella rappresentazione
decimale.
• 17.Dato il numero 86210 qual è il numero minimo di bit che si
devono usare per la sua rappresentazione binaria?
Numero minimo di bit: 10 (86210 = 11010111102)
Facoltà di Farmacia - Corso di Informatica
276
Esercizi
18.Fate l'addizione dei numeri 11002 e 11012 nella maniera
seguente: codificate i numeri 11002 e 11012 nella
rappresentazione decimale, fate l'addizione dei numeri in
base 10 ottenuti, e poi codificate la somma ottenuta nella
rappresentazione binaria.
19.Ripetete la domanda precedente usando i numeri 10012 e
11012.
20.Codificate i seguenti numeri rappresentati in complemento
a due nella corrispondente rappresentazione decimale:
19.1111002
20.0001002
21.1000112
22.1010102
23.0101012
24.1111112
Facoltà di Farmacia - Corso di Informatica
277
Risposte
18.Fate l'addizione dei numeri 11002 e 11012 nella maniera
seguente: codificate i numeri 11002 e 11012 nella
rappresentazione decimale, fate l'addizione dei numeri in base
10 ottenuti, e poi codificate la somma ottenuta nella
rappresentazione binaria.
11002 + 11012 = 110012 (11002 = 1210 , 11012 = 1310 , 2510 = 110012)
19.Ripetete la domanda precedente usando i numeri 10012 e 11012.
10012 + 11012 = 101102 (10012 = 910 , 11012 = 1310 , 2210 = 101102)
20.Codificate i seguenti numeri rappresentati in complemento a due
nella corrispondente rappresentazione decimale:
1.1111002 = -410
2.0001002 = 410
3.1000112 = -2910
4.1010102 = -2210
5.0101012 = 2110
6.1111112 = -110
Facoltà di Farmacia - Corso di Informatica
278