/************************************************************************/
/* program op_bit01.c */
/* ukazuje bitove posuny, a zakladni bitove operace and, or, xor */
/* a bitovy doplnek */
/************************************************************************/
#include <stdio.h>
int main()
{
printf("1 << 1 = \t%d\t%#x\n", 1 << 1, 1 << 1);
printf("1 << 7 = \t%d\t%#x\n", 1 << 7, 1 << 7);
printf("-1 >> 1 = \t%d\t%#x\n", -1 >> 1, -1 >> 1);
printf("1024 >> 9 = \t%d\t%#x\n", 1024 >> 9, 1024 >> 9);
printf("13 & 6 = \t%d\t%#x\n", 13 & 6, 13 & 6);
printf("13 | 6 = \t%d\t%#x\n", 13 | 6, 13 | 6);
printf("13 ^ 6 = \t%d\t%#x\n", 13 ^ 6, 13 ^ 6);
printf("2 & 1 = \t%d\t%#x\n", 2 & 1, 2 & 1);
printf("2 | 1 = \t%d\t%#x\n", 2 | 1, 2 | 1);
printf("2 ^ 1 = \t%d\t%#x\n", 2 ^ 1, 2 ^ 1);
return 0;
}
/* BC31
1 << 1 = 2 0x2
1 << 7 = 128 0x80
-1 >> 1 = -1 0xffff
1024 >> 9 = 2 0x2
13 & 6 = 4 0x4
13 | 6 = 15 0xf
13 ^ 6 = 11 0xb
2 & 1 = 0 0
2 | 1 = 3 0x3
2 ^ 1 = 3 0x3
*/