Sobes.tech
Junior
266

Kuidas seada bit 1-ks, kasutades bittide OR-operatsiooni?

Vastus AI-lt

sobes.tech AI

Et määrata konkreetne bitt väärtuseks 1, kasutatakse bitise OR-operatsiooni ja maski, millel on 1 soovitud positsioonil ja 0 teistes.

Näiteks, et seada bitt numbriga n (arv algab 0-st, alustades kõige vähem tähenduslikust bitist), tehke järgmist:

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

Siin liigutab 1 << n ühe n positsioonile, ja operatsioon | seab selle bitina num arvus 1-ks, muutmata teisi bite.

Näide:

int x = 4;      // 0100 binaarses vormis
int y = setBit(x, 1); // seame bit 1
// y on 6 (0110)