Bitwise Operators
These are operators that perform operations on the binary representations of integers and return an integer result.
| Name | Maths | Operator | Example | Note |
|---|---|---|---|---|
| Bitwise NOT | ~ |
~x |
Inverts all the bits. | |
| Bitwise AND | & |
x & y |
Sets each bit to 1 if both bits are 1. | |
| Bitwise OR | | |
x | y |
Sets each bit to 1 if one of the bits is 1. | |
| Bitwise XOR | ^ |
x ^ y |
Sets each bit to 1 if only one of the bits is 1. | |
| Left Shift | << |
x << n |
Shifts the bits of x to the left by n places. | |
| Right Shift | >> |
x >> n |
Shifts the bits of x to the right by n places. | |
| Unsigned Right Shift | >>> |
x >>> n |
Shifts the bits of x to the right by n places (zero fill). Not available in all languages. | |
Note: The "Unsigned Right Shift" operator (>>>) is not available in all programming languages and is typically used in languages that have distinct types for signed and unsigned integers. In C#, the right shift operator (>>) will maintain the sign bit (sign extension) for signed integers, while for unsigned integers, it will perform a zero-fill right shift.