ビット操作と同じ論理演算
出典: 平成28年度 春期 応用情報技術者試験 午前 問1 (IPA)
n ビットの値 L₁,L₂がある。次の操作によって得られる値 L₃は,L₁と L₂に対するどの論理演算の結果と同じか。
〔操作〕
(1) L₁と L₂のビットごとの論理和をとって,変数 X に記憶する。
(2) L₁と L₂のビットごとの論理積をとって更に否定をとり,変数 Y に記憶する。
(3) X と Y のビットごとの論理積をとって,結果を L₃とする。
- ア 排他的論理和
- イ 排他的論理和の否定
- ウ 論理積の否定
- エ 論理和の否定
正解と解説を見る
正解: ア
- ア: L₁ と L₂ が異なるときだけ L₃ = 1 になるので、排他的論理和と同じです。正しい答えです。
- イ: 排他的論理和の否定は、L₁ と L₂ が等しいときに 1 になります。結果がちょうど逆です。
- ウ: 論理積の否定 (NAND) なら L₁ = L₂ = 0 のとき 1 になりますが、L₃ は 0 です。
- エ: 論理和の否定 (NOR) なら L₁ = L₂ = 0 のときだけ 1 になりますが、L₃ は 0 です。
ポイント
1 ビットずつ、L₁ と L₂ の 4 通りの組合せで計算します。
| L₁ | L₂ | X (論理和) | Y (論理積の否定) | L₃ = X・Y |
|---|---|---|---|---|
| 0 | 0 | 0 | 1 | 0 |
| 0 | 1 | 1 | 1 | 1 |
| 1 | 0 | 1 | 1 | 1 |
| 1 | 1 | 1 | 0 | 0 |
L₁ と L₂ が 異なるときだけ 1 になるので、排他的論理和 と同じです。