Instant Engineering

エンジニアの仕事効率を上げる知識をシェアするWeb記事/機械設計/TPS/QC品質管理

論理回路とは?AND・OR・NOTと真理値表

「センサがON、かつ非常停止がOFFのときだけ動かす」。

このような条件判断は、工場設備にもマイコンにも必ず登場します。

論理回路とは、0と1の入力を組み合わせ、決められたルールで0か1を出力する回路です。

基本はAND・OR・NOTですが、実際の設計ではNAND、NOR、XOR、真理値表まで理解する必要があります。

本記事では、論理回路の意味、真理値表の作り方、ブール代数、NAND万能性、実装時の注意点まで解説します。

 

 

1. 論理回路とは何か:0と1で条件を判断する回路

論理回路とは、入力された0と1の組み合わせから、出力の0と1を決める回路です。

人間が言葉で考える条件判断を、電気信号として処理する仕組みだと考えると理解しやすくなります。

たとえば「AとBが両方成立したら動く」「AかBのどちらかで停止する」という判断を、回路で表現します。

このときのAやBが入力で、動くか止まるかの結果が出力です。

デジタル回路の多くは、この単純な論理判断を大量に組み合わせて作られています。

0と1は電圧の高低で表す

論理回路の0と1は、実際には電圧の状態に対応しています。

一般的には、高い電圧側を1、低い電圧側を0として扱います。

ただし、0Vだけが0、5Vだけが1と厳密に一点で決まるわけではありません。

実際のICでは、入力を0と判定する電圧範囲と、1と判定する電圧範囲が決められています。

その間には、0とも1とも判断しにくい不定領域があります。

この考え方を押さえると、データシートの入力電圧条件を読みやすくなります。

論理信号を外部ピンで扱う場面は、GPIOとは?マイコンとラズパイのピン入出力とも深く関係します。

二値にすることでノイズに強くなる

論理回路が二値で動く大きな利点は、多少の電圧変動に強いことです。

アナログ信号は連続した値を扱うため、ノイズがそのまま誤差になります。

一方、デジタル信号は「低い範囲なら0」「高い範囲なら1」と大まかに判定できます。

そのため、少し電圧が揺れても、判定範囲を外れなければ論理値は変わりません。

この余裕をノイズマージンと呼びます。

ノイズマージンが小さい設計では、配線ノイズや電源変動によって誤動作しやすくなります。

実務では、論理値を決める基準を先にそろえることが重要です。

たとえば制御盤では、PLCの入力ランプが点灯していても、それが「条件成立」を意味するとは限りません。

センサの種類、配線方式、プログラム上の反転処理によって、同じON表示でも安全側の意味が変わることがあります。

そのため、論理回路を読むときは、電圧の高低、信号名、実際の条件名を分けて考えます。

この三つを混ぜて読むと、図面上は正しいのに現場では逆動作する設計になりやすいです。

組合せ回路と順序回路の違い

論理回路は、大きく組合せ回路と順序回路に分けられます。

組合せ回路は、現在の入力だけで出力が決まる回路です。

AND、OR、NOT、NAND、XORなどの基本ゲートは、組合せ回路の代表例です。

順序回路は、現在の入力に加えて、過去の状態も出力に影響します。

記憶を持つフリップフロップ、カウンタ、レジスタなどが順序回路にあたります。

まず組合せ回路を理解すると、順序回路の動作も段階的に理解できます。

組込みシステムで状態を保持して制御する場面は、組込みOSとは?RTOS・トロン・種類を解説の考え方にもつながります。

 

2. AND・OR・NOT:基本となる三つの論理ゲート

論理回路の基本は、AND、OR、NOTの三つです。

この三つを理解すれば、多くの条件判断を読み解けます。

実際の回路図では記号で表されますが、最初は日本語の条件文に置き換えると理解しやすくなります。

AND:すべての条件がそろうと1になる

ANDは、すべての入力が1のときだけ出力が1になるゲートです。

日本語では「AかつB」と表現できます。

たとえば「安全カバーが閉じている、かつ起動ボタンが押されているときだけモータを回す」という判断に使えます。

どちらか一方でも条件を満たさなければ、出力は0になります。

式では、 Y = A \cdot B のように表します。

入力A 入力B 出力Y(AND)
0 0 0
0 1 0
1 0 0
1 1 1

OR:どれか一つの条件で1になる

ORは、入力のどれか一つでも1なら出力が1になるゲートです。

日本語では「AまたはB」と表現できます。

たとえば「扉センサ、過負荷検出、非常停止のどれかがONなら停止する」という判断に使えます。

すべての入力が0のときだけ、出力は0になります。

式では、 Y = A + B のように表します。

