Побитовые И
Побитовое И заключается True только, если оба бита установлены. Следующий пример показывает, результатом побитовое И на цифры 23 и 12.
10111 (23)
01100 (12) AND
____________________
00100 (result = 4) |
Вы можете использовать маску для проверки значения, если некоторые биты были установлены. Если мы хотим проверить, правильно ли биты 1 и 3, такие, мы могли бы замаскировать рядом с 10 (стоимость в том случае, если биты 1 и 3) и результат испытания на Маска.
#include <stdio.h>
int main()
{
int num, mask = 10;
printf("Enter a number: ");
scanf("%d", &num);
if ((num & mask) == mask)
puts("Bits 1 and 3 are set");
else
puts("Bits 1 and 3 are not set");
return 0;
}
Побитовые ИЛИ
Побитовое ИЛИ Действительно, если либо бит определяет. Следующий пример показывает, результатом побитовое ИЛИ на номера 23 и 12.
10111 (23)
01100 (12) OR
______________________
11111 (result = 31) |
Вы можете использовать маску для обеспечения бит или биты были установлены. Следующий пример обеспечивает бит 2 установлен.
#include <stdio.h>
int main()
{
int num, mask = 4;
printf("Enter a number: ");
scanf("%d", &num);
num |= mask;
printf("After ensuring bit 2 is set: %d\n", num);
return 0;
}
|