Sobes.tech
Junior

Kā iestatīt bitu uz 1, izmantojot bitu OR operāciju?

sobes.tech AI

Atbilde no AI

Lai iestatītu konkrētu bitu uz 1, izmantojot bitu operāciju OR, ir jāizmanto maska, kurai ir 1 vajadzīgajā pozīcijā un 0 pārējās.

Piemēram, lai iestatītu bitu ar numuru n (skaitīšana sākas no 0, sākot ar mazāk nozīmīgo bitu), darām šādi:

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

Šeit, 1 << n pārvieto vieninieku uz pozīciju n, un operācija | iestata šo bitu skaitlī num uz 1, nemainot pārējos bitus.

Piemērs:

int x = 4;      // 0100 binārajā formā
int y = setBit(x, 1); // iestata bitu 1
// y būs 6 (0110)