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

 C Discussion :

Conversion binaire -> hexa


Sujet :

C

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juin 2009
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Conversion binaire -> hexa
    Salut,

    voici la situation:

    J'ai une chaine de 64 caractères contenant des 1 et des 0, et j'aimerai obtenir une chaine de caractère représentant le conversion hexa de chacun des 8 octets représentés dans la première chaine

    par exemple:
    "0001110011111100000111110001111100011110111101110011110111110011"

    donnerait:

    "1C FC 1F 1F 1E F7 3D F3"


    Voila, j'espère ne pas avoir été trop obscur dans mes explications,

    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 368
    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 368
    Points : 23 622
    Points
    23 622
    Par défaut
    Bonjour,

    Citation Envoyé par dustyg Voir le message
    J'ai une chaine de 64 caractères contenant des 1 et des 0, et j'aimerai obtenir une chaine de caractère représentant le conversion hexa de chacun des 8 octets représentés dans la première chaine

    par exemple:
    "0001110011111100000111110001111100011110111101110011110111110011"

    donnerait:
    "1C FC 1F 1F 1E F7 3D F3"
    Avant toute chose, est-ce un exercice scolaire ?

    Sinon, dans le fond, le plus simple est d'utiliser un pointeur qui parcourt ta chaîne, de considérer que les codes des caractères « 0 » et « 1 » sont consécutifs (ce qui est pour ainsi dire toujours le cas), de retrancher la valeur du code de « 0 » à ton caractère lu, ce qui donne 0 et 1 en binaire, et d'utiliser l'opérateur « << » pour l'insérer dans une variable.

    Ensuite, tous les huit caractères, tu imprimes le contenu de cette variable en hexadécimal avec printf() et tu la remets à zéro.


    On peut se passer de printf() et utiliser des algos un peu plus techniques si tu as des contraintes particulières (ex: programmation sur micro-contrôleur).

Discussions similaires

  1. Réponses: 3
    Dernier message: 16/05/2015, 20h10
  2. conversion binaire hexa
    Par Invité dans le forum C++
    Réponses: 5
    Dernier message: 11/01/2015, 13h23
  3. Conversion flux binaire -> ascii -> hexa
    Par identifiant_bidon dans le forum C++
    Réponses: 15
    Dernier message: 15/11/2007, 09h25
  4. [débutant] conversion int en hexa
    Par sergoid dans le forum C++Builder
    Réponses: 6
    Dernier message: 16/05/2003, 11h11
  5. Conversion binaire -> ASCII
    Par will13013 dans le forum C
    Réponses: 8
    Dernier message: 08/01/2003, 04h12

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