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 ascii=> hexa=>binaire


Sujet :

C++

  1. #1
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 230
    Points
    20 230
    Par défaut Conversion ascii=> hexa=>binaire
    Bonjour,

    Pour un Tp d'info je suis entrain de réaliser un programme permettant la communication entre un pc et un module TES16 ( protocole modbus )
    La communication s'effectue sans souci mais c'est au niveau du traitement des donnée que j'ai un problème.
    Je développe sous visual c++

    Mon premier souci est que j'ai un programme auquel je passe un argument par exemple 55 qui doit être de l'hexa mais il est bien sur interpreter comme de l'ascii ( 3535 en hexa ) j'ai donc fait ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    		// Récupération du PF
     
    		tampon=argv[1][0]; // On récupère le premier chiffre
    		tampon=tampon-0x30; // On retire 30 en hexa
     
    		if(tampon>0x10) // Si le resultat >10
    		{
    			tampon=tampon-0x7; // On lui enlève 7 en hexa
    		}
     
    		tampon=tampon<<4; // On decale de 4 bit vers la gauche
     
    		tampon&&0xF0; // On masque pour s assurer du résultat
     
    		//Récupération du Pf
     
    		tampon2=argv[1][1];// on récupère le second caractères
    		tampon2=tampon2-0x30;// On retire 30 en hexa
    		if(tampon2>0x10) // Si le resultat >10
    		{
    			tampon2=tampon2-0x7; // On lui enlève 7 en hexa
    		}
     
    		trame[5]=tampon|tampon2; // On fait un ou sur les deux caractère afin d associer PF Pf
     
    		printf("Votre paramètre: %2.2X \n",trame[5]); // Vérification du paramètre
    Ma question est donc : n'existe t il pas une solution pour faire ceci automatiquement ( une petite fonction dans visual ).

    Ensuite une seconde partie du programme récupère la trame envoyer par le module.
    Cette trame ( en hexa ) est stocker dans un tableau d unsigned char
    Et je souhaite afficher la trame en binaire. Mais je n'y arrive pas j'aivais penser a faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    for(i=0;i<7;i++)
    			{
    				bin=entree[i];// On récupère la première valleur hexa
    				for(j=0;j<7;j++)
    				{
    					bit=bin&0x1;// on masque pour avoir le dernier bit
    					bin=bin>>1; // On decale pour faire tomber le dernier bit
    					bit=binaire[j]; // On sauvegarde la première valeur binaire
    				}
    				printf("%d",binaire[i]);
    			}
    Si quelqu un pouvait m'orienter ca serait sympa ....
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 379
    Points : 41 573
    Points
    41 573
    Par défaut
    strtoul() ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Pour les conversions, tout est dans la FAQ :

    http://c.developpez.com/faq/cpp/?pag...ferentes_bases

  4. #4
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 230
    Points
    20 230
    Par défaut
    Merci j'ai trouver grâce à la faq
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Conversion Ascii vers Hexa
    Par Alckolo dans le forum C#
    Réponses: 4
    Dernier message: 14/11/2011, 12h20
  2. conversion ascii en hexa
    Par flo_987 dans le forum C++Builder
    Réponses: 1
    Dernier message: 21/05/2010, 15h34
  3. Conversion ASCII vers Hexa
    Par PtiBruno dans le forum C
    Réponses: 3
    Dernier message: 25/02/2008, 09h40
  4. conversion ascii to hexa
    Par Invité(e) dans le forum C
    Réponses: 16
    Dernier message: 30/03/2007, 10h11
  5. conversion : (Ascii en hexa) => nombre
    Par tut dans le forum C++
    Réponses: 3
    Dernier message: 21/04/2004, 14h44

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