Scandire bit per bit

di il
3 risposte

Scandire bit per bit

Ciao a tutti.. volevo sapere se c'è un modo per scandire bit per bit il valore di una variabile (nello specifico di tipo numerico) e stampare a video tutti i bit impostati a 1.

grazie in anticipo per le vostre risposte... ciao..

3 Risposte

  • Re: Scandire bit per bit

    Supponiamo che hai una variabile char, 8 bit.
    Potresti fare un ciclo da 0 a 7 facendo uno shift in modo che il bit che vuoi analizzare sia LSB e poi mascheri gli i 7 MSB.
    Tipo:

    for(i=0;i<8;i++)
    {
    tmp = (var>>i) & 0x01;
    if (tmp)
    //bit 1
    else
    //bit 0
    }

    Ciao!!
  • Re: Scandire bit per bit

    Ciao,
    Perché shiftare la variabile? Te la cavi più comodamente con un:
    
    for(i=0;i<8;i++){
       if(var & (0x01<<i))
         //bit ad 1
       else 
         //bit a 0
    }
    Ciaociao
  • Re: Scandire bit per bit

    Grazie.. mi siete stati di grande aiuto.. alla prossima..
Devi accedere o registrarti per scrivere nel forum
3 risposte