
No.1ベストアンサー
- 回答日時:
4入力XOR は、回路が劇的には簡単にはならないように思えます。
AND/OR/NAND/NOT回路で構成できる回路はいろいろ考えられますが一般的な2入力の論理ICを使うなら以下の構成でしょうか。
(1) 10個のAND、5個のOR、4個のNOT
(2) 8個のAND、6個のNOR、1個のNAND、4個のNOT
(3) 15個のNANDと4個のNOT
ABCDのうち0が1個か3個の場合(あるいは 1が1個か3個の場合)だけ A×B×C×D(×をXORの記号とします)が 1 になります。1のブロックが左上と右下に固まるように書いたカルノー図は下のようになります。
CD
AB|00 11 01 10
―┼――――――
01│ 1 1 0 0
10│ 1 1 0 0
00│ 0 0 1 1
11│ 0 0 1 1
否定を小文字または NOT( ) で、論理積をA・B、論理和を A+B で表わせば、左上のブロックの論理式は
a・B・c・d + a・B・C・D + A・b・c・d + A・b・C・D = a・B・( c・d + C・D ) + A・b・( c・d + C・D ) = ( a・B + A・b )・( c・d + C・D )
であり、右下のブロックの論理式は
a・b・c・D + a・b・C・d + A・B・c・D + A・B・C・d = a・b・( c・D + C・d ) + A・B・( c・D + C・d ) = ( a・b + A・B )・( c・D + C・d )
です。したがって結果が 1 となるのはそれらの論理和で
A×B×C×D = ( a・b + A・B )・( C・d + c・D ) + ( A・b + a・B )・( c・d + C・D ) --- (1)
= NOT[ NOT{ NOT( a・b + A・B ) + NOT( C・d + c・D ) } ・ NOT{ NOT{ NOT( A・b + a・B ) + NOT( c・d + C・D ) } ] --- (2)
となります。式(1)を使った場合は、10個のAND、5個のOR、4個のNOTを使えば論理回路が構成できます。式(2)の場合は8個のAND、6個のNOR、1個のNAND、4個のNOTを使えば回路が構成できます。
さらに
a・b + A・B = NOT{ NOT( a・b )・NOT( A・B ) }
C・d + c・D = NOT{ NOT( C・d ・NOT( c・D ) }
A・b + a・B = NOT{ NOT( A・b )・NOT( a・B ) }
c・d + C・D = NOT{ NOT( c・d ・NOT( C・D ) }
なので
A×B×C×D = NOT【 NOT[ NOT{ NOT( a・b )・NOT( A・B ) }・NOT{ NOT( C・d ・NOT( c・D ) } ]・NOT[ NOT{ NOT( A・b )・NOT( a・B ) }・NOT{ NOT( NOT( c・d ・NOT( C・D ) } ] 】
と、15個の2入力NANDと4個のNOTを使っても回路を構成できます。この場合論理ICが2種類で済みます。以下にその回路を示します。回路が複雑なので2つに分けて描きました。
A ┬────────────── NAND ─── NAND ─ NAND ─ NAND ─
└ NOT ───────┐┌──┘ ┌┘ ┌─┘ ┌┘
B ┬──────────)┘┌── NAND ─┘ │ │
└ NOT ──────┐└─┘ ┌┘ │ │
└────┘ │ │
C ┬────────────── NAND ── NAND ┘ │
└ NOT ─────┐ ┌──┘ ┌┘ │
D ┬────────)── )──- NAND -─┘ │
└ NOT ─────-)──┘ ┌┘ │
└────┘ │
│
A ┬────────────── NAND ─── NAND ─ NAND ┘
└ NOT ──────┐ ┌──┘ ┌┘ ┌┘
B ┬─────────)─)─── NAND ─┘ │
└ NOT ────── )─┘ ┌─┘ │
└──┘ │
C ┬────────────── NAND ─── NAND ┘
└ NOT ─────┐ ┌──┘ ┌┘
D ┬────────)──┘┌─- NAND -─┘
└ NOT ─────-)───┘ ┌┘
└────┘
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ( A xor B ) xor B = A となることを論理演算表で完成させてください。
- [至急] Project Euler: #15 Lattice paths コード、入力、出力、解説
- [至急] Project Euler:#16 Power digit sumコード、入力、出力、解説
- 進数の計算について質問です。 16進数のxorだったら0x7fffと0x8000の計算はどうなります
- 簡単な絵が描けるソフト(wordに挿入)
- [至急]Project Euler:#13Large sum コード、入力、出力、解説
- Android携帯のキーボード入力で時間入力を簡単にしたい
- エクセルで、未来の月の数値を表示させないようにしたい
- お気に入りやブックマークの整理はどうやったら上手く行きますか?目的のサイトがすぐに探せません
- シーケンスプログラムで。
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
加算回路をMIL記号を用い図示せ...
-
トランジスタを用いた増幅回路...
-
400V 3相4線式について...
-
近接スイッチの2線式と3線式...
-
EVT(GPT)の電圧比について
-
NPNとPNPの違いについて
-
オペアンプ/反転増幅器/頭打ち
-
JKフリップフロップを用いた6進...
-
同一電圧値、異なる電源供給源...
-
触れるだけタッチライトのしくみ
-
8ビット電文出力とはどんな信号?
-
直流負荷線ってなんですかね、 ...
-
電気設備で使われるGCの意味...
-
電圧利得の求め方について
-
流量計のパルス出力について
-
オシロの入力インピーダンスに...
-
なぜ、RS-FF回路がチャタリング...
-
FM検波回路を9種類調べています。
-
三角波の頂点がゆがむ理由(積分...
-
全波整流回路では順方向電圧降...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
クランプ回路
-
400V 3相4線式について...
-
近接スイッチの2線式と3線式...
-
NPNとPNPの違いについて
-
オペアンプ/反転増幅器/頭打ち
-
パルスとレベルについて
-
論理回路が実際に使われている例
-
EVT(GPT)の電圧比について
-
リップルについて
-
電気設備で使われるGCの意味...
-
ハイパスフイルタが微分回路に...
-
ボルテージフォロワの役割がよ...
-
ハートレーとコルピッツ発振回...
-
WORDに論理回路図を書く
-
同一電圧値、異なる電源供給源...
-
直流負荷線ってなんですかね、 ...
-
電気回路のπ型回路の2端子対回...
-
トランジスタ出力のひずみについて
-
利得と増幅率
-
周波数特性の理論値を求めるには?
おすすめ情報