Рассмотрим этот код:
x = 1 # 0001
x << 2 # Shift left 2 bits: 0100
# Result: 4
x | 2 # Bitwise OR: 0011
# Result: 3
x & 1 # Bitwise AND: 0001
# Result: 1
Я могу понять арифметические операторы в Python (и других языках), но я никогда не понимал "поразрядных" операторов достаточно хорошо. В приведенном выше примере (из книги Python) я понимаю сдвиг влево, но не два других.
Кроме того, для чего используются побитовые операторы? Я был бы признателен за некоторые примеры.