Junior
Como pode definir um bit para 1 usando a operação OU bit a bit?
sobes.tech IA
Resposta da IA
Para definir um bit específico num número para 1 usando a operação OR a nível de bits, deve-se usar uma máscara que tenha 1 na posição desejada e 0 nas restantes.
Por exemplo, para definir o bit com o número n (numeração a partir de 0, começando pelo bit menos significativo), faz-se assim:
int setBit(int num, int n) {
return num | (1 << n);
}
Aqui, 1 << n desloca o 1 para a posição n, e a operação | define esse bit no número num como 1, sem alterar os outros bits.
Exemplo:
int x = 4; // 0100 em binário
int y = setBit(x, 1); // define o bit 1
// y será 6 (0110)