今回は令和6年度下期 機械科目 B問題18を解説します。OR・AND・NOTゲートで構成された論理回路(図1)の真理値表を求める(a)と、図1のブロックを2組接続して全加算器を構成したとき(図2)の出力S2,T2を求める(b)の2部構成問題です。★情報12(平成28年度B問題18)とほぼ同一のブロック構成・出題形式の類似問題です。
(a)は中間ノードC,D,Eを割り付け、S1=(A+B)・(A・B)の否定=A・B̄+Ā・Bという排他的論理和の形に整理します。(b)はS2=(A⊕B)⊕Cという全加算器の標準式にたどり着きます。
ほぼ同じ問題が 【機械】平成28年度B問題18 でも出題されています。出題パターンが固定なので、セットで解けば確実な得点源になります。
令和6年度下期 機械科目 B問題18:問題文と選択肢
まずは、実際の試験問題を確認してみましょう。

出典:一般財団法人 電気技術者試験センター「令和6年度下期 第三種電気主任技術者試験」機械科目 B問題18
電験3種 機械科目 【情報】 令和6年度下期 B問題18
次の論理回路について,(a)及び(b)の問に答えよ。(a) 図1に示す論理回路の真理値表として,正しいものを次の(1)〜(5)のうちから一つ選べ。
(b) 図1に示す論理回路を2組用いて図2に示すように接続して構成したとき,A,B及びCの入力に対する出力S2及びT2の記述として,正しいものを次の(1)〜(5)のうちから一つ選べ。
A,B (1) (2) (3) (4) (5) 00 S1=0,T1=0 0,1 0,0 0,0 0,1 01 0,0 0,0 1,0 1,0 1,0 10 0,0 0,0 1,0 0,0 1,0 11 0,1 0,1 0,1 0,1 0,1 (1)A=0,B=0,C=0を入力したときの出力は,S2=0,T2=1である。
(2)A=0,B=1,C=0を入力したときの出力は,S2=1,T2=0である。
(3)A=0,B=0,C=1を入力したときの出力は,S2=0,T2=1である。
(4)A=1,B=0,C=1を入力したときの出力は,S2=1,T2=0である。
(5)A=1,B=1,C=0を入力したときの出力は,S2=1,T2=1である。

出題のポイント:図1は半加算器の別の作り方
OR・AND・NOT で組まれた図1——整理すると S1=A⊕B、T1=A·B になります。やはり半加算器です。
OR とNAND のAND
★EX-OR
「どちらかが1(OR)かつ、両方1 ではない(NAND)」——これは「一方だけが1」ということ。まさにEX-OR の定義です。
EX-OR をこの形で作るのは定番——A⊕B=(A+B)·(A·B)‾ という等式は覚えておくと便利です。
| A | B | A+B | (A·B)‾ | S1 | T1=A·B |
| 0 | 0 | 0 | 1 | 0 | 0 |
| 0 | 1 | 1 | 1 | ★1 | 0 |
| 1 | 0 | 1 | 1 | ★1 | 0 |
| 1 | 1 | 1 | 0 | 0 | ★1 |


(b) 2組つないで全加算器
図2は図1を2組つないだ構成——3つの入力A、B、C を足す全加算器になります。
★1 の個数が奇数なら1
2つ以上が1 なら1
S2 は3つのEX-OR——1 の個数が奇数のとき1 です。T2 は「2つ以上が1 のとき1」——多数決と同じ働きになります。
| A、B、C の1 の個数 | 合計(2進数) | S2 | T2 |
| 0個 | 00 | 0 | 0 |
| 1個 | 01 | ★1 | 0 |
| 2個 | 10 | 0 | ★1 |
| 3個 | 11 | ★1 | ★1 |
「1 の個数を数えて2進数にする」——それが全加算器の出力そのものです。選択肢の記述を、この表と照らすだけで判定できます。

