Consider a new instruction named branch-on-bitset (mnemonic bbs). The instruction ‘bbs reg, pos, label’ jumps to label if bit in position pos of register operand reg is one. A register is 32 bits wide and the bits are numbered 0 to 31, bit in position 0 being the least significant. Consider the following emulation of this instruction on a processor that does not have bbs implemented. temp ← reg & mask Branch to label if temp is non-zero. The variable temp is a temporary register. For correct emulation, the variable mask must be generated by

(A) mask ← 0 × 1 << pos
(B) mask ← 0 × ffffffff >> pos
(C) mask ← pos
(D) mask ← 0 × f

Asked question