~ This is the
bitwise complement operator. This is a unary operator that will invert the bits in its operand, so 1 becomes 0 and 0 becomes 1.
& This is the
bitwise AND operator, which will AND the corresponding bits in its ioerands. If the corresponding bits are both 1, then the result bit is 1. Otherwise it is 0.
^ This is the
bitwise exclusive OR operator, which will exclusive-OR the corresponding bits in its operands. If the corresponding bits are different, i.e. one is 1 and the other is 0, then the resulting bit is 1. If the corresponding bits are the same, the resulting bit is 0.
| This is the
bitwise OR operator, which will OR the corresponding bits in its operands. If either of the two corresponding bits is 1, then the result is 1. If both bits are 0, then the result is 0.