論理回路とカルノー図|真理値表・ド・モルガンの定理と論理式の簡単化を図解
電験三種の機械で扱う論理回路を、2進数と16進数の変換、AND・OR・NOT・NAND・NOR・XOR、真理値表、ド・モルガンの定理、カルノー図による簡単化まで図解で整理します。例題と解答つきです。

機械を図解で読む図解でわかる 電験三種 機械 1直流機Kindle Unlimited 対象Kindle で読む
論理回路とは、0 と 1 の 2 通りの値だけで、計算も判断も行う回路です。この記事では、2 進数と 16 進数の変換から、AND・OR・NOT・NAND・NOR・XOR の動き、ド・モルガンの定理、カルノー図による論理式の簡単化までを順に確認します。結論から言うと、真理値表を自分で書けるようになれば、回路の読み取りも式の簡単化も、同じ手順で確かめられます。
- 論理回路とは
- 0 と 1 で表す、2 進数と 16 進数の変換
- 論理ゲートと真理値表
- AND・OR・NOT・NAND・NOR・XOR の記号と動き
- ブール代数とド・モルガンの定理
- 基本の法則と、NAND だけで回路を作る考え方
- 回路図から論理式を読む方法
- 真理値表の作り方と、半加算器
- カルノー図で簡単化する方法
- マスの並びと、1 を囲む手順
論理回路とは
論理回路は、入力も出力も 0 か 1 しかとらない回路です。スイッチが切れている状態を 0、入っている状態を 1 と決めれば、スイッチの入り切りがそのまま入力になります。電子回路では、電圧が低い状態を 0、高い状態を 1 とするのが一般的です。
2 通りしかとれない値を 1 桁ずつ並べて数を表すのが 2 進数です。図1の DIP スイッチでは、つまみ 1 本が 1 桁(1 ビット)にあたり、8 本あれば 8 桁の数を設定できます。

- 奥へ倒す この向きを 1 とする例
- 手前へ倒す この向きを 0 とする例
- 本体 8本のつまみが1列に並ぶ
- 足 基板の穴に差し込む端子
2 進数と 10 進数の変換
2 進数の桁には、右から順に 1、2、4、8、…と 2 倍ずつ増える重みがあります。値が 1 の桁の重みを足せば 10 進数になります。図2の上段のとおり、 です。
逆に 10 進数を 2 進数にするには、2 で割って余りを書き、商が 0 になるまで続けます。余りを下から上へ読んだものが答えです。13 の場合は次のとおりで、 です。
16 進数と 2 進数の変換
16 進数は、0〜9 と A〜F の 16 個の文字で 1 桁を表します。A〜F は 10〜15 です(図3)。2 進数の 4 桁がちょうど 16 通りなので、2 進数は右から 4 桁ずつ区切れば、そのまま 16 進数の 1 桁に直せます。図2の下段で、1101 は 13 なので D、0111 は 7 なので 7 となり、 です。
解答と解説を見る
(1) 値が 1 の桁は、左から 1 番目、3 番目、4 番目、6 番目、7 番目で、重みは 128、32、16、4、2 です。
16 進数にするには、4 桁ずつ区切ります。1011 は 11 なので B、0110 は 6 なので 6 です。答えは 10 進数で 182、16 進数で です。
(2) 2 は 0010、F(15)は 1111 です。つなげると で、先頭の 0 を省いて です。10 進数に直して と が一致するので、検算できます。
論理ゲートと真理値表
論理ゲートは、入力の 0 と 1 から出力を決める部品です。記号には MIL 記号を使います。入力のすべての組合せに対して出力がどうなるかを並べた表が真理値表で、入力が 2 つなら 4 行、3 つなら 8 行、 個なら 行です。
基本の三つは AND・OR・NOT です(図4)。AND(論理積)は入力が両方 1 のときだけ 1、OR(論理和)は少なくとも一方が 1 のとき 1、NOT(否定)は 0 と 1 を入れ替えます。
| 入力 (A, B) | AND | OR |
|---|---|---|
| (0, 0) | 0 | 0 |
| (0, 1) | 0 | 1 |
| (1, 0) | 0 | 1 |
| (1, 1) | 1 | 1 |
NAND は AND の出力を反転したもの、NOR は OR の出力を反転したものです。記号の出力側に付く小さな丸が、否定を表します。
| 入力 (A, B) | NAND | NOR |
|---|---|---|
| (0, 0) | 1 | 1 |
| (0, 1) | 1 | 0 |
| (1, 0) | 1 | 0 |
| (1, 1) | 0 | 0 |
XOR(排他的論理和)は、入力が異なるときだけ 1 になります。反対に、入力が等しいときに 1 になるのが XNOR です。
| 入力 (A, B) | XOR | XNOR |
|---|---|---|
| (0, 0) | 0 | 1 |
| (0, 1) | 1 | 0 |
| (1, 0) | 1 | 0 |
| (1, 1) | 0 | 1 |
スイッチとランプで考えると、AND と OR の違いがつかめます。図5のように、スイッチを直列につなぐと両方を入れたときだけ点灯し(AND)、並列につなぐとどちらかを入れれば点灯します(OR)。
図6のような壁のスイッチは、入と切の 2 つの状態を持つので、0 と 1 の入力として扱えます。階段の上と下の 2 か所で同じ電灯を入り切りできる 3 路スイッチは、どちらか一方を切り替えるたびに点灯と消灯が入れ替わります。この動きは、XOR の真理値表と同じです。

