bit()

bit(n)

O bit() devolve o valor numérico que corresponde a ligar apenas o bit de posição n. O bit 0 vale 1, o bit 1 vale 2, o bit 2 vale 4, e assim por diante — é literalmente 2 elevado a n. Vira uma mão na roda pra montar máscaras de bits.

Sintaxe

bit(n);

Parâmetros

  • n: a posição do bit, contando a partir de 0.

Retorno

O valor do bit indicado (equivale a 1 << n).

Exemplo

void setup() {
  Serial.begin(9600);

  Serial.println(bit(0)); // 1
  Serial.println(bit(1)); // 2
  Serial.println(bit(3)); // 8

  // montando uma máscara pros bits 1 e 3:
  byte mascara = bit(1) | bit(3); // 0b00001010 = 10
  Serial.println(mascara, BIN);
}

void loop() {
}

Notas e cuidados

  • É exatamente o mesmo que 1 << n, só que com nome mais descritivo.
  • Cuidado com o estouro: pedir um bit muito alto (ex.: bit(20) num int de 16 bits) passa da capacidade do tipo e o resultado não é o esperado.

Quer aprender a usar isso em projetos reais, do zero?

Conhecer o Curso Maker