Pergunta de entrevista da empresa Amazon

How do you check if the 5th bit is a 1 in a binary number

Resposta da entrevista

Sigiloso

31 de jul. de 2013

We can use a mask: 16 is represented in binary as 100000 (with the 5th bit set to 1). To the check if the 5th bit is one, we just need to do a bit-wise and of the number with the mask: if (x & 16 > 0) { // the 5th bit is one } For a more general case, to know if the k th bit is set to 1, we can shift the bit: if ((x >> (k - 1)) & 1 > 0) { // the kth bit is one }

4