実際の論理ゲートは IC(集積回路)に作り込まれています。図7のようにブレッドボードに差して配線すれば、入力のスイッチと出力の LED で、真理値表どおりに動くかを確かめられます。

- IC ゲートが作り込まれた部品
- LED 出力を光で見せる
- 押しボタン 入力を手で入れる
- ジャンパ線 部品どうしをつなぐ
ブール代数とド・モルガンの定理
論理式を計算する決まりがブール代数です。変数は 0 か 1 で、論理積、論理和、否定の三つの演算だけを使います。基本の法則を次の表にまとめます。
| 法則 | 論理積の形 | 論理和の形 |
|---|---|---|
| 交換 | ||
| 同一 | ||
| 補元 | ||
| 吸収 |
1 や 0 との演算は、、、、 です。否定を 2 回付けると元に戻り、 です。
分配の法則は、普通の代数と違い、論理和の側にも成り立ちます。
この法則から、簡単化でよく使う式が導けます。
ド・モルガンの定理
ド・モルガンの定理は、上線(否定)を分けるときに、AND と OR が入れ替わるという定理です。
回路で見ると、NAND は入力に否定を付けた OR と同じで、NOR は入力に否定を付けた AND と同じです(図8)。
NAND だけで NOT・AND・OR を作る
NAND だけを使って、すべての回路を作ることができます(図9)。NOT は、NAND の入力 2 本をつなぎます。 だからです。AND は、NAND の出力に NOT を付けます。OR は、2 つの入力をそれぞれ NOT にしてから NAND に入れます。ド・モルガンの定理から、 と確かめられます。NOR だけでも同じことができます。
解答と解説を見る
まず、 を、 として適用します。次に、 にも適用します。
答えは です。 で確かめると、元の式は 、変形後は で一致します。
回路図から論理式を読む方法
回路図から出力を求める手順は、次の三つです。
- 各ゲートの出力に、P、Q などの名前を付ける
- 入力に近いゲートから順に、出力を式で書く
- 入力のすべての組合せについて、P、Q、出力の値を表にする
図10の回路で考えます。OR の出力を P、NAND の出力を Q とすると、、、 です。
| 入力 (A, B) | (P, Q) | Y |
|---|---|---|
| (0, 0) | (0, 1) | 0 |
| (0, 1) | (1, 1) | 1 |
| (1, 0) | (1, 1) | 1 |
| (1, 1) | (1, 0) | 0 |
表から、Y は A と B が異なるときだけ 1 です。つまり、この回路は XOR で、 と書けます。
制御盤の中のシーケンサ(PLC)も、同じ考え方で動きます(図11)。スイッチやセンサーの入り切りを入力とし、論理の組合せで判断して、ランプやリレーなどの出力を入り切りします。

