What is precedence of operators? 
When number of operators occurs in an expression the operator which is to be evaluated first is judged by applying priority of operators.

An operator that manipulates individual bits.
A bitwise operator works with the binary representation of a number rather than that number's value. The operand is treated as a set of bits, instead of as a single number. Bitwise operators are similar in most languages that support them.

Bitwise operators present in C are 
& AND
| Inclusive OR
^ Exclusive OR
<< Shift Left
>> Shift Right
~ One's compliment

& Bitwise AND
The & operator compares two values with a bitwise AND function. You use the & operator with two operands, like this:
Evaluate a & b
Each of the operands a and b is converted to a binary number, and each of their bits is compared; that is, bit 1 of a is compared with bit 1 of b, and so on. When two corresponding bits are both 1, bitwise AND combines them to produce 1. When one or both of the corresponding bits are 0, bitwise AND combines them to produce 0.
For example, if you enter
Evaluate 25 & 77
25 and 77 are combined with a bitwise AND, and the result is 9.
~ Bitwise NOT
In a logical expression, the ~ operator computes the binary negative of a number. The binary negative is calculated by converting a character's 0 bits to 1 bits and its 1 bits to 
0 bits.
For example, to find the binary negative of 5, you could enter
Evaluate ~5
The result of this command is -6. 
| Bitwise OR
The | operator compares two values with a bitwise OR function. You use the | operator with two operands, like this:
Evaluate a | b
Each of the operands a and b is converted to a binary number, and each of their bits 
is compared; that is, bit 1 of a is compared with bit 1 of b, and so on. When two corresponding bits are both 0, bitwise OR combines them to produce 0. When either of the corresponding bits is 1, bitwise OR combines them to produce 1. 
For example, if you enter
Evaluate 25 | 77
25 and 77 are combined with a bitwise OR, and the result is 93.
^ Bitwise XOR
The ^ operator compares two values with a bitwise XOR (that is, a bitwise exclusive OR) function. You use the ^ operator with two operands, like this:
Evaluate a ^ b
Each of the operands a and b is converted to a binary number, and each of their bits is compared; that is, bit 1 of a is compared with bit 1 of b, and so on. When one of the bits--but not both--is 1, bitwise XOR combines them to produce 1. When both bits are 0 or when both bits are 1, bitwise XOR combines them to produce 0.
For example, if you enter
Evaluate 25 ^ 77
25 and 77 are combined with a bitwise XOR, and the result is 84.

<< Shift left
The << operator performs a shift left function on a number. A shift left function shifts a value's bits n characters to the left. The bits that are shifted out through the high-order bit are lost. For example, if you enter
Evaluate 3 << 1
the bit pattern in the number 3 is shifted left by one place. In other words, the bit pattern
... 0000 0011 #the value 3
becomes
... 0000 0110 #the value 6
Shifting left one place actually has the effect of multiplying a value by 2.
>> Shift right
The >> operator performs a shift right function on a number. A shift right function shifts a value's bits n characters to the right. The bits moved out of the low-order bit are lost, and the bits shifted in to the high-order bits on the left have a value of 0. For example, if you enter
Evaluate 3 >> 1
the bit pattern
... 0000 0011
becomes
... 0000 0001
which has a value of 1. The right shift is a logical right shift, because bits with a value of 0 are moved into the high-order bits.