# Operatory bitowe

Wszystkie operatory bitowe dokonują konwersji (obcięcia) operandów na liczby całkowite ze znakiem (32-bitowe) i zwracają wynik w taki sam sposób. Wszystkie operacje są wykonywane na poszczególnych bitach. Jeśli operandu nie można zinterpretować jako liczby, operacja zwróci wartość NULL.

Operatory bitowe

| Operator bitowy | Nazwa operatora | Funkcja operatora |
| --- | --- | --- |
| bitnot | Odwrotność bitowa | Operator jednoargumentowy. Operacja zwraca logiczną odwrotność operandu obliczoną na poszczególnych bitach.<br><br>Przykład:<br><br>`bitnot 17` zwraca -18 |
| bitand | Bitowy operator AND | Operacja zwraca wartość logicznej operacji AND na operandach obliczoną na poszczególnych bitach.<br><br>Przykład:<br><br>`17 bitand 7` zwraca 1 |
| bitor | Bitowy operator OR | Operacja zwraca wartość logicznej operacji OR na operandach obliczoną na poszczególnych bitach.<br><br>Przykład:<br><br>`17 bitor 7` zwraca 23 |
| bitxor | Bitowy operator XOR | Operacja zwraca wartość logicznej operacji XOR na operandach obliczoną na poszczególnych bitach.<br><br>Przykład:<br><br>`17 bitxor 7` zwraca 22 |
| &gt;&gt; | Przesunięcie bitów w prawo | Operacja zwraca wartość pierwszego operandu przesuniętą w prawo. Liczba kroków jest określana w drugim operandzie.<br><br>Przykład:<br><br>`8 >> 2` zwraca 2 |
| &lt;&lt; | Przesunięcie bitów w lewo | Operacja zwraca wartość pierwszego operandu przesuniętą w lewo. Liczba kroków jest określana w drugim operandzie.<br><br>Przykład:<br><br>`8 << 2` zwraca 32 |