Digital-circuits-boolean-algebra
デジタル回路-ブール代数
- ブール代数*は、2進数と2進変数を扱う代数です。 したがって、バイナリ代数または論理代数とも呼ばれます。 ジョージブールという数学者が1854年にこの代数を開発しました。 この代数で使用される変数は、ブール変数とも呼ばれます。
ロジック「High」に対応する電圧の範囲は「1」で表され、ロジック「Low」に対応する電圧の範囲は「0」で表されます。
ブール代数の仮定と基本法則
このセクションでは、ブール代数で使用されるブール仮説と基本法則について説明します。 これらはブール関数を最小化するのに役立ちます。
ブール仮説
2進数の0と1、ブール変数(x)、およびその補数(x ’)を考えます。 ブール変数またはその補数は*リテラル*として知られています。 これらのリテラルと2進数の間で可能な4つの*論理OR *操作を以下に示します。
x 0 = x
x + 1 = 1
x + x = x
x + x ’= 1
同様に、これらのリテラルと2進数の間で可能な4つの*論理AND *演算を以下に示します。
x.1 = x
x.0 = 0
x.x = x
x.x ’= 0
これらは、単純なブール仮説です。 ブール変数を「0」または「1」に置き換えることで、これらの仮定を簡単に検証できます。
注-ブール変数の補数の補数は、変数自体に等しくなります。 つまり、(x ’)’ = x。
ブール代数の基本法則
以下は、ブール代数の3つの基本法則です。
- 可換法
- 連想法
- 分配法
可換法
2つのブール変数の論理演算が、これら2つの変数の順序に関係なく同じ結果を与える場合、その論理演算は*可換*と呼ばれます。 2つのブール変数xおよびyの論理ORおよび論理AND演算を以下に示します
x + y = y + x
x.y = y.x
記号「+」は、論理和演算を示します。 同様に、記号「。」は論理AND演算を示し、表すのはオプションです。 可換法則は、論理ORおよび論理AND演算に従います。
連想法
任意の2つのブール変数の論理演算が最初に実行され、残りの変数で同じ演算が実行されて同じ結果が得られる場合、その論理演算は*結合*と呼ばれます。 3つのブール変数x、yおよびzの論理ORおよび論理AND演算を以下に示します。
x (y + z)=(x + y) z
x。(y.z)=(x.y).z
連想法は、論理ORおよび論理AND演算に従います。
分配法
ブール関数に存在するすべての用語に論理演算を分散できる場合、その論理演算は Distributive と呼ばれます。 3つのブール変数x、yおよびzの論理ORおよび論理AND演算の分布を以下に示します。
x。(y + z)= x.y + x.z
x +(y.z)=(x + y)。(x + z)
分配法は、論理ORおよび論理AND演算に従います。
これらはブール代数の基本法則です。 ブール変数を「0」または「1」に置き換えることで、これらの法則を簡単に検証できます。
ブール代数の定理
ブール代数では次の2つの定理が使用されます。
- 双対定理
- デモルガンの定理
双対定理
この定理は、ブール関数の dual は、論理AND演算子を論理OR演算子と交換し、ゼロを1と交換することによって得られることを示しています。 ブール関数ごとに、対応するデュアル関数があります。
ブール仮説と基本法則のセクションで説明したブール方程式(関係)を2つのグループに分けましょう。 次の表に、これら2つのグループを示します。
Group1 | Group2 |
---|---|
x + 0 = x | x.1 = x |
x + 1 = 1 | x.0 = 0 |
x + x = x | x.x = x |
x + x’ = 1 | x.x’ = 0 |
x + y = y + x | x.y = y.x |
x + (y + z) = (x + y) + z | x.(y.z) = (x.y).z |
x.(y + z) = x.y + x.z | x + (y.z) = (x + y).(x + z) |
各行には2つのブール方程式があり、それらは互いに双対です。 双対定理を使用して、Group1とGroup2のこれらすべてのブール方程式を検証できます。
デモルガンの定理
この定理は、*ブール関数の補数*を見つけるのに役立ちます。 これは、少なくとも2つのブール変数の論理ORの補数が、各補変数の論理ANDと等しいことを示しています。
2つのブール変数xとyを含むDeMorganの定理は、
(x + y) ’= x’.y’
上記のブール関数の双対は
(x.y) ’= x’ + y ’
したがって、2つのブール変数の論理ANDの補数は、各補変数の論理ORと等しくなります。 同様に、2つ以上のブール変数にもDeMorganの定理を適用できます。
ブール関数の簡素化
ここまで、ブール代数の仮定、基本法則、定理について説明しました。 次に、いくつかのブール関数を単純化します。
例1
ブール関数を*単純化*しましょう。f= p’qr + pq’r + pqr ’+ pqr
この関数は2つの方法で単純化できます。
- 方法1 *
ブール関数を指定すると、f = p’qr + pq’r + pqr ’+ pqr。
- ステップ1 *-第1項と第2項ではrが共通であり、第3項と第4項ではpqが共通です。 したがって、*分配法*を使用して一般的な用語を使用します。
⇒f =(p’q + pq ’)r + pq(r’ + r)
ステップ2 *-最初の括弧内の用語は、Ex-OR操作に簡略化できます。 2番目の括弧内にある用語は、 *Boolean postulate を使用して「1」に簡略化できます。
⇒f =(p⊕q)r + pq(1)
ステップ3 *-最初の用語はこれ以上簡略化できません。 ただし、2番目の項は *Boolean postulate を使用してpqに簡略化できます。
⇒f =(p⊕q)r + pq
したがって、単純化されたブール関数は f =(p⊕q)r + pq です
- 方法2 *
与えられたブール関数、f = p’qr + pq’r + pqr ’+ pqr。
ステップ1 *-*ブール式、x + x = xを使用します。 つまり、ブール変数を「n」回使用した論理OR演算は、同じ変数に等しくなります。 したがって、最後の項pqrをさらに2回書くことができます。
⇒f = p’qr + pq’r + pqr ’+ pqr + pqr + pqr
- ステップ2 *-1 ^ st ^と4 ^ th ^の項、2 ^ nd ^と5 ^ th ^の項、3 ^ rd ^と6 ^ th ^の項に*分布則*を使用します。
⇒f = qr(p´+ p)+ pr(q´+ q)+ pq(r´+ r)
ステップ3 *-各括弧内に存在する用語を簡略化するために、 *Boolean postulate 、x + x ’= 1を使用
⇒f = qr(1)+ pr(1)+ pq(1)
ステップ4 *-上記の3つの用語を簡略化するために *Boolean postulate 、x.1 = xを使用します。
⇒f = qr + pr + pq
⇒f = pq + qr + pr
したがって、簡略化されたブール関数は f = pq + qr + pr です。
したがって、各メソッドで指定されたブール関数を単純化した後、2つの異なるブール関数を取得しました。 機能的には、これら2つのブール関数は同じです。 したがって、要件に基づいて、これら2つのブール関数のいずれかを選択できます。
例2
ブール関数の「補数」、f = p’q + pq ’を見つけましょう。
ブール関数の補数はf ’=(p’q + pq’) ’です。
- ステップ1 *-DeMorganの定理(x + y) '= x'.y’を使用します。
⇒f ’=(p’q)’。(pq ’)’
- ステップ2 *-DeMorganの定理を使用して、(x.y) ’= x’ + y ’
⇒f´= \ {(p´) ´+ q´}。\ {p´+(q´)´}
*Step3* -ブール仮説(x ’)’ = xを使用します。
⇒f´= \ {p + q´}。\ {p´+ q}
⇒f ’= pp’ + pq + p’q ’+ qq’
- ステップ4 *-ブール仮説、xx ’= 0を使用します。
⇒f = 0 + pq + p’q ’+ 0
⇒f = pq + p’q ’
したがって、ブール関数の「補数」であるp’q + pq ’は pq + p’q’ です。