上一章中我們學習了如何用與非門實現其他邏輯門,但上節中的輸入信號始終為2,但在現實中,輸入的信號數量是不確定的,所以我們需要設計多輸入的門:
1.三路與非門(卡諾圖法)
我們還是從與非門開始,與非門的邏輯是有0為1,全1為0,據此畫出真值表:
A | B | C | S |
0 | 0 | 0 | 1 |
0 | 0 | 1 | 1 |
0 | 1 | 0 | 1 |
0 | 1 | 1 | 1 |
1 | 0 | 0 | 1 |
1 | 0 | 1 | 1 |
1 | 1 | 0 | 1 |
1 | 1 | 1 | 0 |
根據真值表得到卡諾圖:
AB\C | 0 | 1 |
00 | 1 | 1 |
01 | 1 | 1 |
11 | 1 | 0 |
10 | 1 | 1 |
卡諾圖是可以化簡的,其化簡原則如下:
若1的數量為2的次方數,且分布為一個矩形,就可以圈出那一片1,然后見將1對應的輸入值按位01相消。值得注意的是,卡諾圖是沒有邊界的,比如上圖可以這樣圈出其中的元素:
AB\C | 0 | 1 |
00 | 1 | 1 |
01 | 1 | 1 |
11 | 1 | 0 |
10 | 1 | 1 |
然后按位01一消得到:B(橙色圈剩余一個B非)和BC(藍色圈)以及ABC,可以得到一個公式:B+BC+ABC,則我們按公式即可以設計出三路與非門,但此時突然發現,我們在設計這個之前好像還需要一個三路與門,這如何是好?直接設計一個三路與門無疑十分簡單,但這就偏離了卡諾圖設計的初衷,變得沒有了邏輯的美感,此時,我們需要引入一個定律---德摩根律,該定理主要用于公式的化簡,可以一句話概括---長杠變短杠,開口變方向。其用于化簡公式,那么我們也可以用來構造公式,我們將ABC單獨取出,將其短桿變長杠,為(ABC)<紅括號代表整體再取一次反>,開口換方向(或非互換),得到(A+BC),代回原式B+BC+(A+BC),按該公式即可得到
,
上圖中為了美觀,已經將所有邏輯門進行封裝,N為非門,AND為與門,OR為或門,XOR為異或門,NXOR為同或門,下文也是如此。
2.三路與非門(靈活法)
當然,上文機械式的方法主打一手簡單但繁瑣,我們可以直接按門特性設計,三路與非門無非就是三路與門取反,而三路與門的特性也是有0為0,全1為1,那按特性,三路無非就是兩路的疊加罷了:
三路與非門:
3.三路或門
和三路與門類似,兩個或門疊加即可
4.其余門
或非門為三路或取非即可
異或門其邏輯為相同則為0,不同則為1,簡單疊加并不符合,但我們可以看出,三路與二路的區別在于多或了一路,所以將第一個門換為或門即可:
當然,用卡諾圖可以更好理解該思路。
同或門在異或門基礎上取反即可。