入力A 入力B 出力Y(OR)
0 0 0
0 1 1
1 0 1
1 1 1

NOT:入力を反転させる

NOTは、入力を反転させて出力するゲートです。

入力が1なら出力は0、入力が0なら出力は1になります。

日本語では「Aではない」という否定を表します。

式では、 Y = \overline{A} のように上線で表すことが多いです。

回路ではインバータとも呼ばれ、信号の向きを反転させる基本部品になります。

入力A 出力Y(NOT)
0 1
1 0

NOTの動作は単純ですが、正論理と負論理を読むときには特に重要です。

「信号が0のときに有効」という設計では、図面上の丸やバーを見落とすと意味を逆に読んでしまいます。

 

3. 真理値表とは:すべての入力条件を並べた設計表

真理値表とは、入力の組み合わせと出力の関係を一覧にした表です。

論理回路の動作を言葉だけで説明すると、条件の抜けや誤解が起きやすくなります。

真理値表にすべての組み合わせを書き出すことで、回路の動作を漏れなく確認できます。

入力数が増えると行数は2倍になる

真理値表の行数は、入力の数で決まります。

入力が一つなら0と1の2通りです。

入力が二つなら、00、01、10、11の4通りになります。

入力が三つなら8通り、四つなら16通りです。

一般に入力数を  n とすると、組み合わせ数は  2^n になります。

入力数 組み合わせ数 真理値表の行数
1  2^1 2行
2  2^2 4行
3  2^3 8行
4  2^4 16行

入力が多くなるほど表は大きくなるため、設計では条件を整理してから表に落とし込むことが重要です。

真理値表から回路を設計する手順

真理値表は、回路を読むためだけでなく、回路を作るためにも使えます。

最初に、実現したい動作を言葉で整理します。

次に、入力として扱う条件をA、B、Cのように決めます。

そのうえで、すべての入力組み合わせを書き出し、出力を0か1で埋めます。

出力が1になる行を見れば、どの条件で回路を有効にすべきかが分かります。

最後に、その条件をAND、OR、NOTの組み合わせとして式に変換します。

この流れを使えば、複雑に見える条件も順序立てて回路化できます。

真理値表を作るときは、出力が1になる行だけに注目しがちです。

しかし安全設計では、出力が0でなければならない行の確認も同じくらい重要です。

起動してはいけない条件で1が出る回路は、たとえ通常運転で動いても危険な設計になります。

特に非常停止、扉インターロック、過負荷停止のような条件は、正常時よりも異常時の真理値表を丁寧に確認します。

「どの入力が壊れたら、どちら側に倒れるか」まで考えると、論理設計は安全設計に近づきます。

設備制御では、条件整理の考え方がシーケンス制御とは?PLC・ラダー図・資格までにも直結します。

 

4. NAND・NOR・XOR:実務でよく使う複合ゲート

基本ゲートに加えて、実務ではNAND、NOR、XOR、XNORをよく使います。

これらはAND、OR、NOTを組み合わせた働きを持つゲートです。

複合ゲートを覚えると、回路図やICのデータシートを読みやすくなります。

NANDとNOR:出力を反転したゲート

NANDは、ANDの出力をNOTで反転したゲートです。

すべての入力が1のときだけ出力が0になり、それ以外では1になります。

式では、 Y = \overline{A \cdot B} と表します。

NORは、ORの出力をNOTで反転したゲートです。

すべての入力が0のときだけ出力が1になり、一つでも1があれば0になります。

式では、 Y = \overline{A + B} と表します。

入力A 入力B NAND NOR
0 0 1 1
0 1 1 0
1 0 1 0
1 1 0 0

XOR:二つの入力が異なると1になる

XORは、二つの入力が異なるときだけ出力が1になるゲートです。

入力が同じ値なら、出力は0になります。

「どちらか一方だけ」という条件を表すため、ORとは意味が異なります。

ORは両方が1でも1を出しますが、XORは両方が1なら0になります。

この性質により、ビットの違いを検出する比較や、二進数の加算で使われます。

入力A 入力B 出力Y(XOR)
0 0 0
0 1 1
1 0 1
1 1 0

XNOR:一致したときに1になる

XNORは、XORの出力を反転したゲートです。

二つの入力が同じときだけ出力が1になります。

入力が異なるときは0になるため、一致回路として使えます。

たとえば二つの信号やデータが同じかどうかを判定する場面で役立ちます。

XORが「違いを見つけるゲート」なら、XNORは「一致を見つけるゲート」です。

比較回路、パリティチェック、加算器などでは、XORとXNORの考え方が頻繁に登場します。

 

5. ブール代数とド・モルガンの法則

