Junior
Kaip nustatyti bitą į 1 naudojant bitų aritmetinę operaciją?
sobes.tech AI
Atsakymas iš AI
Norint nustatyti konkretų bitą į 1 naudojant bitinę OR operaciją, reikia naudoti kaukę, kurioje norimoje pozicijoje yra 1, o likusiuose bituose 0.
Pavyzdžiui, norint nustatyti bitą numeriu n (skaičiavimas prasideda nuo 0, pradedant nuo mažiausiai reikšmingo bito), tai darome taip:
int setBit(int num, int n) {
return num | (1 << n);
}
Čia 1 << n perkelia vienetą į poziciją n, o operacija | nustato šį bitą num skaičiuje į 1, nekeisdama kitų bitų.
Pavyzdys:
int x = 4; // 0100 dvejetainėje formoje
int y = setBit(x, 1); // nustatome bitą 1
// y bus 6 (0110)