Sei sulla pagina 1di 5

Rappresentazione di un numero reale in virgola mobile

Il numero 1000 oppure il numero 0,003 (qui rappresentati in virgola fissa, cioè posta dopo le unità)
possono essere rappresentati diversamente rimanendo sempre nel sistema in base 10.

𝑅 = 𝑀 𝑥 𝑏𝐸

Dove R è il numero reale espresso in virgola fissa


M è la mantissa
b la base di numerazione
E l’esponente
Dunque :

1000 = 1 𝑥 103
0,003 = 3 𝑥 10−3

In informatica la mantissa deve essere normalizzata quindi per definizione di normalizzazione il


secondo numero dopo la virgola deve essere diverso da zero e dunque avremo:
1000 = 0,1 𝑥 104
0,003 = 0,3 𝑥 104
Il sistema di numerazione ( anzi i sistemi di numerazione) sono posizionali
Infatti se consideriamo il numero 1524 questo lo possiamo pensare come la somma dei valori che
assumono ciascuna cifra in base alla sua posizione:
(1000 = 1𝑥103 ) + (500 = 5𝑥102 ) + (20 = 2𝑥101 ) + (4 = 4𝑥100 ) = 1524
1524= 1000 + 500 + 20 + 4
Rappresentazione di un numero nella sua base e trasformazione di un
numero da una base in un’altra

Per un numero binario come può essere

1 0 0 1

Vale la stessa regola posizionale:


Come si può evincere dagli esempi precedenti nel sistema decimale se ho soltanto due posizioni
disponibili io posso rappresentare (e contare) i numeri che vanno da 0 a 99 se ne ho 3 posso
rappresentare i numeri che vanno da 0 a 999 e così via, cioè ho bisogno di aggiungere sempre più
posizioni a sinistra man mano che cresce il numero che voglio rappresentare o contare.
Nel sistema binario vale la stessa regola, quindi, se ho una sequenza classica di 8bit = 1 byte ( in
informatica si va di 8 in 8) posso rappresentare i numeri che vanno da:

0 0 0 0 0 0 0 0

Che corrisponde a 0 ( zero),


fino a:

1 1 1 1 1 1 1 1

Che corrisponde a 256 cioè:

Quindi possiamo dire che il numero massimo rappresentabile dipende dal numero di posizioni che
ho a disposizione cioè :

Il numero max rappresentabile è uguale alla base b elevato ad n , dove n sono il numero di
posizioni (o bit nel sistema binario)

𝑛𝑢𝑚 𝑚𝑎𝑠𝑠𝑖𝑚𝑜 = 𝑏𝑛
Se ho 8 bit il numero massimo rappresentabile è dato da 2 (base del sitema binario) elevato ad n
(= 8) cioè 256 numeri
28 = 256
Nel sistema decimale vale la stessa regola:
Quanti numeri posso rappresentare con tre posizioni?
Bisogna elevare la base del sistema ed elevarlo al numero di posizioni:

103 = 1000

Se io ho il numero 128 e lo voglio rappresentare nel sistema binario di quanti bit avrò bisogno?

Va applicata la formula inversa dell’esponenziale che è il logaritmo che ha per base la base
numerica che stiamo considerando:
𝑛 = 𝑙𝑜𝑔2 128
N= 7

Se io ho il numero 1000 e lo voglio rappresentare nel sistema decimale di quante posizioni avrò
bisogno?

𝑛 = 𝑙𝑜𝑔10 1000
N= 3
Ovviamente ( ma forse non è ovvio) mi posso anche chiedere di quanti bit ho bisogno per
rappresentare un numero decimale in un sistema binario.
Cioè dato un numero decimale ( 1000 in questo esempio) di quanti bit ho bisogno per poterlo
rappresentare in base due (in binario)?
Questa volta devo calcolare il logaritmo in base due (perché il numero di posizioni da calcolare le
vogli nel sistema binario)
𝑛 = 𝑙𝑜𝑔2 1000 = 9,97
Non essendoci frazioni di bit dobbiamo approssimare sempre al numero maggiore e dunque
N= 10 (cioè con un numero costituito da una serie di dieci zero ed uno posso rappresentare il
numero mille)
Se vogliamo passare invece dal sistema sistema decimale al sistema binario allora le operazioni da
fare sono le seguenti:

Potrebbero piacerti anche