Exercices sur la représentation des données
Exercice N°1 ... Multiplier 10011011 et 11001101 en binaire. Corrigé : ....
Convertir le nombre décimal 8,625 en virgule flottante suivant la norme IEEE 754
:.
Part of the document
[pic]
Initiation à l'Architecture des Ordinateurs
Travaux Dirigés N°2
Représentation des Données
Exercice N°1
Exprimez le nombre décimal 100 dans les bases de 2 à 9 et en hexadécimal
Corrigé :
|Base 2 |1100100|
|Base 3 |10201 |
|Base 4 |1210 |
|Base 5 |400 |
|Base 6 |244 |
|Base 7 |202 |
|Base 8 |144 |
|Base 9 |121 |
|Base 16|64 |
Exercice N°2
Multiplier 10011011 et 11001101 en binaire.
Corrigé :
| | | |
|0 |1 0 0 0 0 0 |0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 |
| |1 0 |0 0 0 0 0 0 0 0 |
Exercice N°5
En utilisant le codage virgule flottante utilisé par IBM pour la famille
d'ordinateurs 370(1) , exprimez sous forme normalisée le nombre
fractionnaire 7/64.
(1) (Signe de la mantisse sur un bit, Exposant sur 7 bits décalé de 64,
Mantisse à 24 bits avec la virgule binaire située à gauche de la mantisse,
la base d'exponentiation étant 16)
Corrigé :
. Conversion de 7/64 en Hexadécimal :
o Première méthode : 7/64 = 0,109375
Le nombre ne comporte pas de partie entière et il suffit de
convertir la partie décimale en hexadécimal :
0,109375 => 0,1C
o Autre méthode :
7 / 64 = (7 x 4) / (16 x 4) = 28 / 256 = 28 x 16
-2
ce qui donne en hexadécimal : 1C x 16-2 et en
normalisant : 0,1C x 160
. Valeur normalisée : 0,1C x 160
. Décomposition du nombre en ses divers éléments :
o Bit de signe : 0 (Nombre >0)
o Exposant sur 7 bits biaisé à 64 => 0 + 64 = 64 => 1000000
o Mantisse sur 24 bits : 00011100 00000000 00000000
|Sign|Exposant |Pseudo mantisse |
|e |biaisé | |
|0 |1 0 0 0 0 0 |0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0|
| |0 |0 0 0 0 0 0 0 |
Exercice N°6
Donnez la traduction à laquelle correspond le mot de 4 octets codé en
hexadécimal suivant : 49 55 50 31
selon qu'on le lit comme :
- un entier signé,
- un entier représenté en complément à 2,
- un nombre représenté en virgule flottante simple précision suivant la
norme IEEE 754,
- une suite de caractères ASCII (représentés chacun sur 8 bits, le bit
de plus fort poids étant inutilisé et codé à 0)
Corrigé :
|Hexadécimal |4 |9 |
| | | |
|Complément à 2|+ |1 230 327 857 |
| | | |
|IEEE 774 |0 | 100 1001|101 |
| | |0 | |
| | |
| |+ 1, 101 0101 0101 0000 0011 0001 x 219 |
| |+ 1101 0101 0101 0000 0011, 0001 x 20 => |
| |873 731, 0625 |
| | | | | |
Exercice N°7
Soient les 2 nombres codés suivant la norme IEEE 754 et représentés en
hexadécimal : 3EE00000 et 3D800000
Calculez en la somme et donnez le résultat sous forme IEEE 754 et sous
forme décimale.
Même question avec les nombres : C8 80 00 00 et C8 00 00 00.
Corrigé :
1 - Somme de 3EE00000 et 3D800000
|Hexadécimal |3 |E |E |
| | + 1, 110 x 2-2 ( => |
| |0,4375 en décimal) |
|Hexadécimal |3 |D |8 |
| | + 1 , 0 x 2-4 ( |
| |=> 0,0625 en décimal) |
(1,110 x 2-2 ) + (1,0 x 2-4 ) = (1,110 x 2-2 ) + (0,010 x 2-2 )
= (1,110 + 0,010) x 2-2 =
10,0 x 2-2 = 1,0 x 2-1
|IEEE 774 | + 1, 0 x 2-1 ( => 0, 5 |
| |en décimal) |
| |+ |Exp : = -1 |Mantisse : 1, 0 |
| | |Biaisé :-1+12|Pseudo mantisse : 000 0000 0000 |
| | |7 = 126 |0000 0000 0000 |
|Binaire |0 |011 |1111 |
| | - 1 , 0 x 218 (- 262 |
| |144 en décimal) |
|Hexadécimal |C |8 |0 |
| | - 1 , 0 x 217 (- 131 |
| |072en décimal) |
(- 1,.0 x 218) + (- 1, 0 x 217) = (- 1,.0 x 218) + (- 0, 1 x 218) = -
1,1 x 218
|IEEE 774 | - 1,10 x 218 en |
| |décimal) |
| |- |Exposant = 18|Mantisse : 1, 10 |
| | | |Pseudo mantisse : 100 0000 0000 |
| | |Biaisé: 18 + |0000 0000 0000 |
| | |127= 145 | |
|1 |100 |1000 |1 |100 |0000 |0000 |0000 |0000 |0000 | |Hexadécimal |C
|8 |C |0 |0 |0 |0 |0 | |