- 本体 入力から出力を決める
- LED 状態を緑の点灯で知らせる
- 上の端子台 外部の機器の電線をつなぐ
- 下の端子台 こちらにも電線をつなぐ
- DIN レール 本体を固定する金属の棒
もう一つ、3 入力の回路で練習します。
解答と解説を見る
OR の出力を P、NAND の出力を Q とすると、、、 です。Y が 1 になるのは、P も Q も 1 のときです。
- P が 1: A と B の少なくとも一方が 1
- Q が 1: B と C が両方 1 ではない
この二つを満たす組合せを、A、B、C の順に調べます。
- : P = 1、Q = 1 なので Y = 1
- : P = 1、Q = 1 なので Y = 1
- : P = 1、Q = 1 なので Y = 1
- : P = 1、Q = 1 なので Y = 1
- と : P = 1 だが Q = 0 なので Y = 0
- と : P = 0 なので Y = 0
答えは、、、、 の 4 通りです。
半加算器(XOR と AND)
論理回路で足し算をする最小の回路が、半加算器です。1 ビットどうしの足し算は、、、(2 進数)の 3 通りです。 のときだけ、和が 0 になって桁が上がります。和 S は XOR、桁上がり C は AND で作れます(図13)。
| 入力 (A, B) | S(和) | C(桁上がり) |
|---|---|---|
| (0, 0) | 0 | 0 |
| (0, 1) | 1 | 0 |
| (1, 0) | 1 | 0 |
| (1, 1) | 0 | 1 |
下の桁からの桁上がりも足す回路は全加算器で、半加算器 2 つと OR で作れます。出力を覚えておく記憶の部品は、次の記事のフリップフロップで扱います。
カルノー図で簡単化する方法
論理式が長いと、回路に必要なゲートが増えます。式を短くできれば、ゲートが減ります。カルノー図は、真理値表を図の形に並べ、見た目で簡単化する方法です。
カルノー図の描き方
変数の組合せを、隣り合うマスが 1 ビットしか違わないように並べます。2 ビットの並びは、00、01、10、11 ではなく、00、01、11、10 です(図14)。マスの数字は、変数の並びを 2 進数と読んだ値で、たとえば A = 1、B = 0、C = 1 のマスは 5 です。端のマスは、反対側の端とつながっています。
1 を囲んで簡単化する手順
手順は、次の三つです。
- 出力が 1 のマスに 1 を書く
- 1 を、隣り合う 個(1、2、4、8、…)の長方形で囲む。できるだけ大きく囲み、囲みは重なってもよい。すべての 1 をどれかの囲みに入れる
- 囲みごとに、中で値が変わらない変数だけを残して AND の式にする。値が 0 のまま変わらない変数には上線を付ける。囲みごとの式を OR でつなぐ
囲むと簡単になる理由は、隣り合う 2 マスは 1 変数だけが違うので、その変数が消えるからです。
図15は、 が 000、001、011、100、101 のときだけ 1 になる関数です。B が 0 の 4 マスをまとめて囲むと、A と C が変わっても は変わらないので、 だけが残ります。011 は残りの 1 つなので、001 と組にして囲みます。囲みの中では 、 が変わらないので、 です。001 は 2 つの囲みに入っています。
4 変数でも手順は同じです。マスが 16 個になり、上下の端もつながります。
解答と解説を見る
図16のように 1 を書きます。四隅の 4 個(0000、0010、1000、1010)は、上下左右の端がつながっているので、1 つの囲みにできます。囲みの中で変わらないのは と で、 です。
残る 0101 と 0111 は、横に隣り合っています。変わらないのは 、、 で、 です。
6 個の 1 が 2 つの囲みにすべて入っているので、これが答えです。
よくある質問
NAND だけで回路を作れるのはなぜですか。
NAND だけで NOT、AND、OR を作れるからです。NOT は入力 2 本をつなぎ、AND は NAND の後ろに NOT を付け、OR は入力を NOT にしてから NAND に入れます。AND、OR、NOT があればどんな論理式も回路にできるので、NAND の 1 種類で足ります。NOR だけでも同じです。
カルノー図の並びが 00、01、11、10 なのはなぜですか。
隣り合うマスが 1 ビットしか違わないようにするためです。00、01、10、11 の順に並べると、01 と 10 が隣り合って 2 ビット違ってしまい、変数が 1 つ消える囲みを作れません。11 の次を 10 にすれば、00 から 10 へ戻る端どうしも 1 ビット違いです。
XOR と OR の違いは何ですか。
入力が両方 1 のときが違います。OR は 1、XOR は 0 です。XOR は「入力が異なるとき 1」と覚えます。半加算器の和や、階段の 3 路スイッチは XOR の動きです。
ド・モルガンの定理はどう覚えればよいですか。
上線を分けるときに、AND と OR が入れ替わると覚えます。記号では、NAND は入力に丸を付けた OR、NOR は入力に丸を付けた AND です。0 と 1 を入れた小さな例で、両辺が一致することを確かめると忘れにくくなります。
思い出してみよう
答えを見る前に、まず自分で思い出してからタップしてください。
を 10 進数にするといくつですか?
重みは右から 1、2、4、8 です。 です。
2 進数を 16 進数に直すには、どうしますか?
右から 4 桁ずつ区切り、それぞれを 0〜9、A〜F の 1 文字にします。
XOR の出力が 1 になるのは、どんなときですか?
2 つの入力が異なるときです。
ド・モルガンの定理を 2 つ書くとどうなりますか?
と です。
NAND だけで OR を作るには、どうしますか?
各入力を、NAND の入力 2 本をつないだ NOT にして反転し、その 2 つの出力を NAND に入れます。
カルノー図で、1 を囲むときの決まりは何ですか?
隣り合う 1、2、4、8 個の長方形で、できるだけ大きく囲みます。端のマスはつながります。
まとめ
- 論理回路は 0 と 1 だけを扱い、2 進数は 4 桁ずつ区切ると 16 進数に直せる
- AND は両方 1 で 1、OR は少なくとも一方が 1 で 1、XOR は入力が異なるとき 1
- ド・モルガンの定理は、上線を分けると AND と OR が入れ替わる。NAND だけで NOT・AND・OR を作れる
- 回路図は、ゲートの出力に名前を付けて、入力に近い側から式と真理値表にする
- カルノー図は、00、01、11、10 の並びで 1 を 個ずつ囲み、変わらない変数だけを残す
次は、記憶を持つ回路を扱うフリップフロップに進みましょう。論理回路の考え方が、そのまま土台になります。自動制御の分野では、ブロック線図と伝達関数も合わせて読むと、機械の科目の全体がつながります。