⚠️ よくある間違い
(a)の選択肢は S1 と T1 の組合せ——片方だけで判断せず、両方確認してください。S1 の並びが同じで T1 だけ違う選択肢があります。
とくに A=B=0 のときの T1——A·B=0 なので0 のはずですが、1 としている選択肢が2つあります。この1行で2肢が落とせます。
EX-OR の4つの作り方
EX-OR は基本ゲートではないので、いろいろな作り方があります。どれも同じ働きです。
| 作り方 | 式 | 使うゲート |
| 標準形 | A·B̄+Ā·B | NOT 2、AND 2、OR 1 |
| 本問の形 | ★(A+B)·(A·B)‾ | OR 1、NAND 1、AND 1 |
| NAND形 | — | NAND 4個 |
| NOR形 | — | NOR 5個 |
本問の形が最も部品が少ない——3個のゲートで済みます。しかもNOT が不要なのが利点です。
「どちらかは1、でも両方ではない」——日本語で言えばそのまま。意味から式が作れるので、覚えやすい形だと言えます。
⏱️ 本番での進め方
①(a) S1=(A+B)·(A·B)‾=A⊕B、T1=A·B。
② 4行の真理値表を作って選択肢と照合。両方確認する。
③(b) 図2は全加算器。1 の個数を数えて2進数に。
④ 0個→00、1個→01、2個→10、3個→11。
💡 覚え方
「どちらかは1、でも両方ではない」=EX-OR——(A+B)·(A·B)‾ という形。そして「全加算器は1 の個数を数える回路」です。
ほぼ同一の構成の問題が平成28年度 B問題18にあります(情報:半加算器と全加算器)。選択肢の並びが違うので、答えの番号を取り違えないよう注意してください。

加算器を並べて多桁の足し算
全加算器が1つあると何ができるのか——1桁分の足し算です。並べれば何桁でも足せます。
| 桁 | 使う回路 | 桁上げ入力 |
| 最下位 | 半加算器でよい | なし |
| 2桁目以降 | ★全加算器 | 下の桁からの桁上げ |
| 最上位 | 全加算器 | 桁上げ出力があふれ |
最下位だけは下から来る桁上げがないので半加算器で足ります——これが「半」加算器と呼ばれる理由です。3入力そろって初めて「全」加算器になります。
4桁足すなら、半加算器1個+全加算器3個——本問の図2が3個並ぶ形になります。実際のICでは、最下位も全加算器にして桁上げ入力を0 にすることが多く、同じ部品を並べるだけで済みます。
桁上げが遅さを生む
この並べ方には弱点があります——桁上げが下から順に伝わるので、上の桁は下の桁の計算が終わるまで待たされるのです。
これを桁上げ伝搬(リプルキャリー)といいます。桁数が増えるほど遅くなる——64桁なら64段分の遅れです。
そこで実際のプロセッサでは、桁上げを先に計算する回路を持ちます。桁上げ先見加算器と呼ばれるもので、各桁の桁上げを入力から直接求める——部品は増えますが、けた違いに速くなります。
論理回路を読む手順を固定する
本問のような回路図の問題は、手順を固定してしまうのが得策です。その場で考えるのではなく、いつも同じ順序でなぞるのです。
| 手順 | やること | ねらい |
| ① | ゲートの出口すべてに記号を書く | 途中で迷わない |
| ② | 入力側から1段ずつ式にする | ★NOT の位置を落とさない |
| ③ | 入力の全組合せで表を作る | 2入力なら4通り |
| ④ | 選択肢と1行ずつ照合 | 合わない行が1つあれば除外 |
式の展開に自信がなければ、③から始めてもかまいません——4通りの入力を回路に直接通すほうが確実な場合もあります。0 と1 を図に書き込みながら追うだけです。
本問なら A=B=1 の1行を試すだけで、多くの選択肢が落とせます——S1=0、T1=1 という特徴的な組合せだからです。
時間が足りないときの割り切り
B問題は(a)(b)で各5点——1問に10分もかけられません。全部の行を埋めようとせず、選択肢を絞れる行から試すのが実戦的です。
本問の(b)は「1 の個数を数える」と分かってしまえば、表すら不要——回路の意味を先に見抜けば、大幅に時間が縮まります。過去問で「これは加算器だ」と気づける目を養っておきましょう。
まとめ
| S1 | A⊕B(排他的論理和) |
| T1 | A・B |
| (a)の答え | (3) |
| (b)の答え | (2) |
▼あわせて解きたい関連問題
・NANDゲートのみで構成した全加算器の真理値表:【機械】令和4年度上期B問題18
・OR・AND・NOTで構成した全加算器の真理値表(平成28年度):【機械】平成28年度B問題18

コメント