04 Exos Représentation reels Correction
Exercice 1⚓︎
-
Écrire le nombre \(0,0101010101_2\) en base \(10\).
\(0,0101010101_2 = 0 \times 2^0 + 1 \times 2^{-2} + 1 \times 2^{-4} + 1 \times 2^{-6} + 1 \times 2^{-8} + 1 \times 2^{-10} = 0,3330078125\) -
Écrire le nombre \(11100,10001_2\) en base \(10\).
\(11100,10001_2 = 1 \times 2^{4} + 1 \times 2^{3} + 1 \times 2^{2} + 1 \times 2^{-1} + 1 \times 2^{-5} = 28,53125\)
Exercice 2⚓︎
-
Transformer \(0,5625_{10}\) en base \(2\).
\(0,5625 \times 2 = 1,125\), donc 1er bit : 1
\(0,125 \times 2 = 0,25\), donc 2e bit : 0
\(0,25 \times 2 = 0,5\), donc 3e bit : 0
$0,5 \times 2 = 1, donc 4e bit : 1
donc \(0,5625_{10} = 0,1001_{2}\) -
Transformer \(0,15_{10}\) en base \(2\).
\(0,15 \times 2 = 0,3\), donc 1er bit : 0
\(0,3 \times 2 = 0,6\), donc 2e bit : 0
\(0,6 \times 2 = 1,2\), donc 3e bit : 1
\(0,2 \times 2 = 0,4\), donc 4e bit : 0
\(0,4 \times 2 = 0,8\), donc 5e bit : 0
\(0,8 \times 2 = 1,6\), donc 6e bit : 1
\(0,6 \times 2 = 1,2\), donc 7e bit : 1
... on tourne en boucle...
\(0,15_{10} = 0,001001100110011001....1001....\) -
Transformer \(12,9_{10}\) en base \(2\).
\(12_{10} = 1100\)
\(0,9 \times 2 = 1,8\), donc 1er bit : 1
\(0,8 \times 2 = 1,6\), donc 2e bit : 1
\(0,6 \times 2 = 1,2\), donc 3e bit : 1
\(0,2 \times 2 = 0,4\), donc 4e bit : 0
\(0,4 \times 2 = 0,8\), donc 5e bit : 0
\(0,8 \times 2 = 1,6\), donc 6e bit : 1
... on tourne en boucle...
\(12,9_{10} = 1100,11100110011001100....1100....\)
Exercice 3⚓︎
Donner la représentation flottante, en simple précision, des nombres suivants :
-
\(128\)
\(128_{10} = 2^{7} = 1,0 \times 2^{7}\)
Code du signe positif : \(0\)
Code de l'exposant \(= 7 + 127 = 134\) : \(10000110\)
Mantisse : \(1,000~0000~0000~0000~0000~0000\)
\(0 ~~~~ 1000~0110 ~~~~ 000~0000~0000~0000~0000~0000\) -
\(-32,75\)
\(32_{10} = 2^{5} = 100000_{2}\)
\(0,75 \times 2 = 1,5\), donc 1er bit : 1
\(0,5 \times 2 = 1\), donc 2e bit : 1
\(32,75_{10} = 100000,11_{2} = 1,0000011 \times 2^{5}\)
Code du signe négatif : \(1\)
Code de l'exposant \(= 5 + 127 = 132\) : \(10000100\)
Mantisse : \(1,000~0011~0000~0000~0000~0000\)
\(1 ~~~~ 1000~0100 ~~~~ 000~0011~0000~0000~0000~0000\) -
\(0,5625\)
On a vu à l'exercice 2 que \(0,5625_{10} = 0,1001_{2}\)
\(0,5625_{10} = 0,1001_{2} = 1,001 \times 2^{-1}\)
Code du signe positif : \(0\)
Code de l'exposant \(= -1 + 127 = 126\) : \(01111110\)
Mantisse : \(1,001~0000~0000~0000~0000~0000\)
\(0 ~~~~ 0111~1110 ~~~~ 001~0000~0000~0000~0000~0000\) -
\(12,9\)
On a vu à l'exercice 2 que \(12,9_{10} = 1100,11100110011001100....1100....\)
\(12,9_{10} = 1,10011100110011001100....1100.... \times 2^3\)
Code du signe positif : \(0\)
Code de l'exposant \(= 3 + 127 = 130\) : \(10000010\)
Mantisse : \(1,100~1110~0110~0110~0110~0110\)
\(0 ~~~~ 1000~0010 ~~~~ 100~1110~0110~0110~0110~0110\)
Remarque : cette représentation n'est pas exacte !
Exercice 4⚓︎
Décoder les nombres suivants donnés en simple précision, et donner leur valeur en écriture décimale :
-
\(1 ~~~~ 1000~0001 ~~~~ 001~1000~0000~0000~0000~0000\)
Code du signe \(1\) : négatif
Code de l'exposant \(10000001 = 128 + 1 = 129\) : exposant \(= 129 - 127 = 2\)
Mantisse : \(1,001~1\)
\(100,11_{2} = 4 + 0,5 + 0,25 = 4,75\)
Le nombre codé est \(-4,75\). -
\(0 ~~~~ 1000~0101 ~~~~ 000~0000~0100~0000~0000~0000\)
Code du signe \(0\) : positif
Code de l'exposant \(10000101 = 128 + 4 + 1 = 133\) : exposant \(= 133 - 127 = 6\)
Mantisse : \(1,000~0000~01\)
\(1000000,001_{2} = 64 + \dfrac{1}{8} = 64,125\)
Le nombre codé est \(64,125\). -
\(1 ~~~~ 1000~0010 ~~~~ 000~1100~0000~0000~0000~0000\)
Code du signe \(1\) : négatif
Code de l'exposant \(10000010 = 128 + 2 = 130\) : exposant \(= 130 - 127 = 3\)
Mantisse : \(1,000~11\)
\(1000,11_{2} = 8 + 0,5 + 0,25 = 8,75\)
Le nombre codé est \(-8,75\).
Exercice 5⚓︎
Quel est le plus grand nombre réel que l'on peut représenter en flottant simple précision ?
Donner son écriture binaire, et sa valeur en écriture décimale.
Le plus grand nombre réel que l'on peut représenter en flottant simple précision est :
\(0~~~~1111~1110~~~~111~1111~1111~1111~1111~1111\)
Il vaut :
Code du signe \(0\) : positif
Code de l'exposant \(11111110 = 255 - 1 = 254\) : exposant \(= 254 - 127 = 127\)
Mantisse : \(1,111~1111~1111~1111~1111~1111\)
\(1111~1111~1111~1111~1111~1111_{2} \times 2^{104}= (2^{24} - 1) \times 2^{104} = 2^{228} - 2^{104} \approx 4,3 \times 10^{68}\)