bjr !je voudrai savoir comment convertir un réel à un binaire sans perdre de l'information?j'ecris mon code sur le matlab!si vous pouvez me donner du code ou un algorithme!merci aidez moi svp
bjr !je voudrai savoir comment convertir un réel à un binaire sans perdre de l'information?j'ecris mon code sur le matlab!si vous pouvez me donner du code ou un algorithme!merci aidez moi svp
Bonjour,
Je suis pas très fort, mais il me semble qu'il peut être distingué deux cas selon mon ma connaissance, ... Les points fixes et les points flottants.
Dans le premier cas tu as deux nombre à convertir, celui avant la virgule et celui après.
Dans le second cas, c'est 3 nombres à convertir, selui avant la virgule, celui après et l'exposant.
edit : désolé, ça à buggé
pour écrire un réel en binaire il faut se mettre d accord sur le format
pour coder un réel en binaire en l écrit sous forme de Mantisse ( exposant ) et de ton réel écris en binaire .
une mantisse doit avoir un format par exemple 7 bit ou 8 bit cela dépend des norme ( la vieille Mitra125 , IEEE247 ...ect ) ainsi que le code du reel (21 bit par exemple).
par exemple tu écris ton réel sous forme 0,xxxxxxxx que tu convertira en binaire .
2,33 =0,233 * 10
la conversion d'un nombre du type 0,xxxxxxxx se fait par multiplication successive par 2..
... etc
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 0,233*2 = 0,466 on obtient 0 0,466*2 = 0,932 on obtient 0 0,932*2 = 1,864 on retient 1 0,864*2 = 1,728 on retient 1 0,728 * 2 = 1,456 on retient 1 0,456 * 2 = 0,912 on retient 0 0,912 * 2 = 1,824 on retient 1
donc on ne peut coder un nombre sur machine sans perdre de la précision ( on parle de nombre en simple précision ou en double précision ). et encore si tu envisage de faire des opérations avec tes réels il faut le convertir en complément de deux ....
Le calcul de l exposant est encore plus élaboré car il y a calcul de biais ...etc
donc tout dépendra de la norme que tu prendra pour coder les réels et de la précision que tu veux obtenir ... je pense qu'un cours magistral t'apportera plus d informations ...
en plus tu poste dans la mauvaise section
merci bcps pour votre aide!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager