1. 程式人生 > 其它 >數電基礎(三)---邏輯代數

數電基礎(三)---邏輯代數

介紹邏輯代數中基本的邏輯運算,基本公式,常用公式和基本定理。

邏輯閘

簡單的邏輯閘

邏輯代數的基本運算有與(AND),或(OR),非(NOT)三種。

“與”門

只有決定事物結果的全部條件同時具備時,結果才發生,這種因果關係稱為邏輯與,或者稱邏輯相乘。
邏輯真值表為

A B Y
0 0 0
0 1 0
1 0 0
1 1 1

其中\(A\),\(B\)為輸入,\(Y\)為輸出。
在邏輯代數中,以“\(\cdot\)”表示與運算。
\(A\)\(B\)進行與邏輯運算時可以寫成

\[Y = A \cdot B \]

表示符號為

為了簡化書寫,允許將\(A\cdot B\)簡寫成\(AB\)

,略去邏輯相乘的運算子號“\(\cdot\)”。

"或"門

在決定事物結果的諸條件中只要有任何一個滿足,結果就會發生,這種因果關係稱為邏輯或,或者稱邏輯相加。
邏輯真值表為

A B Y
0 0 0
0 1 1
1 0 1
1 1 1

其中\(A\),\(B\)為輸入,\(Y\)為輸出。
在邏輯代數中,以“\(+\)”表示或運算。
\(A\)\(B\)進行或邏輯運算時可以寫成

\[Y = A + B \]

表示符號為

"非"門

只要條件具備了,結果就不會發生,而條件不具備時,結果就一定發生,這種因果關係稱為邏輯非,或者稱邏輯相反。
邏輯真值表為

A Y
0 1
1 0

其中\(A\)為輸入,\(Y\)為輸出。
在邏輯代數中,以“\(\prime\)”表示非運算。
\(A\)進行非邏輯運算時可以寫成

\[Y = A^{\prime} \]

表示符號為

複合邏輯閘

最常見的複合邏輯運算有與非(NAND),或非(NOR),與或非(AND-NOR),異或(EXCLUSIVE OR),同或(EXCLUSIVE NOR)等。

“與非”門

與非操作,將\(A\),\(B\)先進行與運算,然後將結果求反,最後得到的即為\(A\),\(B\)的與非運算結果。(先與後非)
邏輯真值表

A B Y
0 0 1
0 1 1
1 0 1
1 1 0

其中\(A\),\(B\)為輸入,\(Y\)為輸出。
\(A\)\(B\)進行與非邏輯運算時可以寫成

\[Y = (A \cdot B)^{\prime} \]

表示符號為

實際上可以把與非運算看作是與運算和非運算的組合,圖形符號上的小圓圈表示非運算。(後面會提到,可以將影象上的小圓圈看成一個非門)

"或非"門

或非操作,將\(A\),\(B\)先進行或運算,然後將結果求反,最後得到的即為\(A\),\(B\)的或非運算結果。(先或後非)
邏輯真值表

A B Y
0 0 1
0 1 0
1 0 0
1 1 0

其中\(A\),\(B\)為輸入,\(Y\)為輸出。
\(A\)\(B\)進行或非邏輯運算時可以寫成

\[Y = (A + B)^{\prime} \]

表示符號為

實際上可以把或非運算看作是或運算和非運算的組合,圖形符號上的小圓圈表示非運算。

"異或"門

異或是這樣一種邏輯關係,當A,B不同時,輸出Y為1,當A,B相同時,輸出Y為0。

邏輯真值表

A B Y
0 0 0
0 1 1
1 0 1
1 1 0

其中\(A\),\(B\)為輸入,\(Y\)為輸出。
在邏輯代數中,以“ \(\oplus\)”表示異或運算。

\(A\)\(B\)進行異或邏輯運算時可以寫成

\[Y =A \oplus B= A \cdot B^{\prime} + A ^{\prime} \cdot B \]

表示符號為

"同或"門

同或的邏輯關係,當A,B相同時,輸出Y為1,當A,B不同時,輸出Y為0。

邏輯真值表

A B Y
0 0 1
0 1 0
1 0 0
1 1 1

其中\(A\),\(B\)為輸入,\(Y\)為輸出。
在邏輯代數中,以“\(\odot\)”表示與運算。

\(A\)\(B\)進行同或邏輯運算時可以寫成

\[Y = A \odot B=A \cdot B + A^{\prime} \cdot B^{\prime} \]

表示符號為


從上面我們可以看出異或和同或互為反運算

\[A \oplus B =(A \odot B)^{\prime} \\A \odot B = (A \oplus B)^{\prime} \]

"與或非"門

與或非邏輯,A,B之間以及C,D之間都是與的關係,只要A,B或C,D任何一組同時為1,輸出Y就是0,只有當每一組輸入都不全是1時,輸出Y才時1。(兩兩先求或,再求與,再求非)
邏輯真值表

A B C D Y
0 0 0 0 1
0 0 0 1 1
0 0 1 0 1
0 0 1 1 0
0 1 0 0 1
0 1 0 1 1
0 1 1 0 1
0 1 1 1 0
1 0 0 0 1
1 0 0 1 1
1 0 1 0 1
1 0 1 1 0
1 1 0 0 0
1 1 0 1 0
1 1 1 0 0
1 1 1 1 0

其中\(A\),\(B\),\(C\),\(D\)為輸入,\(Y\)為輸出。
\(A\),\(B\),\(C\),\(D\)進行與或非邏輯運算時可以寫成

\[Y = (A \cdot B+ C \cdot D)^{\prime} \]

表示符號為

邏輯公式

基本邏輯公式

布林恆等式

