IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Assembleur Discussion :

Nombre en virgule flottante


Sujet :

Assembleur

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Décembre 2010
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Nombre en virgule flottante
    Bonjour à tous.
    Je rencontre un souci de compréhension sur les virgules flottantes.
    Voici le format:
    mantisse: 12 bits
    exposant: 8 bits
    mantisse normalisée: 0,1... si elle est positive 1,0 si elle est négative.

    Je ne comprend pas comment cela fonctionne. Pourriez vous me donner un exemple sur comment écrire un nombre positif et un nombre négatif en binaire/hexa.

    Merci d'avance !

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 370
    Points : 23 625
    Points
    23 625

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Décembre 2010
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci de votre réponse !
    J'ai encore des petits problèmes:
    Exemple, je veux coder 12,25 en utilisant ce format:
    12,25 = $C,40
    Pour moi, la mantisse est codée sur 12 bits donc:
    mantisse = 1100, 0100 0000
    Après je ne vois pas comment obtenir le 0,1... pour dire que mon nombre est positif !? (ou le 1,0... dans le cas ou mon nombre est négatif).

    Pourriez vous me montrer la marche à suivre sur cet exemple, afin que je comprennes l'idée ?

    Merci

  4. #4
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 370
    Points : 23 625
    Points
    23 625
    Par défaut
    Je ne sais pas quel format de nombre tu utilises (ou t'es imposé) mais dans les nombres IEEE standard, il y a un bit de signe tout simplement. 0 pour positif, 1 pour négatif, et la mantisse contient la valeur absolue du nombre.

    Sinon :

    Pour moi, la mantisse est codée sur 12 bits donc:
    mantisse = 1100, 0100 0000
    N'oublie pas que tu n'as qu'un bit à gauche de ta virgule. Celle-ci est ensuite « déplacé » de quatre bits vers la droite via ton exposant, de la même manière qu'en décimal, 135,43 = 1,3543×10², par exemple.

    Comme un bit ne peut prendre que deux valeurs et que le premier bit ne peut pas être zéro (autrement, ce serait un zéro non-significatif), sa valeur est toujours 1 et, donc, on évite de le mettre dans la mantisse. Ça permet à la fois d'éviter toute valeur interdite et de gagner un bit de précision.

    Peut-être que le premier bit de ta mantisse, tel qu'il t'est présenté, est en fait ton bit de signe.

Discussions similaires

  1. Représentation d'un nombre en virgule flottante
    Par phyfab dans le forum Mathématiques
    Réponses: 2
    Dernier message: 15/12/2009, 14h10
  2. rendre un nombre de virgule flottante en virgule fixe
    Par mitnick2006 dans le forum Général Java
    Réponses: 3
    Dernier message: 15/08/2008, 21h44
  3. nombre et virgule flottante
    Par malikakika dans le forum C++Builder
    Réponses: 1
    Dernier message: 02/02/2008, 23h31
  4. printf nombre a virgule flottante
    Par Toutankharton dans le forum C
    Réponses: 1
    Dernier message: 10/12/2006, 18h09
  5. 50.00 n'est pas un nombre en virgule flottante correct
    Par Merfolk dans le forum C++Builder
    Réponses: 2
    Dernier message: 26/01/2006, 00h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo