論理ゲートの基本と真理値表
AND・OR・NOT・XOR・NAND・NORの6つのゲートの真理値表を言えるようになり、回路図や論理式から真理値表を作って「どのゲートと同じか」を判定できるようになる。
論理回路は科目Aのハードウェア分野で毎回のように出る定番です。覚えるのは真理値表6つと手順1つだけなので、少ない勉強時間で確実に点を取れます。
このレッスンで稽古する(用語チェック・過去問)まず結論:ゲートは6種類。真理値表で覚える
論理ゲートは、0か1を入れると0か1を返す小さな部品です。真理値表は、入力のすべての組合せと出力を並べた表のことです。試験で問われることのほぼすべてが、次の表で答えられます。
| A | B | AND | OR | XOR | NAND | NOR |
|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 | 1 | 1 |
| 0 | 1 | 0 | 1 | 1 | 1 | 0 |
| 1 | 0 | 0 | 1 | 1 | 1 | 0 |
| 1 | 1 | 1 | 1 | 0 | 0 | 0 |
NOT は入力が1つだけで、0なら1、1なら0を返す(反転する)部品です。
| ゲート | 出力が1になる条件 | 覚え方 | 論理式 |
|---|---|---|---|
| AND(論理積) | 全部1のときだけ | 「かつ」 | A・B |
| OR(論理和) | どれか1つでも1 | 「または」 | A+B |
| NOT(否定) | 入力が0のとき | 反転 | ¬A |
| XOR(排他的論理和) | 入力が違うとき | 「違えば1」 | A・¬B+¬A・B |
| NAND(否定論理積) | 全部1のとき以外 | ANDの逆 | ¬(A・B) |
| NOR(否定論理和) | 全部0のときだけ | ORの逆 | ¬(A+B) |
試験の論理式では否定を文字の上の横線(A̅)で書きます。このレッスンでは ¬A と書きますが同じ意味です。図記号では、出力側に小さな○が付いていたら「否定つき」(NAND・NOR)と読みます。
NAND:「両方1のときだけ0」と言われたら即答
NAND は AND の出力をひっくり返したものです。AND が「両方1のときだけ1」なので、NAND は**「両方1のときだけ0、それ以外は1」**になります。
問題文に「A, B がともに 1 のときだけ出力が 0」とあれば、それは NAND です。逆に「ともに 0 のときだけ出力が 1」なら NOR です。AND と NAND は正反対なので、「だけ」の後ろが0か1かを必ず確かめてください。
XOR:階段の電気のスイッチ
XOR は2つの入力が違うときだけ1になります。身近な例が、階段の上と下にある照明スイッチです。どちらか一方を切り替えると、もう一方の状態に関係なく、照明がつく・消えるが入れ替わります。
「どちらのスイッチでも点灯・消灯できる」という条件の問題が出たら XOR を選びます。AND や NOR は、片方のスイッチが特定の状態だと、もう片方を動かしても照明が変わらない場面があるので当てはまりません。
回路図から真理値表を作る手順
出題数が多いテーマです。複雑に見える回路も、途中の線に名前を付けて、4通りの入力を順に入れるだけで解けます。
- ゲートの出力ごとに仮の名前(P, Q, N など)を付ける
- 名前を使って論理式を書く(例:X = P + Q)
- (A,B) = (0,0), (0,1), (1,0), (1,1) の4行をすべて計算する
- 出来上がった出力の並び(例:0,1,1,0)を選択肢と見比べる
出力の並び「0,1,1,0」は XOR、「1,0,0,1」は XNOR(一致回路)、「1,1,1,0」は NAND と覚えておくと、照合が一瞬で終わります。3入力の多数決回路(3つのうち2つ以上が1なら1)は Y = A・B + B・C + A・C で、AND 3個の出力を OR でまとめた形です。
下の図は令和元年度秋期 午前 問22 の回路です(例題1で解きます)。
論理式を簡単にする・等しい回路を選ぶ
出題回数が一番多いテーマです。解き方は2通りあり、迷ったら真理値表で4通り全部を比べるのが確実です。2入力なら4行、3入力でも8行なので、試験時間内に十分間に合います。
式を変形して解く場合は、次の5つでほぼ足ります。
| 法則 | 式 | 意味 |
|---|---|---|
| 補元(OR) | A + ¬A = 1 | 「Aか、Aでない」は必ず成り立つ |
| 補元(AND) | A・¬A = 0 | 「Aかつ、Aでない」はありえない |
| 恒等 | A・1 = A、A + 0 = A | 1を掛けても0を足しても変わらない |
| 分配 | A・(B + C) = A・B + A・C | 普通の算数と同じくカッコを外せる |
| ド・モルガン | ¬(A・B) = ¬A + ¬B、¬(A+B) = ¬A・¬B | 否定をカッコの中に入れると・と+が入れ替わる |
よく出る式は、見た瞬間に正体が分かるようにしておきます。
| 式 | 1になる入力 | 正体 |
|---|---|---|
| A・¬B + ¬A・B | (0,1),(1,0) | XOR |
| A・B + ¬A・¬B | (0,0),(1,1) | XNOR(一致回路) |
| ¬A・B + A・¬B + ¬A・¬B | (1,1)以外 | NAND |
| ¬A + ¬B | (1,1)以外 | NAND(ド・モルガンで ¬(A・B)) |
回路図から真理値表を作る(出典:令和元年度 秋期 基本情報技術者試験 午前 問22)
ア A B X: 0 0 0 / 0 1 0 / 1 0 0 / 1 1 1
イ A B X: 0 0 0 / 0 1 1 / 1 0 1 / 1 1 0
ウ A B X: 0 0 1 / 0 1 0 / 1 0 0 / 1 1 0
エ A B X: 0 0 1 / 0 1 1 / 1 0 1 / 1 1 0
解き方と答えを見る
- 上の AND の出力を P、下の AND の出力を Q と名前を付ける。P = ¬A・B、Q = A・¬B、出力 X = P + Q。
- (A,B)=(0,0):P = 1・0 = 0、Q = 0・1 = 0、X = 0 + 0 = 0
- (A,B)=(0,1):P = 1・1 = 1、Q = 0・0 = 0、X = 1 + 0 = 1
- (A,B)=(1,0):P = 0・0 = 0、Q = 1・1 = 1、X = 0 + 1 = 1
- (A,B)=(1,1):P = 0・1 = 0、Q = 1・0 = 0、X = 0 + 0 = 0
- 出力の並びは 0,1,1,0。入力が違うときだけ1になるので XOR。選択肢でこの並びはイ。
答え:イ(XOR の真理値表)
回路図を論理式に直す(出典:平成29年度 秋期 基本情報技術者試験 午前 問23)
ア X = A・B + \overline{A・B}
イ X = A・B + \overline{A}・\overline{B}
ウ X = A・\overline{B} + \overline{A}・B
エ X = (\overline{A}+B)・(A+\overline{B})
解き方と答えを見る
- NOT を通った ¬A と ¬B が入る OR の出力を N とする。N = ¬A + ¬B。
- 上の AND は A と N、下の AND は N と B が入力なので、X = A・N + N・B。
- N を代入して分配法則でカッコを外す:A・(¬A + ¬B) = A・¬A + A・¬B = 0 + A・¬B = A・¬B(補元 A・¬A = 0 を使用)。
- 同じように (¬A + ¬B)・B = ¬A・B + ¬B・B = ¬A・B + 0 = ¬A・B。
- X = A・¬B + ¬A・B。これは XOR の式で、選択肢ウと一致する。
- 確認:(1,1) を入れると N = 0+0 = 0 なので X = 0。(1,0) なら N = 0+1 = 1、X = 1・1 + 1・0 = 1。XOR の並びと合う。
答え:ウ(X = A・¬B + ¬A・B)
共通の文字でくくって簡単にする(出典:平成26年度 春期 基本情報技術者試験 午前 問3)
ア A・B・C
イ A・B・C+A̅・B̅・C
ウ A・B+B・C
エ C
解き方と答えを見る
- 4つの項すべてに C が入っているので、C でくくる:C・(¬A・¬B + A・¬B + ¬A・B + A・B)。
- カッコの中の前2項を ¬B でくくる:¬B・(¬A + A) = ¬B・1 = ¬B(補元 ¬A + A = 1)。
- 後ろ2項を B でくくる:B・(¬A + A) = B・1 = B。
- カッコの中は ¬B + B = 1(補元)。
- 全体は C・1 = C(恒等)。カッコの中は A,B の4通りを全部並べたものなので、必ず1になると気付ければ一瞬。
答え:エ(C)
3つの項の論理式と同じゲートを選ぶ(出典:平成25年度 秋期 基本情報技術者試験 午前 問25)
ア [図] 入力 A,B の論理積素子(AND)。出力 X
イ [図] 入力 A,B の否定論理積素子(NAND)。出力 X
ウ [図] 入力 A,B の論理和素子(OR)。出力 X
エ [図] 入力 A,B の否定論理和素子(NOR)。出力 X
解き方と答えを見る
- X = ¬A・B + A・¬B + ¬A・¬B。各項がどの入力で1になるかを書き出す。
- ¬A・B は (A,B)=(0,1) のとき1、A・¬B は (1,0) のとき1、¬A・¬B は (0,0) のとき1。
- OR でつながっているので、X は (0,0),(0,1),(1,0) で1、残りの (1,1) だけ0。
- 出力の並びは 1,1,1,0。「両方1のときだけ0」なので NAND。
- XOR(0,1,1,0)と早合点しないこと。¬A・¬B の項があるので (0,0) も1になる。
答え:イ(NAND)
要点(試験直前に読む)
- 真理値表の出力の並び(入力 00,01,10,11 の順):AND=0001、OR=0111、XOR=0110、NAND=1110、NOR=1000。
- 「両方1のときだけ0」は NAND、「階段スイッチ」「違えば1」は XOR。
- 回路図は途中の線に名前を付け、4通りの入力を全部入れて真理値表を作る。
- 式を簡単にするのは補元・恒等・分配・ド・モルガンの法則。迷ったら真理値表で全通り比べる。
- A・¬B+¬A・B は XOR、A・B+¬A・¬B は XNOR(一致回路)、¬A+¬B は NAND。
ひっかけ
- AND と NAND の取り違え:問題文の「だけ 0」「だけ 1」の0か1かを必ず読む。
- XOR と XNOR(一致回路)の取り違え:選択肢に A・¬B+¬A・B と A・B+¬A・¬B が並ぶ。(1,1) を代入して0になる方が XOR。
- 3項の和を XOR と早合点:¬A・¬B の項が入っていると (0,0) も1になり NAND になる。項を1つずつ確認する。
- OR と XOR の取り違え:(1,1) のとき OR は1、XOR は0。この1行だけ確かめれば見分けられる。
- 一部の項だけの式を等しいと思い込む:4項の式と2項の式は、真理値表で欠けた入力の行が必ず食い違う。
用語(12)
0か1の入力を受け取り、決まった規則で0か1を出力する回路の部品。
入力のすべての組合せと、そのときの出力を並べた表。
入力がすべて1のときだけ1を出力するゲート。式では A・B と書く。
⚠ NAND と正反対。「全部1のときだけ1」なら AND、「全部1のときだけ0」なら NAND。
入力のどれか1つでも1なら1を出力するゲート。式では A+B と書く。
⚠ XOR は (1,1) で0になるが、OR は (1,1) でも1。
入力を反転させる(0→1、1→0)1入力のゲート。式では文字の上の横線で表す。
2つの入力が異なるときだけ1を出力するゲート。式は A・¬B+¬A・B。
⚠ OR と違い (1,1) で0。XNOR(一致回路)は出力がちょうど逆。
AND の出力を反転したゲートで、入力がすべて1のときだけ0を出力する。
⚠ AND と出力が全行で逆。図記号は AND の出力側に○が付く。
OR の出力を反転したゲートで、入力がすべて0のときだけ1を出力する。
⚠ NAND と混同しやすい。NAND は (1,1) だけ0、NOR は (0,0) だけ1。
2つの入力が等しいときだけ1を出力する回路。式は A・B+¬A・¬B。
⚠ XOR の逆。式に A・B と ¬A・¬B が並んでいたら一致回路。
否定をカッコの中に入れると・と+が入れ替わる法則で、¬(A・B)=¬A+¬B、¬(A+B)=¬A・¬B。
⚠ 否定を配るだけで記号を入れ替え忘れる誤りが多い。
論理積(・)、論理和(+)、否定(上線)で回路の動きを表した式。
⚠ ・は掛け算、+は足し算に似ているが、1+1 は 1 になる点が算数と違う。
3つの入力のうち2つ以上が1のとき1を出力する回路で、式は A・B+B・C+A・C。
⚠ AND 3個を OR でまとめる形。XOR を使った回路は2つが1のとき0になり当てはまらない。
このレッスンの過去問
- 基本論理ゲートの真理値(NAND)平成31年度 春期 基本情報技術者試験 午前 問22
- XORゲートの真理値(階段スイッチ回路)平成22年度 秋期 基本情報技術者試験 午前 問25
- 論理回路(AND-OR-NOT)の真理値表導出令和元年度 秋期 基本情報技術者試験 午前 問22
- 論理式の簡略化と等価な論理回路の判定平成27年度 春期 基本情報技術者試験 午前 問23