Sobes.tech
Junior
265

Cum se poate seta un bit la 1 folosind operația OR pe nivel de bit?

Răspuns de la AI

sobes.tech AI

Pentru a seta un bit specific într-un număr la 1 folosind operația OR la nivel de bit, trebuie să folosiți o mască care are 1 în poziția dorită și 0 în celelalte.

De exemplu, pentru a seta bitul cu numărul n (numărătoarea de la 0, începând cu bitul cel mai puțin semnificativ), faceți astfel:

int setBit(int num, int n) {
    return num | (1 << n);
}

Aici, 1 << n mută unu în poziția n, iar operația | setează acest bit în numărul num la 1, fără a modifica celelalte biți.

Exemplu:

int x = 4;      // 0100 în binar
int y = setBit(x, 1); // setăm bitul 1
// y va fi 6 (0110)