ブール代数は、0と1の論理を数式として扱うための体系です。

論理回路を式で表せるようになると、複雑な条件を整理できます。

回路図だけを見るよりも、式として変形した方が簡単に本質が見えることがあります。

論理式で回路の動作を書く

ブール代数では、ANDを積、ORを和、NOTを否定として表します。

たとえば、AとBが両方1のときだけYを1にするなら、 Y = A \cdot B です。

AまたはBのどちらかでYを1にするなら、 Y = A + B です。

Aが0のときにYを1にするなら、 Y = \overline{A} です。

このように式で書けば、動作条件を短く正確に表現できます。

図面や仕様書で論理を確認するときにも、式は共通言語になります。

ド・モルガンの法則:否定を分配して読み替える

ド・モルガンの法則は、否定を含む論理式を変形するための重要な法則です。

AND全体の否定は、それぞれの否定をORしたものに等しくなります。

 \overline{A \cdot B} = \overline{A} + \overline{B}

同じように、OR全体の否定は、それぞれの否定をANDしたものに等しくなります。

 \overline{A + B} = \overline{A} \cdot \overline{B}

言葉で見ると難しく感じますが、「全体の否定は、演算をANDとORで入れ替え、各入力も否定する」と覚えると扱いやすくなります。

式を簡単にすると部品数を減らせる

論理式を変形する目的は、見た目をきれいにすることだけではありません。

式を簡単にできれば、必要なゲート数を減らせます。

ゲート数が減ると、基板面積、消費電力、遅延時間、故障要因を減らしやすくなります。

たとえば、同じ条件を二重に判定している式は、整理すれば短い式になることがあります。

量産する電子機器では、わずかな部品削減でもコストや信頼性に効きます。

回路の簡単化は、机上の数学ではなく実装品質に直結する作業です。

 

6. NANDは万能ゲート:NANDだけで全論理を作れる

NANDは、論理回路の中でも特に重要なゲートです。

理由は、NANDだけを組み合わせれば、NOT、AND、ORをすべて作れるためです。

この性質を持つゲートを万能ゲートと呼びます。

NOT・AND・ORをNANDで表す

NANDの両入力に同じ信号Aを入れると、出力はAの否定になります。

つまり、NANDだけでNOTを作れます。

次に、NANDの出力をもう一度NANDで反転すれば、ANDになります。

また、ド・モルガンの法則を使えば、ORもNANDで構成できます。

作りたいゲート NANDでの考え方 論理式の例
NOT 両入力へ同じ信号を入れる  \overline{A}
AND NANDの出力を反転する  A \cdot B
OR 各入力を反転してNANDへ入れる  A + B

このように、基本ゲートをNANDへ置き換えられるため、NANDは論理設計の中心的な存在になります。

NORも万能ゲートとして使える

NANDだけでなく、NORにも万能ゲートとしての性質があります。

NORの両入力に同じ信号を入れると、NOTを作れます。

NORの出力を反転すればORになり、ド・モルガンの法則を使えばANDも作れます。

したがって、NANDだけ、またはNORだけで任意の論理を構成できます。

実際の集積回路では、製造しやすさ、速度、消費電力、トランジスタ構成を考えてゲートが選ばれます。

論理ICの内部では、トランジスタとは?増幅とスイッチングの仕組みで扱うスイッチング動作が基本になります。

簡単な論理をダイオードで構成する考え方は、ダイオードとは?整流作用と種類・特性を解説とも関係します。

 

7. 組合せ回路の設計例:真理値表から論理式へ落とす

論理回路は、ゲートの種類を暗記するだけでは使いこなせません。

実務では、欲しい動作を真理値表に落とし、そこから論理式を作ります。

ここでは、設備の起動許可を例に考えます。

例:安全条件がそろったときだけ起動許可を出す

入力Aを「安全カバー閉」、入力Bを「非常停止解除」、入力Cを「起動ボタンON」とします。

この三つがすべて1のときだけ、出力Yを1にしたいとします。

真理値表では、A、B、Cがすべて1の行だけYを1にします。

この条件はANDでそのまま表せるため、式は  Y = A \cdot B \cdot C です。

実際の設備制御では、非常停止や扉スイッチの信号が負論理で入ることもあります。

その場合、入力の意味を「信号が1」ではなく「条件が成立」として整理することが重要です。

例:複数の異常のどれかで停止信号を出す

今度は、入力Aを「過負荷」、入力Bを「扉開」、入力Cを「温度異常」とします。

どれか一つでも発生したら、出力Yを1にして停止させたいとします。

この場合はORで表せるため、式は  Y = A + B + C です。

異常条件は、いずれか一つでも見逃すと危険につながります。

