Machine-translated by Google. Questions are authored in English.
Top

Discussion

What does this expression evaluate to when bit 3 of reg is set?

(reg >> 3) & 1u

  • A.8, the value of the bit in its original position
  • B.0, the shift having discarded the bit
  • C.the whole value of reg with the low bits removed
  • D.1

Answer: D

Shifting brings the wanted bit to position zero and the mask discards everything above it, so the result is one or zero. Testing with reg & 8 instead yields eight or zero, which is also true or false in C but is not the same value.

No comment is present. Be the first to comment.
Loading…

Post your comment

Please log in or register to post a comment.