This is an old revision of the document!
Bitwise AND uses the “&” symbol. It checks if the two inputs are numbers and if so then it gives back a 1.
For example if we have an int set to 12 and an int set to 6 if we preform a bitwise and operation on them the result would be a 4. 12 in binary is 1100 and 6 in binary is 0110.
12 | 6 | 6&12 |
---|---|---|
1 | 0 | 0 |
1 | 1 | 1 |
0 | 1 | 0 |
0 | 0 | 0 |
In this example of bitwise & gives us the result as 4. You can test this out yourself in code.
int num1 = 12; // Binary: 1100 int num2 = 6; // Binary: 0110 int result = num1 & num2; // Perform bitwise AND operation printf("num1: %d\n", num1); printf("num2: %d\n", num2); printf("result: %d\n", result);
Bitwise OR uses the “|” symbol. It checks if the either of the two inputs are not zero and gives a 1.
Bitwise XOR uses the “^” symbol. It checks if the two inputs are the same and if they are it give a 1.
Bitwise NOT uses the “~” symbol. It inverts all the bits in a single number.