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

MATLAB Discussion :

XOR bit par bit en binaire.


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 2
    Par défaut XOR bit par bit en binaire.
    Bonjour.

    J'utilise MATLAB 7.13.0.564 (R2011b)

    Je rencontre des problèmes en traitant des nombres binaires avec matlab.
    Voici le code que j'utilise:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    a=dec2bin(14,4)
    b=dec2bin(1,4)
     
    f=xor(a,b)
    Et j'aurais aimé que le XOR done le résultat du test pour chaques bits un par un. Voici le résultat attendu:


    a =
    1110
    b =
    0001
    f =
    1 1 1 1
    A la place, le xor me donne toujours 0 0 0 0 en sortie (quels que soient a et b). Lorsque j'essaie le XOR bit par bit avec le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    a=dec2bin(14,4);
    b=dec2bin(1,4);
    f(1)=xor(a(1),b(1));
    f(2)=xor(a(2),b(2));
    f(3)=xor(a(3),b(3));
    f(4)=xor(a(4),b(4));
    f
    J'ai toujours la réponse: f= 0 0 0 0, et je ne comprend pas ce qui est faux?

    Merci de vos réponses.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    La sortie de la fonction dec2bin est une chaine de caractères.
    Voir Comment transformer un signal sous forme de chaine de caractères en valeurs numériques ?

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 2
    Par défaut
    Merci beaucoup!
    Le coup du -48 n'est pas totalement naturel quand même.

  4. #4
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 480
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 480
    Par défaut
    Bonjour,

    Citation Envoyé par jboubou Voir le message
    Merci beaucoup!
    Le coup du -48 n'est pas totalement naturel quand même.
    Il est quand on a compris comment ça marche : 48 est le code ASCII du caractère « 0 » (30h en hexadécimal). Et comme on sait que dans ce même code ASCII, les chiffres sont codés consécutivement et dans l'ordre, il suffit de retrancher le rang de départ (un offset, en fait) pour en déduire la valeur numérique.

Discussions similaires

  1. Copie bit par bit avec dd
    Par adm_windoz dans le forum Debian
    Réponses: 8
    Dernier message: 07/06/2008, 09h52
  2. Manipulation d'un String bit par bit
    Par CyberChouan dans le forum Langage
    Réponses: 1
    Dernier message: 26/04/2007, 15h48
  3. Chercher par bits
    Par cadetill dans le forum Débuter
    Réponses: 17
    Dernier message: 03/07/2006, 12h57
  4. Lire bit par bit
    Par The_Undertaker dans le forum C++
    Réponses: 8
    Dernier message: 01/07/2005, 11h43
  5. Réponses: 5
    Dernier message: 03/06/2005, 14h06

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