Junior
Как да зададете бит на 1, използвайки битовата операция ИЛИ?
sobes.tech AI
Отговор от AI
За да зададете конкретен бит в число на 1 с помощта на битова операция ИЛИ (OR), трябва да използвате маска, която има 1 на желаната позиция, а останалите бита са 0.
Например, за да зададете бит с номер n (нумерацията започва от 0, от най-малко значимия бит), направете следното:
int setBit(int num, int n) {
return num | (1 << n);
}
Тук, 1 << n преместват единицата на позиция n, а операцията | задава този бит в числото num на 1, без да променя останалите бита.
Пример:
int x = 4; // 0100 в двоичен вид
int y = setBit(x, 1); // задаваме бит 1
// y ще бъде 6 (0110)