\[0 \cdot A = 0 \]\[1^{\prime} = 0 ; 0^{\prime} = 1 \]\[1\cdot A =A \]\[1\cdot A =A \]\[1+A=1 \]\[A \cdot A= A \]\[0+A=A \]\[A\cdot A^{\prime}=0 \]\[A+A=A \]\[A\cdot B = B\cdot A \]\[A+A^{\prime}=1 \]\[A\cdot(B\cdot C)=(A \cdot B)\cdot C \]\[A+B=B+A \]\[A\cdot(B+C)=A\cdot B + A \cdot C \]\[A+(B+C)=(A+B)+C \]\[(A \cdot B)^{\prime}=A^{\prime}+B^{\prime} \]\[A+B\cdot C = (A+B)\cdot (A+C) \]\[(A^{\prime})^{\prime}=A \]\[(A+B)^{\prime}=A^{\prime}\cdot B^{\prime} \]

注意\((A+B)^{\prime} \neq A^{\prime} + B^{\prime}\)
舉個非常簡單的例子,假設\(A = 1;B=0;\)帶入到上式裡面,\(0 \neq 1\),涉及到邏輯函式括號的展開,嚴格按照公式來!!!

常用邏輯公式

1,

\[A+A\cdot B=A \]

證明:

\[A+A \cdot B = A \cdot (1+B)=A \cdot 1=A \]

2,

\[A+A^{\prime}\cdot B = A+A \cdot B+A^{\prime} \cdot B=A+(A+A^{\prime})\cdot B=A+B \]

證明:

\[A+A^{\prime}\cdot B = A+A \cdot B+A^{\prime} \cdot B=A+(A+A^{\prime})\cdot B=A+B \]

3,

\[A\cdot B + A \cdot B^{\prime}=A \]

證明:

\[A \cdot B + A \cdot B^{\prime} = A \cdot (B + B^{\prime})=A \]

4,

\[A \cdot (A+B)=A \]

證明:

\[A \cdot (A+B)=A \cdot A+A \cdot B=A + A \cdot B = A \cdot(1+B)=A \]

5,

\[A\cdot B + A^{\prime}\cdot C+B\cdot C = A\cdot B + A^{\prime} \cdot C \]

證明:

\[A \cdot B + A^{\prime} \cdot C+ B \cdot C \\=A \cdot B +A^{\prime} \cdot C + B\cdot C(A+A^{\prime}) \\=A \cdot B +A^{\prime} \cdot C+A \cdot B \cdot C + A^{\prime} \cdot B \cdot C \\=A \cdot B \cdot(1 +C)+A^{\prime }\cdot C \cdot (B+1) \\=A \cdot B +A^{\prime} \cdot C \]

6,

\[A \cdot B+A^{\prime}\cdot C+BCD=A\cdot B +A^{\prime} \cdot C \]

證明:

\[A \cdot B+A^{\prime}\cdot C+BCD \\=A \cdot B+ A^{\prime} \cdot C +B \cdot C \cdot D \cdot (A + A^{\prime}) \\=A \cdot B +A^{\prime} \cdot C + A \cdot B \cdot C \cdot D +A^{\prime} \cdot B \cdot C \cdot D \\=A \cdot B \cdot (1 + C\cdot D)+A^{\prime} \cdot C \cdot(1+ B\cdot D) \\=A \cdot B + A^{\prime} \cdot C \]

7,

\[A \cdot (A\cdot B)^{\prime}=A\cdot B^{\prime};A^{\prime}\cdot(A \cdot B)^{\prime}=A^{\prime} \]

證明:

\[A \cdot (A\cdot B)^{\prime}=A\cdot(A^{\prime}+B^{\prime})=A \cdot A^{\prime}+A \cdot B^{\prime}=A \cdot B^{\prime} \\A^{\prime}\cdot(A \cdot B)^{\prime}=A^{\prime} \cdot (A^{\prime} +B^{\prime})=A^{\prime} \cdot A^{\prime}+A^{\prime}\cdot B^{\prime}=A^{\prime} +A^{\prime} \cdot B^{\prime}=A^{\prime} \cdot (1+ B^{\prime})=A^{\prime} \]

邏輯代數的基本定理

代入定理

在任何一個包含變數\(A\)的邏輯等式中,若以另外一個邏輯式代入式中所有\(A\)的位置,則等式仍然成立。這就是代入定理
因為\(A\)的取值無非就是\(0\)\(1\),而邏輯式的結果也只有\(0\)\(1\)兩種情況,所以代入進去自然也成立。

反演定理

對於任意一個邏輯式\(Y\),若將其中所有的"\(\cdot\)"換成"\(+\)"","\(+\)"換成"\(\cdot\)",\(0\)換成\(1\)\(1\)換成\(0\),原變數換成反變數,反變數換成原變數,則得到的結果就是\(Y^{\prime}\),這個規律稱為反演定理
反演定理需要注意兩個規則:
1,需遵守“先括號,然後乘,最後加的運算優先順序
2,不屬於單個變數上的反號應保持不變。

舉個例子:

\[Y=((AB^{\prime}+C)^{\prime}+D)^{\prime}+C\\ Y^{\prime}=(((A^{\prime}+B)C^{\prime})^{\prime}D^{\prime})^{\prime}C^{\prime} \]

對偶定理

對偶式:對於任何一個邏輯式\(Y\),若將其中的“\(\cdot\)”換成“\(+\)”,"\(+\)"換成“\(\cdot\)”,\(0\)換成\(1\)\(1\)換成\(0\),則得到一個新的邏輯式\(Y^{D}\),這個\(Y^{D}\)就稱為\(Y\)的對偶式,或者說\(Y\)\(Y^{D}\)互為對偶式。
如果兩邏輯式相等,則它們的對偶式也相等,這就是對偶定理

如果直接證明兩個邏輯式相等不好證,可以考慮證明他們的對偶式相等。