正答3
解説
正解は3です。
この問題は、16進数0F(2進数00001111)との論理演算で、下位4ビットがどう変わるかを問うています。
下位4ビットには0Fの1が、上位4ビットには0Fの0が対応します。
【選択肢別解説】
1:× 排他的論理和(XOR)は、1との演算で元のビットを反転させます。
下位4ビットはすべて反転するので、変化してしまいます。
2:× 否定論理積(NAND)は、論理積の結果をさらに反転します。
下位4ビットは元の値の反転になり、上位4ビットは必ず1になります。
3:○ 論理積(AND)では、1との演算は元のビットをそのまま残します。
そのため下位4ビットは変化せず、上位4ビットは0との演算で必ず0になります。
4:× 論理和(OR)は、1との演算で結果を必ず1にします。
下位4ビットはすべて1になるので、元の値が保たれません。
【ポイント】
特定のビットを取り出す(残す)ときは、そこを1にしたマスクとの論理積を使います。
ビットを1にそろえるなら論理和、反転させるなら排他的論理和と覚えておきましょう。