Conversion binaire selon la norme IEEE754 (nombre a virgule flottante)

Publié le 30 oct. 2015 il y a 8A par Anonyme - Fin › 2 nov. 2015 dans 8A
1

Sujet du devoir

Quelle est la représentation selon la norme IEEE 754 de 1358,65 ?

On rappelle le principe du codage des nombres `a virgule flottante simple precision selon la norme IEEE754.
— le nombre est cod´e sur 32 bits
— le premier bit est le bit de signe (bit s)
— les 8 bits suivants codent e en binaire naturel
— les 23 derniers bits m−1, . . ., m−23 forment le mot m dont la valeur est donne par
m =somme pour les i allant de -1 a -23 des mi. 2^i

Au final, la valeur du nombre X codé est donnee par
X = (−1)^s* (1 + m)* 2^(e−127)

Où j'en suis dans mon devoir

Je ne comprends pas la méthode a utiliser. Je sais convertir du binaire au décimale selon cette norme mais pas dans l'autre sens ce qui me pose problème pour cette question. 

Je pensais convertir d'abord la partie entière en binaire naturel puis mettre une virgule et convertir la partie décimale en faisant 0.65*2=1.3

0.3*2=0.6

0.6*2= ... 

 

J'ai finalement obtenue : 1358.65 = 101 0100 1110, 1010 0110

Et après comment faire parce que l'on a le bit de signe qui est positif mais comment trouver la mantisse et l'exposant ? 




1 commentaire pour ce devoir


Anonyme
Posté le 30 oct. 2015

On a 101 0100 1110, 1010 0110

Le bit de signe est à 0 puisque le nombre est positif.

101 0100 1110, 1010 0110 = 1,010100111010100110 * 2^6 par abus d'écriture

Donc l'exposant E=6+127=133

Pour la mantisse tu prends les chiffres derrière la virgule et tu rajoutes des 0 pour compléter


Ils ont besoin d'aide !

Il faut être inscrit pour aider

Crée un compte gratuit pour aider

Je m'inscrisOU

J'ai déjà un compte

Je me connecte