[C] - Complément d'une variable
Répondre à la discussion
Affichage des résultats 1 à 8 sur 8

[C] - Complément d'une variable



  1. #1
    jorg1n

    [C] - Complément d'une variable


    ------

    Bonjour,

    j'ai une variable toto déclaré sur 16 bits (int), et je souhaiterai avoir le complément de cette variable a un moment, mais je ne sais pas comment faire...
    Voila ce que j'ai:

    toto = 0x4578 -> (0100 0101 0111 1000)

    et je souhaiterai avoir cela comme résultat (son complément)

    toto = 0xBA87(1011 1010 1000 0111)

    quelle opération faire?

    Merci d'avance... et bon apres midi a tous sous ce beau soleil!!!

    -----

  2. #2
    jorg1n

    Re : [C] - Complément d'une variable

    en fait, il ne s'agit pas d'une variable définit comme un int, mais d'une structure définie comme ceci:
    Code:
    typdef struct {
    unsigned bit0:1; unsigned bit1:1; unsigned bit2:1; ... unsigned bit15:1;
    }Register16bits;
    Merci d'avance...

  3. #3
    PA5CAL

    Re : [C] - Complément d'une variable

    Bonjour

    Code:
    toto = ~toto;
    Sinon, ta question aurait plus sa place sur le forum informatique.

  4. #4
    Jack
    Modérateur

    Re : [C] - Complément d'une variable

    Citation Envoyé par jorg1n Voir le message
    en fait, il ne s'agit pas d'une variable définit comme un int, mais d'une structure définie comme ceci:
    Code:
    typdef struct {
    unsigned bit0:1; unsigned bit1:1; unsigned bit2:1; ... unsigned bit15:1;
    }Register16bits;
    Merci d'avance...
    Ta structure est figée ou on peut la redéfinir?

    A+

  5. A voir en vidéo sur Futura
  6. #5
    jorg1n

    Re : [C] - Complément d'une variable

    Bonjour à tous,

    Ta structure est figée ou on peut la redéfinir?
    a non, ma structure n'est pas figée, je peux faire ce que je veux...

    PS:
    Sinon, ta question aurait plus sa place sur le forum informatique.
    C'est l'habitude... et vu que c'est pour un soft pour µC de type PIC18...

    Merci d'avance et bon lundi sous le soleil

  7. #6
    Jack
    Modérateur

    Re : [C] - Complément d'une variable

    a non, ma structure n'est pas figée, je peux faire ce que je veux...
    Dans ce cas je te propose:
    Code:
    typedef union{
         struct{
                 unsigned bit0:1;
                 unsigned bit1:1;
                 unsigned bit2:1;
                 ...
                 unsigned bit15:1;
         }Bits;
         unsigned int registre;
    }Register16bits;
    Comme ça tu pourras agir aussi bien au niveau des bits que du registre entier.
    Ex:
    Code:
    Register16bits reg1;
    ...
    reg1.registre = ~reg1.registre; // inversion de tous les bits comme le mentionnait PA5CAL
    reg1.bit1 =~reg1.bit1; // inversion du bit 1
    Si ca te semble un peu lourd à écrire, utilise des #define:
    Code:
    #define reg1.bit1 rb1
    #define reg1.registre reg
    Du coup le code devient:
    reg = ~reg;
    rb1 = ~rb1;
    C'est ce qui est fait dans les fichiers d'entête de tous les bons compilateurs pour µcontrôleurs.

    A+
    Dernière modification par Jack ; 24/05/2010 à 10h49. Motif: petite modif d'indentation

  8. #7
    jorg1n

    Re : [C] - Complément d'une variable

    Meci Jack...
    je vais partir sur ta 2nd proposition...

    Bon Lundi à toi sous le soleil!!!

  9. #8
    Jack
    Modérateur

    Re : [C] - Complément d'une variable

    je vais partir sur ta 2nd proposition...
    J'avais fait une 1ère proposition?

    A+

Discussions similaires

  1. encadrement d'une variable
    Par littlegirl dans le forum Mathématiques du supérieur
    Réponses: 3
    Dernier message: 17/01/2010, 18h06
  2. Changement de variable d'une dérivé
    Par invite6bf3b488 dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 01/10/2009, 23h32
  3. Variable d'une inégalité
    Par invite2e842635 dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 19/10/2008, 20h45
  4. travail d'une force variable
    Par invitebf282e65 dans le forum Physique
    Réponses: 9
    Dernier message: 21/09/2008, 17h26
  5. Fonction d'une variable complexe
    Par invite170507b9 dans le forum Mathématiques du supérieur
    Réponses: 5
    Dernier message: 27/05/2006, 15h42
Découvrez nos comparatifs produits sur l'informatique et les technologies.