SISTEMI DI NUMERAZIONE
E
RAPPRESENTAZIONE DEI
NUMERI
Sistema di numerazione
Si dice Sistema di numerazione un Insieme
di simboli (detto BASE) per rappresentare i numeri e
di regole per eseguire le operazioni
Esempio:
sistema DECIMALE:
Significa che ci sono 10 dieci simboli diversi cioè BASE 10
(0 1 2 3 4 5 6 7 8 9)
E si applicano le usuali regole
dell’addizione/sottrazione/moltiplicazione/divisione
I Sistemi di numerazione
BASE del sistema = 10 (non è usato in Informatica perché la base
non è potenza di 2)
D
Sistemi usati in INFORMATICA perché le basi sono potenze di 2:
• il sistema BINARIO - base 2: due simboli (0 e 1)
• il sistema OTTALE – base 8: otto simboli ( 0 1 2 3 4 5 6 7)
• il sistema ESADECIMALE – base 16:
sedici simboli (0 1 2 3 4 5 6 7 8 9 A B C D E F)
Sistemi di numerazione posizionali
• Assumono particolare importanza i sistemi di numerazione detti
posizionali e sono il Decimale, Binario, Ottale ed Esadecimale
• Cioè ogni numero è espresso come
sommatoria di simboli (cifre) moltiplicate per la base elevata a
potenze crescenti:
•
es. 467,5 = 4 x 102+6 x 101 + 7 x 100+ 5 x 10-1
Conversione decimale - binario
37 decimale in binario = 1 0 0 1 0 1
37 :
2
= 18
resto
1
18 :
2
= 9
resto
0
9
:
2
= 4
resto
1
4
:
2
= 2
resto
0
2
:
2
= 1
resto
0
1
:
2
= 0
resto
1
Il nostro numero binario sarà
formato dai resti delle divisioni presi in ordine
contrario alle operazioni di divisione,cioè:
L’ultimo resto diventa la prima cifra del numero
convertito, il penultimo resto la seconda cifra etc.
Conversione binario - decimale
Numerazione posizione
100101
150403120110
Poi si moltiplichi ogni cifra del nostro numero binario per 2 elevato alla posizione
della cifra corrispondente
1 x 25 + 0 x 24 + 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 =
1 x 32 + 0 x 16 + 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1 =
32 + 0 + 0 + 4 + 0 + 1 = 37
Addizione tra numeri binari
Regola dell’addizione in binario:
0+1=1
1+0=1 1+1=10 (si dice uno-zero e non dieci!)
Esempio:
Sommiamo i due numeri binari 10010 e 11011
Riporto
1
1
I addendo
1 0 0 1 0
II addendo
1 1 0 1 1
somma
1 0 1 1 0 1
+
=
Verifichiamo con il sistema decimale
Numero binario
Numero decimale
10010 +
11011 =
101101
18
27
45
Addizione tra numeri binari
Esempio:
Sommiamo i due numeri binari 10110 e 10011
Riporto
1 1
1
I addendo
1 0 1 1 0
II addendo
1 0 0 1 1
somma
1 0 1 0 0 1
+
=
Verifichiamo con il sistema decimale
Numero binario
10110 +
10011 =
101001
Numero decimale
22
19
41
Sottrazioni tra numeri binari
Bisogna tenere conto che ogni volta che si deve sottrarre dalla cifra 0 la cifra 1
occorre chiedere in prestito una unità alla cifra di ordine immediatamente superiore e che
essa vale 1 unità' dell'ordine immediatamente inferiore. Dopo il prestito dell’unità
ovviamente resta 0.
Esempio:
Sottraiamo al numero binario 11010 il numero
binario 1001
Prestito
Minuendo
1
1 1 0 1 0 1 0 0 1 =
Sottraendo
Differenza 1 0 0 0 1
Verifichiamo con il sistema decimale
Numero binario Numero decimale
11010 26 1001 =
10001
9=
17
Sottrazioni tra numeri binari
Esempio:
Sottraiamo al numero binario 11110 il numero
binario 1010
Prestito
Minuendo 1 1 1 1 0 Sottraendo
1 0 1 0 =
Differenza 1 0 1 0 0
Verifichiamo con il sistema decimale
Numero binario Numero decimale
111101010 =
10100
3110 =
20
Moltiplicazioni tra numeri binari
Regola della moltiplicazione:
1x0=0 0x1=0 1x1=1
Esempio:
Moltiplichiamo il numero binario 110 con il
numero binario 11
I Fattore
II Fattore
I prodotto parziale
II prodotto parziale
Riporti
Prodotto
1 1 0 x
1 1 =
1 1 0
1 1 0
1
1 0 0 1 0
Verifichiamo con il sistema decimale
Numero binario Numero decimale
110 x
6x
11 =
3=
10010
18
Moltiplicazioni tra numeri binari
Esempio:
Moltiplichiamo il numero binario 101 con il
numero binario 10
I Fattore
II Fattore
I prodotto parziale
II prodotto parziale
1 0 1 x
1 0 =
0 0 0
1 0 1
Riporti
Prodotto
1 0 1 0
Verifichiamo con il sistema decimale
Numero binario Numero decimale
101 x
5x
10 =
1010
2=
10
Conversione negativo decimale - binario
Esempio:
Trasformiamo il numero decimale -18 in un numero binario
1. Trasformare il numero decimale in binario considerandolo positivo ( valore assoluto) , quindi non -18
ma 18
2. Trasformare il numero binario assoluto nel suo reciproco
3. Aggiungere 1
Numero decimale
18
Numero Binario
0 0 0 1 0 0 1 0 =
1 1 1 0 1 1 0 1 +
1 =
-18
1 1 1 0 1 1 1 0
Conversione decimale frazionario - binario
Per convertire il numero decimale 24,3 in binario si esegue la conversione di 24 come
abbiamo visto precedentemente e poi si deve convertire la parte decimale 0,3
•
•
•
•
REGOLA DI ESECUZIONE:
Si stabilisce in quante cifre si deve convertire il numero (ad. Es. su 5 cifre)
Si moltiplicherà 0,3 (numero che si vuole convertire in base binaria) x 2
Si ottiene una parte intera ed una decimale
• REGOLA DI ARRESTO: Quando la parte decimale diventa zero oppure quando si arriva al
numero prefissato di cifre nella nuova base (ad esempio 5 cifre decimali)
• REGOLA DI COMPOSIZIONE:
• il numero convertito si ottiene prelevando tutte le parti intere dalla prima fino all’ultima e
Conversione decimale frazionario - binario
ESEMPIO: convertire 0,3
Parte intera
Parte
decimale
Numero decimale
o
24
=
11000
0,3
=
010011
24,3
=
11000,01001
0,3x2=
0,6
0
0,6
0,6X2=
1,2
1
0,2
0,2X2=
0,4
0
0,4
0,4X2=
0,8
0
0,8
Numero decimale
0,8X2=
1,6
1
0,6
24
=
0,6X2=
1,2
0
0,2
0,3
=
…
…
…
…
24,3
=
Numero binario
11000
0,3 in binario diventa su cinque cifre decimali 0, 01 001
N.B. Se si converte 0,01001 non si ottiene esattamente 0,3 ma
0,01001 = 0x2-1+1x2-2+0x2-3 +0x2-4+1x2-5 =1/4+1/64 = 0,25+0,015625=0,2656 che
arrotondato per eccesso è uguale a 0,3
Binario
Ottale
Decimale
Esade
cimale
0 000
0
0
0
0 001
1
1
1
0 010
2
2
2
0 011
3
3
3
0 100
4
4
4
0 101
5
5
5
0 110
6
6
6
0 111
7
7
7
1000
10
8
8
1001
11
9
9
1010
12
10
A
Binario
Ottale
Decimale
Esadecimale
1011
13
11
B
1100
14
12
C
1101
15
13
D
1110
16
14
E
1111
17
15
F
TABELLA per le CONVERSIONI DI BASE
N.B.
3 cifre binarie corrispondono ad 1 cifra ottale
4 cifre binarie
ad
1 cifra esadecimale
Conversione OTTALE - binario
REGOLA: Per convertire un numero ottale in binario si deve ricordare che ogni cifra
ottale si converte MEDIANTE LA TABELLA per le conversioni in TRE cifre binarie
Esempio: 754 in ottale
Cifra ottale
7
=
cifre binarie desunte
da tabella di
conversione
111
5
=
101
4
=
100
754 in ottale si converte in
111 101 100 binario
Conversione binario - OTTALE
REGOLA: Per convertire un numero binario si deve ricordare che 3 cifre binarie partendo
da destra corrispondono MEDIANTE LA TABELLA per le conversioni ad una cifra ottale
Esempio:
10110111 in binario deve essere diviso in terne di cifre come indicato,
aggiungendo eventuali zeri non significativi per completare l’ultima terna
010 110 111
Cifre binarie
010
=
Cifra ottale desunta da
tabella di conversione
2
110
=
6
111
=
7
010 110 111
si converte in
2 6 7 ottale
Conversione ESADECIMALE - binario
REGOLA: Per convertire un numero esadecimale in binario si deve ricordare che ogni
cifra esadecimale si converte MEDIANTE LA TABELLA per le conversioni in
QUATTRO cifre binarie
Esempio: A4F in esadecimale
Cifra ottale
A
=
cifre binarie desunte
da tabella di
conversione
1010
4
=
0100
F
=
1111
A4F in esadecimale
si converte in
1010 0100 1111 binario
Conversione binario - ESADECIMALE
REGOLA: Per convertire un numero binario si deve ricordare che ogni 4 cifre binarie
partendo da destra corrispondono MEDIANTE LA TABELLA ad una cifra esadecimale
Esempio: 1010110111 in binario deve essere diviso in gruppi di quattro cifre come
indicato, aggiungendo eventuali zeri non significativi per completare l’ultimo gruppo non
significativo
0010 1011 0111
Cifre
binarie
Cifra esadecimale
desunta da tabella
di conversione
0010
=
2
1011
=
B
0111
=
7
0010 1011 0111
in binario
si converte in
2B7 esadecimale
LE RAPPRESENTAZIONI DEI NUMERI REALI
• LA VIRGOLA FISSA
• LA VIRGOLA MOBILE
RAPPRESENTAZIONE IN VIRGOLA FISSA
• La rappresentazione in virgola fissa consiste nel rappresentare
qualsiasi numero reale prefissando il numero di cifre per la parte intera e
per la parte decimale:
• ES.:
6,24
5 CIFRE per la parte intera
3 per la parte decimale
6,24 viene rappresentato come 00006,240
PROBLEMI CON LA VIRGOLA FISSA
La SOMMA e PRODOTTO possono generare un numero troppo grande
che non è rappresentato dal numero di cifre stabilito (in questo caso si ha
OVERFLOW
Esempio: numeri rappresentati in virgola fissa con 2 cifre intere
65+
75=
50
Invece di 150: si è avuto overflow
34x
3=
02
Invece di 102: si è avuto overflow
PROBLEMI CON LA VIRGOLA FISSA
La SOTTRAZIONE e la DIVISIONE possono generare un numero che è
troppo piccolo per essere rappresentato e si ha UNDERFLOW
Esempio: numeri rappresentati in virgola fissa con 2 cifre intere e 2
decimali
0,21:99 = 0,00 invece di 0,00212121 cioè si è avuto underflow
RAPPRESENTAZIONE IN VIRGOLA MOBILE
• La rappresentazione in virgola mobile consiste nel rappresentare qualsiasi numero
reale R di n cifre nella forma
di prodotto della mantissa M per la base elevata ad un esponente detto caratteristica
R = M bx
Esempio
•
•
45,21 = +0,4521 x 10+2
= +0,004521 x 10+4
= +452,1 x 10-1
• N.B. in excel si usa il formato scientifico per la virgola mobile con la lettera E
viene indicata la base 10 seguita dalla caratteristica
• Esempio
45,21 =
4521E+2 che è uguale a 4521x102
RAPPRESENTAZIONE IN VIRGOLA MOBILE
(normalizzata)
• Forma normalizzata se
La Parte intera della Mantissa è minore della Base
Es.: 0,00002345 non normalizzata
normalizzata = 2,345 10-5
Es.: non normalizzata 0,002345 10-2