応用情報技術者 2012年 春期 午前2 問01
問題文
任意のオペランドに対するブール演算Aの結果とブール演算Bの結果が互いに否定の関係にあるとき、AはBの (又は、BはAの) 相補演算であるという。排他的論理和の相補演算はどれか。

選択肢
ア:(正解)
イ:
ウ:
エ:
🔒 解説は解答すると表示されます
等価演算【午前2解説】
正解の理由
排他的論理和(XOR)はオペランドが異なるときに出力が1になる演算です。その相補演算(出力が逆になる演算)は「オペランドが等しいときに1になる演算」、すなわち等価演算(XNOR)です。したがって選択肢のうち正しいのは ア(等価演算)です。
解法ステップ
- XOR(排他的論理和)の定義を確認:出力が1となるのは入力が異なる場合のみ。
- 「相補演算」は結果ビットが常に反転している演算を指すことを確認:B = ¬A の関係。
- XOR の出力を全て反転した真理値表を作ると、入力が等しいときに1となる演算(等価演算)になることを確かめる。
- 他の候補(論理和、論理積、否定論理和)は上記の真理値変換に合致しないため除外する。
選択肢別の誤答解説
-
ア 等価演算
正解。XOR の否定(補集合)は等価演算(XNOR)。論理式では と表せます。 -
イ 否定論理和(NOR)
誤り。NORは論理和(OR)の否定であり、論理和が1のときを反転した出力を返す演算です。NOR と XOR は別物であり、XOR の相補ではありません。なお、NOR と NAND(否定論理積)は混同しやすいですが、NOR = ¬(A ∨ B)、NAND = ¬(A ∧ B) であり意味が異なります。 -
ウ 論理積(AND)
誤り。AND は両方が1のとき1になる演算で、XOR の出力を単に反転したものにはなりません。 -
エ 論理和(OR)
誤り。OR はいずれかが1のとき1になる演算であり、XOR の相補とは一致しません。
よくある誤解
- NOR と NAND を取り違える:NOR は論理和の否定、NAND は論理積の否定で、どちらも XOR の相補ではない点を混同しがちです。
- 「相補」を「片方だけ否定する」と誤解:相補演算は演算結果ビット全体を反転することで定義され、入力側の一部だけを否定する意味ではありません。
- 図の網掛けや領域で直感的に誤判断:ベン図や網掛けの表現に惑わされず、真理値表で確認する習慣をつけると確実です。
補足コラム
真理値表で確認すると一目瞭然です。
等価演算(XNOR)は論理式で次のように表せます:
ハードウェア実装では XNOR ゲートとして用いられ、誤り検出やパリティ判定などで活用されます(XOR の出力を反転すれば XNOR を得られます)。
ハードウェア実装では XNOR ゲートとして用いられ、誤り検出やパリティ判定などで活用されます(XOR の出力を反転すれば XNOR を得られます)。
FAQ
Q. 等価演算の記号は何ですか?
A. 表記は文献により異なりますが、XNOR や ≡、⊙、↔ などで表されます。XOR は ⊕ が一般的です。
A. 表記は文献により異なりますが、XNOR や ≡、⊙、↔ などで表されます。XOR は ⊕ が一般的です。
Q. XOR と XNOR は可換・結合法則が成り立ちますか?
A. XOR は可換かつ結合的(A⊕B⊕C の順序に依存しない)です。XNOR も可換ですが、結合の扱いには注意が必要な記述法(括弧付け)があります。試験では真理値表や式変形で扱うのが安全です。
A. XOR は可換かつ結合的(A⊕B⊕C の順序に依存しない)です。XNOR も可換ですが、結合の扱いには注意が必要な記述法(括弧付け)があります。試験では真理値表や式変形で扱うのが安全です。
Q. NOR や NAND はいつ使うのですか?
A. NOR は OR の否定、NAND は AND の否定で、どちらも汎用ゲートとして組み合わせることで任意の論理回路を構成できます。XOR/XNOR とは用途が異なります。
A. NOR は OR の否定、NAND は AND の否定で、どちらも汎用ゲートとして組み合わせることで任意の論理回路を構成できます。XOR/XNOR とは用途が異なります。
関連キーワード: XOR、XNOR、等価演算、排他的論理和、真理値表、NOR、NAND、論理回路、論理式、相補演算

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

