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

Algorithmes et structures de données Discussion :

Algorithme conversion binaire décimal


Sujet :

Algorithmes et structures de données

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Février 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 8
    Points : 0
    Points
    0
    Par défaut Algorithme conversion binaire décimal
    Bonjour

    je cherche la solution d'un algorithme qui fait la conversion d'une séquence binaire donnée en nombre décimal

    Merci de votre aide

  2. #2
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    Souviens-toi que la représentation binaire ou décimale d'un nombre n'est pas un nombre mais une chaîne de caractères.
    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  3. #3
    Membre éclairé
    Avatar de edfed
    Profil pro
    être humain
    Inscrit en
    Décembre 2007
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : être humain

    Informations forums :
    Inscription : Décembre 2007
    Messages : 476
    Points : 701
    Points
    701
    Billets dans le blog
    1
    Par défaut
    prenons un byte (8 bits) signé:
    par exemple: 0F1h

    faisons un test pour savoir s'il est négatif (c'est à dire inferieur à 0)
    si négatif, alors reserver le signe moins (-) et inverser le nombre pour qu'il devienne positif. 0Fh
    sinon, ne rien faire

    ensuite:
    diviser par 10
    stocker le modulo en tant que caractère (6 pour le premier, 1 pour le second)
    pointer vers le caractère precedant
    si le resultat = 0 alors on fini
    sinon, on reboucle à ensuite

    fini
    on met le caractère de signe precedement reservé
    et on obtient un nombre decimal sous forme de chaine de caractère à partir d'un nombre purement binaire sous forme d'octet. (-16)

    voilà.

  4. #4
    Nouveau Candidat au Club
    Inscrit en
    Février 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 8
    Points : 0
    Points
    0
    Par défaut
    voila ce que je veux exactement
    supposant une séquence en binaire 1101 comme entrée et à la sortie le programme doit la convertir en nombre décimal qui est 13

    voila le calcul : 1101
    1*2 puissance 3 + 1*2 puissance 2 + 0* 2 puissance 1 + 1 * 2 puissance 0 =

    8 + 4 + 0 + 1 = 13

    je veux ce résultat en pseudo code en algorithme

    Merci de votre aide

  5. #5
    Membre éclairé
    Avatar de edfed
    Profil pro
    être humain
    Inscrit en
    Décembre 2007
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : être humain

    Informations forums :
    Inscription : Décembre 2007
    Messages : 476
    Points : 701
    Points
    701
    Billets dans le blog
    1
    Par défaut
    c'est pourtant pas compliqué :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    chaine: db '                      '
    finchaine:
    digit*=finchaine
    ici:
    digit*=mod X/10 + '0'
    digit*--
    x=x/10
    if x=0 then gotogoto ici
    là:
    fin
    de toute façon, la reponce à ta question est deja dans ta question.
    tu l'a dis toi meme, il faut prendre chaque digit binaire, et le multiplier par son rang, additionner le tout, et voilà.

    un algo en pseudo code ne t'avancera pas.

  6. #6
    Nouveau Candidat au Club
    Inscrit en
    Février 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 8
    Points : 0
    Points
    0
    Par défaut
    Merci pour ta réponse

    au fait un algo en pseudo code ca m'avance beaucoup parce que c'est ca que j'ai besoin, traduire la solution que j'ai écris en pseudo code algo

    Merci


    Citation Envoyé par --1-- Voir le message
    c'est pourtant pas compliqué :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    chaine: db '                      '
    finchaine:
    digit*=finchaine
    ici:
    digit*=mod X/10 + '0'
    digit*--
    x=x/10
    if x=0 then gotogoto ici
    là:
    fin
    de toute façon, la reponce à ta question est deja dans ta question.
    tu l'a dis toi meme, il faut prendre chaque digit binaire, et le multiplier par son rang, additionner le tout, et voilà.

    un algo en pseudo code ne t'avancera pas.

Discussions similaires

  1. conversion du décimal au binaire
    Par souzen dans le forum Débuter
    Réponses: 13
    Dernier message: 28/12/2018, 09h17
  2. Conversion nombre décimal <-> binaire (signé et flottant)
    Par lecteur1001 dans le forum Simulink
    Réponses: 12
    Dernier message: 06/01/2011, 16h49
  3. Conversion Hexa => binaire => décimal
    Par Matmal11 dans le forum Tcl/Tk
    Réponses: 6
    Dernier message: 10/04/2010, 13h53
  4. conversion de décimal à binaire
    Par sousou2007 dans le forum C++
    Réponses: 10
    Dernier message: 19/10/2007, 12h33
  5. conversion binaire-décimal sans utiliser le tableau
    Par ahmed doua dans le forum Algorithmes et structures de données
    Réponses: 13
    Dernier message: 13/03/2006, 10h54

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