Побитовые операции работают с переменными целочисленного типа.
Если логические переменные сравнивают целиком две переменные, то побитовые сравнивают биты.
Например: a = 11 (в двоичной системе счисления это 1011), а b = 15 (это 1111). Тогда a & b вернет 11 (1011) (т.к. 1 и 1 = 1, 1 и 0 = 0, 1 и 1 = 1, 1 и 1 = 1). Но если a | b, тогда вернет 15 (1111) (1 или 1 = 1, 1 или 0 = 1, 1 или 1 = 1, 1 или 1 = 1).
Вот
тут все очень неплохо показано на картинках.