Descrição
O operador bitwise E em C++ é um único &
(e comercial ou ampersand), usado entre duas expressões inteiras. O operador E bit-a-bit atua em cada bit dos operandos independentemente, de acordo com a seguinte regra: se ambas entradas são 1, a saída resultante é 1, do contrário o resultado é 0.
Outra forma de se expressão isso é:
0 0 1 1 operando1 0 1 0 1 operando2 ---------- 0 0 0 1 (operando1 & operando2) - resultado retornado
No Arduino, o tipo int é um valor 16-bit, então &
usado entre dois operandos do tipo int causa 16 operações bit-a-bit E simultâneas.