Après avoir étudié les 3 documents proposés ci-dessous, expliquant le codage des nombres réels sur un ordinateur, vous devez être capable :
Question 1
Expliquer à quoi correspond le sigle IEEE ?
Institute of Electrical and Electronics Engineers ou IEEE
Il s'agit d'une organisation qui a pour but de promouvoir la connaissance dans le domaine de l’ingénierie électrique,électronique).
Elle comprend des "comités" charger de définir différentes normes identifiées par un numéro :
Question 2
Consulter Nombres Flottants / IUT Info reims
Question 3
Convertir sur 8 bits la partie fractionnaire suivante (0.578125)10.
0.578125 × 2 = 1.15625 --> 1 0.15625 × 2 = 0.3125 --> 0 0.3125 × 2 = 0.625 --> 0 0.625 × 2 = 1.25 --> 1 0.25 × 2 = 0.5 --> 0 0.5 × 2 = 1.0 --> 1 0.0 × 2 = 0.0 --> 0 d'où l'on en déduit : (0.578125)10 = 0.100101002 En effet 1x2-1 + 0x2-2 + 0x2-3 + 1x2-4 + 0x2-5 + 1x2-6 + 0x2-7 + 0x2-8 Soit 0,5 + 0,0625 + 0,015625 = 0.578125 Il s'agit donc d'une conversion sans perte.
Question 4
Convertir au format IEEE 754 (-0.078125) en simple précision.
Signe 1 bit : (-) --> 1 0.078125 × 2 = 0.15625 --> 0 0.15625 × 2 = 0.3125 --> 0 0.3125 × 2 = 0.625 --> 0 0.625 × 2 = 1.25 --> 1 0.25 × 2 = 0.5 --> 0 0.5 × 2 = 1.0 --> 1 0.0 × 2 = 0.0 --> 0 Représentation binaire : 0.0001010 (valeur absolue) Normalisation : 1.010 × 2−4 Exposant réel : -4 Exposant décalé 8 bits : (−4 + 127)10 = (123)10 = (01111011)2 Mantisse sur 23 bits : 010000000000000000000002 Ce qui donne : 10111101 10100000 00000000 000000002
Question 5
Convertir en décimal le nombre 010000011111111010000000000000002 exprimé au format IEEE 754 simple précision.
Signe : bit le plus à gauche = (0) donc signe + Exposant décalé : 10000011(2) = 131(10) Exposant réel : (131 − 127)(10) = 4(10) Mantisse M = 111 1110 1000 0000 0000 0000 Valeur : 1.M : 1.111 1110 1 Valeur 1.M et exposant 4 : 11111.1101 Soit (24 +23 +22 +21 +20 +2−1 +2−2 +2−4)(10) Soit 31.8125(10)
Question 6
Ecrire un programme python permettant de convertir un nombre décimal au format IEEE 754 simple précision.
Ce programme retournera un t-uple (Signe,Exposant,Mantisse).
Pensez à écrire un jeu de tests pour votre programme. Le faire valider par votre enseignant.