基本情報技術者 2010年 春期 午前(科目A) 問26
問題文
入力XとYの値が同じときにだけ、出力Zに1を出力する回路はどれか。

選択肢
ア:
イ:
ウ:(正解)
エ:
🔒 解説は解答すると表示されます
同値(XNOR)回路【午前解説】
正解の理由
ウの回路は左側の2つの部分で「 に対応する経路」と「 に対応する経路」を実現し,右端でこれらを組合せて同値関数(XNOR)を出力します。
具体的には最終出力 は次の式で表されます。
これをド・モルガンと論理恒等式で変形すると,
となり,これは「XとYが等しいとき1」を満たします。
具体的には最終出力 は次の式で表されます。
これをド・モルガンと論理恒等式で変形すると,
となり,これは「XとYが等しいとき1」を満たします。
解法ステップ
- 回路を上・下の左側ブロックと最終合成ブロックに分けて見る。
- 左上ブロックが何(AND/NAND/OR/NOR)を出しているか,左下ブロックが何(AND/NAND/OR/NOR)を出しているかを判定する(バブルの位置を確認)。
- 左下がインバータ経由なら「」「」の項を作っているか確認する。
- 各ブロックの出力を論理式で表し,最終ゲートでどう結合されるか(AND/OR か,出力にバブルがあるか)を代入する。
- 得られた式を簡約(ド・モルガン等)して真理値表と突き合わせる。
選択肢別の誤答解説
- ア:入力の取り出し(分岐)やインバータの接続が非対称であり,左右対称の同値項を作れていません。例えば のとき下段が NOT Y をそのまま出してしまい,期待値(0)と異なる出力になります。
- イ:図で示される左側・最終のゲート形状(尖った OR 形状)が多用され,左側で同値のために必要な AND 系の項を正しく作れません。例えば のケースで誤った 1 を出す組合せになります。
- ウ:正解。左上・左下・最終のバブルとインバータの組合せが と を実現し,それらの和で同値を出します。
- エ:左段で と をそのまま作るが,最終が出力にバブル(NAND)になっているため,両者の AND を取る形にならず,実際には常に 1 を出してしまう(左段の二項が同時に 1 になることはないためその否定は常に 1)点で誤りです。具体的に で期待は 0 ですが 1 になります。
よくある誤解
- バブル(丸)が付いていると単に「否定だけ」と考え、どの段が NAND/NOR 相当かを誤認する。バブルの位置(入力側か出力側)で意味が変わります。
- 図中のインバータの取り回し(どの入力を反転しているか)を見落とし,左右対称性が崩れている回路を誤って同値回路と判断する。
- 最終ゲートのバブルの有無で挙動が大きく変わるため,まとめて「バブルが多ければ否定が増える」とだけ考えると間違える。
補足コラム
- XNOR(同値)は式で ,ブール式では と表されます。XOR の否定と考えると覚えやすいです。
- 回路図での目印:入力の両方を反転してからゲートに入れている経路は通常 の項を作るため,同値回路では重要な構成要素です。
- バブルはただの否定マークです。出力バブルのあるゲート = NAND/NOR,入力にバブルが付く接続は信号の反転を示す点に注意してください。
FAQ
Q1: バブルが複数あるときはどう整理すれば良いですか?
A1: 各バブルを「その直前/直後で信号が反転している」と見なし,経路ごとに元の入力(X, Y, ¬X, ¬Y)にマッピングしてから論理式を組み立てると整理しやすいです。
A1: 各バブルを「その直前/直後で信号が反転している」と見なし,経路ごとに元の入力(X, Y, ¬X, ¬Y)にマッピングしてから論理式を組み立てると整理しやすいです。
Q2: 短時間で同値回路(XNOR)を見抜くコツは?
A2: 「同時1を作る経路」と「同時0を作る経路」があるかを探すこと。両方の項ができていれば合成すれば同値です。
A2: 「同時1を作る経路」と「同時0を作る経路」があるかを探すこと。両方の項ができていれば合成すれば同値です。
Q3: 図のゲート形状が不明瞭なときは?
A3: 形状で判断できなければ必ずバブルの位置、接続元(インバータの有無)に注目して真理値ごとに追ってみると安全です。
A3: 形状で判断できなければ必ずバブルの位置、接続元(インバータの有無)に注目して真理値ごとに追ってみると安全です。
関連キーワード: XNOR、同値回路、論理回路、バブル、インバータ、NAND、真理値表、ド・モルガン

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

