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

選択肢
ア:
イ:
ウ:(正解)
エ:
🔒 解説は解答すると表示されます
同値判定回路【午前解説】
正解の理由
正解: ウ
ウの回路を式で追うと次のようになります。上段のバブル付き AND は (NAND)です。下段は入力を反転してから AND(さらに出力にバブル)なので、下段の内部は 、出力のバブルで になります。右端は二つの信号を AND し出力を反転する(NAND)構成なので最終出力は 真理値を計算すると X=Y のときに Z=1、異なるときに Z=0 となり、これは同値(XNOR)に一致します。簡単な真理値表でも確認できます。
ウの回路を式で追うと次のようになります。上段のバブル付き AND は (NAND)です。下段は入力を反転してから AND(さらに出力にバブル)なので、下段の内部は 、出力のバブルで になります。右端は二つの信号を AND し出力を反転する(NAND)構成なので最終出力は 真理値を計算すると X=Y のときに Z=1、異なるときに Z=0 となり、これは同値(XNOR)に一致します。簡単な真理値表でも確認できます。
真理値表(要点)
- X=0,Y=0 → Z=1
- X=1,Y=1 → Z=1
- X≠Y → Z=0
よってウが正解です。
解法ステップ
- まず「出力が1になる条件(XとYが等しい)」を心に留める(目標:XNOR)。
- 図の各ゲートについて、形(AND/OR)とバブル(入力側/出力側)を正確に判定する。
- 上段・下段・最終出力のブロックごとに論理式を立て、合成して最終式を得る。
- 得られた式を真理値表で検算して、求める条件(X=Y→Z=1)に合致するか確認する。
選択肢別の誤答解説
- ア: 上段が単なる AND、下段の構成(説明の通りだと)では実質的に と を OR したような出力になり、X=Y のときだけ 1 とはならない。具体的には出力は に相当し、Y=0 で常に1になるなど期待する同値動作と異なる。
- イ: 図では上段が OR、下段も OR 相当で、最終も OR なので多くの場合出力がほぼ常に 1(冗長な OR)になる。XNOR のように「等しいときだけ1」にはならない。
- ウ: 正解。上段が NAND、下段が NAND(入力は反転されているため結果は )、最終が NAND になり、合成すると XNOR になる。真理値で確認済み。
- エ: 上段・下段ともに出力バブル付き(NOR 相当)で最終もバブル付き OR(NOR)の組合せは XNOR にはならず、むしろ否定付きの OR/NOR の組合せで別の論理(例えば XNOR の否定や他の複合)になるため不適。
(図のテキスト化の微妙な差異で入力のどちらが反転されているかの記述が分かれる場合がありますが、判定のコツは「各ブロックで何が生成されるか(式で表現)→真理値表で確認」です。)
よくある誤解
- 「バブル=入力否定だ」とだけ覚えて出力側か入力側かを見落とす。入力側のインバータと出力側のバブルは意味が異なるので注意。
- 図のゲート形状(扁平=AND、曲線=OR)だけで判断してバブルの有無を無視すると誤答する。
- XNOR を知らなくても、真理値のパターン(同じとき 1)を見落とし、XOR や単純 OR/NAND と混同する。
補足コラム
- XNOR(同値)は論理式で (しばしばバー付き=否定付き XOR)と表され、等価式として が成り立ちます。
- ハードウェア実装では NAND のみで組むとゲート数を削減できることが多く、今回のウのように NAND を含む組合せで簡潔に実現できます。
- 図から素早く識別するコツは「出力が1になる条件」を先に口に出してから、各ブロックを対応させることです。
FAQ
Q1: 図のバブルは入力と出力どちらも同じ扱いですか?
A1: いいえ。入力側に描かれた丸はその入力信号を反転してからゲートに入れることを意味し、出力側にある丸はゲートの出力全体を反転する(NAND/NOR など)ことを意味します。位置で意味が変わる点に注意してください。
A1: いいえ。入力側に描かれた丸はその入力信号を反転してからゲートに入れることを意味し、出力側にある丸はゲートの出力全体を反転する(NAND/NOR など)ことを意味します。位置で意味が変わる点に注意してください。
Q2: XNOR を素早く見分けるコツは?
A2: 「(X AND Y) または (NOT X AND NOT Y)」の形、または NAND/NAND→NAND のような典型的なNAND実装パターンを探すと良いです。真理値表で X=Y の列が 1 になるかを確認するのも早い方法です。
A2: 「(X AND Y) または (NOT X AND NOT Y)」の形、または NAND/NAND→NAND のような典型的なNAND実装パターンを探すと良いです。真理値表で X=Y の列が 1 になるかを確認するのも早い方法です。
Q3: 真理値表を全パターン書く時間がないときは?
A3: 各段の論理式だけを4組(00,01,10,11)についてメモ的に追えば十分です。特に「00 と 11 が 1 かどうか」を優先してチェックすると速く判断できます。
A3: 各段の論理式だけを4組(00,01,10,11)についてメモ的に追えば十分です。特に「00 と 11 が 1 かどうか」を優先してチェックすると速く判断できます。
関連キーワード: XNOR、XNOR 回路、NAND、NOR、ブール代数、論理回路、デジタル回路、真理値表

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

