0

このブール関数を単純にすることは可能ですか

(!A*!B*!C) + (!A*!B*C*!D) + (A*!B*!C*D) + (A*!B*C*!D) + (A*B*!C*!D) 
4

2 に答える 2

2

私はこれを思いついた:

(!B*(!A*(!C+!D))+A*(C XOR D)) + (A*B*!C*!D)

見にくいですが、用語は少ないです。

于 2012-10-07T01:29:15.103 に答える
2

真理値表を見てください:

A B C D X
0 0 0 0 1
0 0 0 1 1
0 0 1 0 1
0 0 1 1 0
0 1 0 0 0
0 1 0 1 0
0 1 1 0 0
0 1 1 1 0
1 0 0 0 0
1 0 0 1 1
1 0 1 0 1
1 0 1 1 0
1 1 0 0 1
1 1 0 1 0
1 1 1 0 0
1 1 1 1 0

X = 1 の表の 3 つの部分を取り、これを 3 つの項の合計に単純化できるようです。

!A*!B*!(C*D) + A*!B*(C^D) + A*B*!C*!D

第 2 項で XOR (^) を使用していることに注意してください。XOR を使用できない場合は、第 2 項を少し拡張する必要があります。

!B項のいずれかまたはA2 つを因数分解することで、項の数をさらに減らすことができます。

!B*(!A*!(C*D) + A*(C^D)) + A*B*!C*!D

また:

!A*!B*!(C*D) + A*(!B*(C^D) + B*!C*!D)
于 2012-10-07T01:29:26.470 に答える