そのため、真理値表では「どの行で停止すべきか」を明確にしておく必要があります。

入力接点のチャタリングで信号が細かく揺れる場合は、デバウンス処理とは?チャタリング対策の基本のような処理も必要になります。

半加算器:XORとANDの組み合わせ

二進数の足し算では、XORとANDが組み合わさって使われます。

1ビット同士の加算を考えると、和の下位ビットはXORで表せます。

一方、桁上がりは、二つの入力が両方1のときだけ発生するためANDで表せます。

この単純な回路を半加算器と呼びます。

入力A 入力B 和S(XOR) 桁上がりC(AND)
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1

このような小さな論理の積み重ねが、コンピュータの演算回路へ発展します。

複雑なCPUも、根本には0と1の条件判断と加算の積み重ねがあります。

 

8. 正論理・負論理・実装上の注意点

論理回路を実際の装置や基板で扱うときは、真理値表だけでは不十分です。

信号が1のときに有効なのか、0のときに有効なのかを必ず確認します。

この確認を怠ると、安全条件や異常信号を逆に解釈してしまいます。

正論理と負論理を混同しない

高い電圧を1、有効状態を1として扱う考え方を正論理と呼びます。

反対に、低い電圧を有効状態として扱う考え方を負論理と呼びます。

負論理の信号は、信号名にバーを付けたり、末尾にNやBを付けたりして表すことがあります。

たとえばRESET_Nのような名前は、0になったときにリセットが有効になる信号を示します。

この種の信号を正論理のつもりで読むと、回路の動作を完全に逆に理解してしまいます。

図面やデータシートでは、信号名、否定記号、出力の丸を合わせて確認します。

CMOSとTTLでは電気的条件が違う

論理回路には、CMOSやTTLなどの種類があります。

どちらも0と1を扱いますが、入力電圧範囲、消費電力、出力電流、動作電圧が異なります。

同じANDゲートでも、ICシリーズが違えば接続できる電圧条件は変わります。

そのため、論理式だけでなく、実際の電気的仕様をデータシートで確認する必要があります。

出力が別のICの入力を確実に0または1として認識できるかを確認しましょう。

論理ICを選ぶときは、ゲートの種類だけでなく、入出力の電気的余裕も見ます。

入力しきい値、出力電流、ファンアウト、動作電源電圧が合っていないと、真理値表どおりに動かない場合があります。

同じ5V系に見えても、古いTTL入力とCMOS出力を組み合わせると、余裕が不足することがあります。

データシートでは、VIH、VIL、VOH、VOLのような項目を確認します。

これは、出力側が出した1や0を、入力側が確実に1や0として受け取れるかを確認するためです。

設備制御では信号の遅れも無視できないため、PLCスキャンタイムとは?応答遅れと短縮方法のように時間軸も合わせて考える必要があります。

未使用入力と遅延時間を放置しない

論理ICの未使用入力を浮かせたままにすると、入力が不定になり誤動作することがあります。

必要に応じて、未使用入力は規定の方法で0または1へ固定します。

また、ゲートにはわずかな伝搬遅延があります。

低速な回路では問題になりにくいですが、高速信号では遅延の積み重ねがタイミング不良になります。

複数の信号が異なる経路で届くと、一瞬だけ意図しない出力になることもあります。

未使用入力を固定するときは、単に近い電源へ接続すればよいわけではありません。

ICの種類によって、直接接続してよい場合と、抵抗を介して固定した方がよい場合があります。

また、プルアップ抵抗やプルダウン抵抗で状態を決める場合は、入力電流と周囲ノイズを考えて抵抗値を選びます。

値が大きすぎるとノイズに弱くなり、値が小さすぎると無駄な電流が増えます。

論理設計では真理値表、電気設計では電圧と電流、実機調整では波形確認というように、同じ信号を複数の視点で確認します。

論理が正しくても、電気的条件と時間条件を満たさなければ実機では安定しません。

 

9. まとめ

論理回路とは、0と1の入力をもとに、0か1の出力を決める回路です。

ANDはすべての条件がそろうと1、ORはいずれか一つで1、NOTは入力を反転します。

真理値表は、入力の組み合わせと出力を漏れなく整理するための表です。

NAND、NOR、XOR、XNORを理解すると、実際の回路図やICの動作を読みやすくなります。

ブール代数とド・モルガンの法則を使うと、論理式を整理し、回路を簡単にできます。

NANDとNORは万能ゲートであり、それだけを組み合わせて基本論理を作れます。

実務では、正論理・負論理、論理レベル、未使用入力、伝搬遅延まで確認することが大切です。

真理値表から論理式へ落とし込む力が、デジタル回路と制御設計の基礎になります。