Побитовые операции работают напрямую с отдельными двоичными битами целого числа.
AND(&) даёт 1, только когда оба бита равны 1, OR(|) даёт 1, если хотя бы один бит равен 1, а XOR(^) даёт 1, когда биты различаются. NOT(~) инвертирует каждый бит.
Сдвиг влево(<<) смещает биты влево, умножая на степень двойки, а сдвиг вправо(>>) делит. Например, 1 << 4 = 16.
Битовая сетка этого инструмента позволяет наглядно увидеть результат сдвигов и масок.
Это часто используется в низкоуровневой работе: чтобы упаковать несколько флагов в одно целое число, обработать маски прав доступа или разделить цветовые каналы.