排他的論理和の回路と計算方法は?3つの場合も解説!(論理回路・真理値表・3入力XOR・計算手順など)
「排他的論理和の回路ってどう作るの?3入力のXORはどう計算するの?」という疑問はデジタル回路を学んでいる方によく浮かぶ疑問のひとつです。
2入力のXORから3入力への拡張や具体的な計算手順がわかりにくいと感じる方も多いかもしれません。
本記事では、排他的論理和の回路と計算方法を、論理回路・真理値表・3入力XOR・計算手順を交えてわかりやすく解説します。
デジタル回路を学んでいる方や基本情報技術者試験・電子工作に取り組んでいる方にもきっと役立つ内容でしょう。
排他的論理和の回路と計算方法を正しく理解することで、加算器などの複雑な論理回路設計への理解が深まります。
XOR回路は「OR回路・AND回路・NOT回路の組み合わせで実現する論理回路」のこと
それではまず、XOR回路の基本的な構成と仕組みについて解説していきます。
XOR回路(排他的論理和回路)とは、2つの入力が異なる場合に1・同じ場合に0を出力する論理回路で、OR・AND・NOT(またはNAND)ゲートの組み合わせで実現できるでしょう。
XORゲートはデジタル回路の基本ゲートのひとつとして74HC86などのIC(集積回路)として提供されており、単体のゲートとして使用することができます。
XOR回路は半加算器・全加算器・パリティ生成回路・比較器など多くのデジタル回路の基本構成要素として重要な役割を果たしているでしょう。
XOR回路はNANDゲートのみで実装することもでき「4つのNANDゲートでXORを構成できる」という関係があります。NANDゲートが論理的に完全(すべての論理演算を実現できる)なゲートであることを示す重要な例のひとつです。
XOR回路の論理式と回路構成
XOR回路は以下の論理式で表現されます。
【XOR回路の論理式】
A ⊕ B = (A AND NOT B) OR (NOT A AND B)
【回路の構成要素】
① NOT A(Aのインバーター)
② NOT B(Bのインバーター)
③ AND①:A AND (NOT B)
④ AND②:(NOT A) AND B
⑤ OR:AND①の出力 OR AND②の出力
→ 5つのゲートでXORを実現
この構成から「Aが1でBが0(異なる)」または「Aが0でBが1(異なる)」の場合のみ1が出力されることがわかるでしょう。
XOR回路の真理値表と動作確認
| A | B | NOT A | NOT B | A AND (NOT B) | (NOT A) AND B | 出力(XOR) |
|---|---|---|---|---|---|---|
| 0 | 0 | 1 | 1 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 | 0 | 1 | 1 |
| 1 | 0 | 0 | 1 | 1 | 0 | 1 |
| 1 | 1 | 0 | 0 | 0 | 0 | 0 |
真理値表の各行の計算過程を追うことで、XOR回路がどのように動作するかの理解が深まるでしょう。
XORの計算方法
続いては、XOR演算の具体的な計算方法を確認していきます。
手順を体系的に理解することで、複数ビットのXOR計算もスムーズに行えるようになるでしょう。
1ビットのXOR計算
XOR計算の基本は「同じなら0・違うなら1」というシンプルなルールです。
【1ビットXORの計算】
0 ⊕ 0 = 0 (同じ)
0 ⊕ 1 = 1 (違う)
1 ⊕ 0 = 1 (違う)
1 ⊕ 1 = 0 (同じ)
複数ビットのXOR計算
複数ビットのXOR計算はビット単位で独立に計算します。
【4ビットのXOR計算例】
1010(10進数の10)
⊕ 1100(10進数の12)
= 0110(10進数の6)
【計算手順】
最上位ビット:1⊕1=0
次のビット:0⊕1=1
次のビット:1⊕0=1
最下位ビット:0⊕0=0
→ 結果:0110
各ビット位置で独立にXOR演算を行い、桁上がりは発生しない点が加算との大きな違いでしょう。
3入力XORの計算方法と回路
続いては、3つの入力を持つXOR(3入力XOR)の計算方法と回路構成を確認していきます。
3入力XORの理解はパリティチェック回路や加算器の設計で重要でしょう。
3入力XORの定義と真理値表
3入力XORは「奇数個の入力が1の場合に1を出力する」という性質を持ちます。
| 入力A | 入力B | 入力C | 出力A⊕B⊕C | 1の個数 |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0個(偶数) |
| 0 | 0 | 1 | 1 | 1個(奇数) |
| 0 | 1 | 0 | 1 | 1個(奇数) |
| 0 | 1 | 1 | 0 | 2個(偶数) |
| 1 | 0 | 0 | 1 | 1個(奇数) |
| 1 | 0 | 1 | 0 | 2個(偶数) |
| 1 | 1 | 0 | 0 | 2個(偶数) |
| 1 | 1 | 1 | 1 | 3個(奇数) |
「1の個数が奇数なら出力1・偶数なら出力0」というパターンは3入力以上のXORの重要な性質で、パリティ生成・誤り検出に活用されているでしょう。
3入力XORの計算手順
【3入力XORの計算手順】
A ⊕ B ⊕ C = (A ⊕ B) ⊕ C (左から順に計算)
【計算例:A=1・B=1・C=1の場合】
STEP1:A ⊕ B = 1 ⊕ 1 = 0
STEP2:(A ⊕ B) ⊕ C = 0 ⊕ 1 = 1
【計算例:A=1・B=0・C=1の場合】
STEP1:A ⊕ B = 1 ⊕ 0 = 1
STEP2:(A ⊕ B) ⊕ C = 1 ⊕ 1 = 0
3入力XORは2入力XORを2段階で計算することで求められ、XORの結合性(順序を変えても結果が同じ)から左から順に計算すれば良いでしょう。
XOR回路の主な応用例
| 応用回路 | XORの役割 |
|---|---|
| 半加算器 | 2進数の加算の下位ビット(和のビット)を計算 |
| 全加算器 | 桁上がりを含む2進数加算を2つのXORと2つのANDと1つのORで実現 |
| パリティ生成回路 | データビットのXOR演算でパリティビットを生成 |
| 比較器 | 2つのビット列をXORして一致・不一致を検出 |
| 疑似乱数生成器 | LFSRでXORを使って疑似乱数列を生成 |
XOR回路はデジタル回路設計の基礎から応用まで幅広く活用される重要なゲートでしょう。
まとめ
本記事では、排他的論理和の回路と計算方法について、論理回路の構成・真理値表・3入力XORの計算手順を交えながら解説しました。
XOR回路はOR・AND・NOT回路の組み合わせで実現され、2つの入力が異なる場合に1・同じ場合に0を出力する論理回路です。
複数ビットのXOR計算はビット単位で独立に計算し・3入力XORは「奇数個の入力が1の場合に1」という性質を持ち・2入力XORを2段階で適用することで計算できるでしょう。
半加算器・パリティ生成・比較器など多くのデジタル回路でXORが活用されており、デジタル回路設計の基礎として必須の知識となっています。
本記事が排他的論理和の回路と計算方法への理解を深め、デジタル回路学習や試験対策の実践に役立てば幸いです。