Exercice 5 : nombre au format float
Un nombre codé sur 32 bits (float) est de la forme:
- Les bits 0 à 22 (la mantisse) servent à coder le nombre sans tenir compte de la virgule.
- Les bits 23 à 30 servent à donner l'exposant : -126 à 127. Cette manière de coder est un peu bizarre. Pour avoir l'exposant il faut faire exp=nombre(bits 23 à 30) – 127 (décalage)
- Le bit 31 sert à préciser le signe. (0= positif, 1=négatif)
Un nombre flottant normalisé a une valeur donnée par la formule suivante :
valeur = signe × (1,mantisse)10 × 2(exposant − décalage)
Un exemple:
soit le nombre flottant (float): 0 10000010 11000000000000000000000
- signe = 0 : positif
- mantisse : 11000000000000000000000
- exposant : 10000010 = 128 + 2 = 130
mantisse : (1,110...)2 = 1×20 , (1×2-1)+(1×2-2)+(0×2-3)+... = 1, (0,5+0,25+0+0+...) = 1,75 (en décimal)
valeur = + 1,75 × 2(130 − 127)= 1,75*23= 14
C'est à vous maintenant:
Retrouvez la valeur binaire des nombres flottants suivants :
a) 1 10000010 1111010000000000000000
b) 0 10001000 01101100001000000000000
c) 11000010000011100000000000000000