邏輯的世界 Logic 陳鍾誠 2006 年於金門 大綱 Outline Boolean Logic ( 布林邏輯 ) First-Order Logic ( 一階邏輯 )
4_布林代數與邏輯簡化 1...
Transcript of 4_布林代數與邏輯簡化 1...
-
邏輯設計
布林代數與邏輯簡化
王宏祺講師
Department of Computer and Communication Kun San University
Tainan , Taiwan , R.O.C.
Mar. 30, 2011
1
-
4-1 布林運算與表示式4-2 布林代數的定律與法則4-3 狄摩根定理4-4 邏輯電路的布林分析法4-5 利用布林代數來做簡化4-6 布林表示式的標準形式4-7 布林表示式與真值表
4-8 卡諾圖4-9 SOP卡諾圖簡化4-10 POS卡諾圖的簡化4-11 數位系統應用實例
2
-
布林加法運算
布林加法運算與OR運算等效,其基本法則與OR閘的
關係圖示如下:
邏輯電路中,和項是由OR運算所產生的,不含AND運算。
3
-
布林乘法運算
布林乘法和AND運算等效,其基本法則與AND閘的
關係圖示如下:
邏輯電路裡,積項是由AND運算所產生的,不含OR運算。
4
-
4-2 布林代數的定律與法則
應用加法與乘法的交換律。
應用加法與乘法的結合律。
應用分配律。
應用布林代數的12項基本運算法則。
5
-
布林代數定律
結合律 三個變數的加法結合律寫法如下:
A + (B + C) = (A + B) + C
三變數乘法結合律的寫法如下:
A(BC) = (AB)C
6
-
布林代數的運算法則
1. A0A 7. AAA
2. A11 8. 0A A
3. A00 9. A A 4. A1A 10. AABA
5. AAA 11. A AB A B
6. 1A A 12. (AB)(AC)ABC
A、B 或 C 可代表單變數或組合變數。
布林代數的基本法則
7
定律(1) 交換律:a. A+B = B+Ab. A.B = B.A
定律(2) 結合律:a. (A+B)+C=A+(B+C)b. (A.B).C=A.(B.C)
定律(3) 分配律:a. A.(B+C)=AB+ACb. A+(B.C)=(A+B).(A+C)c. (D+A).(B+C)=DB+DC+AB+AC
定律(4) 吸收律:a. A+AB=Ab. A+A'B=A+B
-
布林代數的運算法則
3. A 0 0
4. A 1 A
8
-
布林代數的運算法則
7. A A = A
8. 0A A
9
-
布林代數的運算法則
11. A AB A B
表4-3
10
-
4-3 狄摩根定理
狄摩根定理以數學方式證明了NAND和輸入反相的OR
閘以及NOR閘和輸入反相的AND閘之間的等效性。
11
-
4-3 狄摩根定理
12
-
4-3 狄摩根定理4-4
在表示式 和 中應用狄摩根定
理。
解:
例題一 在表示式 中應用狄摩根定理。
WXYZ W X Y Z
WXYZ W X Y Z
W X Y Z W X Y Z
W X Y Z
13
-
應用狄摩根定理
4-5
在下列各表示式中應用狄摩根定理:
(a) (b) (c)
解:
(a)設A + B + C = X, D = Y。表示式 屬於
的形式,可以寫成:
接著在 部分使用狄摩根定理。
( )A B C D ABC DEF AB CD EF
( )A B C D
XY X Y
( )A B C D A B C D
A B C
A B C D A B C D 14
-
應用狄摩根定理
例4-5(續)
(b)設ABC = X,DEF = Y。表示式 屬於
的形式,可寫成:
接著,在 和 兩項應用狄摩根定理。
ABC DEF
X Y X Y
( )( )ABC DEF ABC DEF
ABC DEF
( )( ) ( )( )ABC DEF A B C D E F
15
-
應用狄摩根定理
例4-5(續)
(c)設 , , EF = Z。表示式 屬於
的形式,可寫成:
接著,在 , , 各項應用狄摩根定理。
AB X CD Y AB CD EF
X Y Z X Y Z
( )( )( )AB CD EF AB CD EF
AB CD EF
( )( )( ) ( )( )( )AB CD EF A B C D E F
16
-
例題一
17
1.在下列各表示式中應用狄摩根定理:
-
應用狄摩根定理
4-7
XOR閘的布林表示式為 。以這個式子為起
點,利用狄摩根定理和其它適用法則,推導出XNOR閘
的表示式。
解:
解 由取XOR閘表示式的補數開始,再如下應用狄摩
根定理:
接著,應用分配律和法則 )。
AB AB
( )( ) ( )( ) ( )( )AB AB AB AB A B A B A B A B
8( 0)A A
( )( )A B A B AA A B AB BB A B AB 18
-
4-4 邏輯電路的布林表示式
19
例題二.寫出下圖各邏輯電路的布林表示式。
-
4-5 利用布林代數來做簡化4-8
利用布林代數化簡這項表示式:
AB + A(B + C) + B(B + C)
解:下列步驟並非唯一方法。
步驟1. 表示式的第2和第3項使用分配律,如下:
AB + AB + AC + BB + BC
步驟2. 第4項應用法則7 (BB = B)。
AB + AB + AC + B + BC
步驟3. 前兩項應用法則5 (AB + AB = AB)。
AB + AC + B + BC
20
-
4-5 利用布林代數來做簡化例4-8(續)
步驟4. 後兩項應用法則10 (B + BC = B)。
AB + AC + B
步驟5. 第1和第3項應用法則10 (AB + B = B)
B + AC
到這裡,表示式已經盡可能的簡化了。一旦學得應
用布林代數的經驗,您就可以將數個步驟一併處理。
21
-
例題二
22
2.利用布林代數,將下列表示式化簡:
-
4-5 利用布林代數來做簡化4-11
化簡下列布林表示式:
解:
步驟1. 第1項應用狄摩根定理。
步驟2. 兩小括弧內項應用狄摩根定理。
步驟3. 兩小括弧內項應用分配律。
AB AC A BC
( )( )AB AC A B C
( )( )A B A C A BC
A A A C A B B C A B C 23
-
4-5 利用布林代數來做簡化例4-11(續)
步驟4. 第1項應用法則 ,第3項和最後一項應
用法則10 。
步驟5. 第1項和第2項應用法則10 。
步驟6. 第1項和第2項應用法則10 。
7 ( )A A A
[ (1 ) ]A B A BC A B C A B
[ (1 ) ]A A C A C A
A A B B C [ (1 ) ]A A B A B A
A B C
24
-
4-5 利用布林代數來做簡化4-9
化簡下列布林表示式:
注意,中括弧和小括弧是一樣的:括弧內項要與括弧
外項相乘 ( 做AND運算 )。
解:
步驟1. 中括弧內項應用分配律。
步驟2. 小括弧內第2項應用法則8 。
[ ( ) ]AB C BD A B C
( )ABC ABBD A B C
( 0)BB
( 0 )ABC A D A B C 25
-
4-5 利用布林代數來做簡化例4-9(續)
步驟3. 小括弧內第2項應用法則3 (A 0 D = 0)。
步驟4. 小括弧內應用法則1 ( 除去0)。
步驟5. 應用分配律。
步驟6. 第1項應用法則7 (CC = C)。
( 0 )ABC A B C
( )ABC A B C
ABCC A BC
ABC A BC
26
-
4-5 利用布林代數來做簡化例4-9(續)
步驟7. 因式分解出 。
步驟8. 應用法則 。
步驟9. 應用法則4 ( 消去1)。
BC
( )BC A A
6 ( 1)A A
1BC
BC
27
-
例題三
28
3.利用布林代數,將下列表示式化簡:
-
積之和形式(SOP)
積項為由字母 ( 變數或其補數 ) 乘積 ( 布林乘法運算 )
所組成的項。當兩個以上的積項以布林加法運算執行加法
時,所得的表示式就是積之和 (sum-of-products, SOP)。
如下列各式:
AB ABC
ABC CDE BCD
AB ABC AC
29
-
積之和形式(SOP)
布林表示式的範圍 一般布林表示式的集合是指表示式中
所包含,不管是補數或非補數形式的變數組。例如,表示
式 的範圍合就是變數A、B、C,而表示式
的範圍就是A、B、C、D、E等變數。
實現SOP表示式
AB ABC
ABC CDE BCD
30
-
一般表示式轉換成SOP形成
4-12
將下列布林表示式轉換成SOP形式:
(a)AB + B(CD + EF) (b)(A + B)(B + C + D)
(c)
解:
(a)AB + B(CD + EF) = AB + BCD + BEF
(b)(A + B)(B + C + D) = AB + AC + AD + BB + BC + BD
(c)
( )A B C
( ) ( ) ( )A B C A B C A B C AC BC
31
-
例題四
32
4.將下列表示式轉換成積之和 (SOP) 的形式:
-
標準SOP形式
將積項轉換成標準SOP SOP表示式中的每個積項未必包
含範圍集合內所有變數,這些積項可以擴充成每個都包含
所有集合內變數或其補數的標準形式。
33
-
標準SOP形式
4-13
將下列布林表示式轉換成標準SOP形式:
解:此SOP表示式之範圍為A、B、C、D。一次處理一項
。第一項中少了變數D或 ,所以將第一項乘上 ,如下:
這樣就產生了兩個標準積項。
第二項, ,缺少了變數C或 和D或 ,所以先如下
將第二項乘上 :
ABC A B ABCD
ABC
D D D
( )ABC ABC D D ABCD ABCD
A B C D
C C
( )A B A B C C A B C A B C
34
-
標準SOP形式例4-13(續)
得到的兩個積項仍少了變數D或 ,所以將這兩項分別乘上
,如下:
這樣就得到四個標準積項。
第三項, ,已經是標準形式了。原表示式的標準
SOP形式如下:
D
D D( ) ( )A B A B C A B C A B C D D A B C D D
A B CD A B C D A B C D A B C D
ABCD
ABC A B ABCD ABCD ABCD A BCD A BCD A B CD A B C D ABCD
35
-
例題五
36
5.將問題22中的各SOP表示式轉換成標準SOP形式。( ) ( ) ( )a AB CD b ABD c A BD
-
標準SOP形式4-14
求出使下列標準SOP表示式等於1的二進位值:
解:
在A = 1, B = 1, C = 1且D = 1時,ABCD項會等於1。
ABCD = 1 1 1 1 = 1
在A = 1, , , D = 1時, 項等於1。
ABCD AB CD A B C D
1B 1C AB CD
1 0 0 1 1 1 1 1 1AB CD
37
-
標準SOP形式例4-14(續)
在 , , , 時, 項等於1。
這三個積項任一項或全部等於1時,SOP表示式就
等於1。
1A 1B 1C 1D A B C D
38
-
和之積形式
和項為由字母和 ( 布林加法 ) 所組成的項。兩個以上
的和項相乘時,所得的表示式就是和之積 (product-of-
sum, POS)。下列為其實例:
( )( )
( )( )( )
( )( )( )
A B A B C
A B C C D E B C D
A B A B C A C
39
-
標準POS形式
標準POS表示式是指範圍集合內的所有變數都會出現
在表示式的各個和項中。例如,
就是個標準POS表示式。( )( )( )A B C D A B C D A B C D
40
-
標準POS形式
4-15
將下列布林表示式轉換成標準POS形式:
解:此POS表示式範圍為A、B、C、D的集合。一次處理一
項。第一項 少了變數D或 ,所以加入 並應
用法則12,如下:
第二項 少了變數A或,所以加入並應用準則12
,如下:
( )( )( )A B C B C D A B C D
A B C D DD
( )( )A B C A B C DD A B C D A B C D
B C D
( )( )B C D B C D AA A B C D A B C D
41
-
標準POS形式例4-15(續)
第三項 已經是標準形式了。故原表示式
的標準POS形式如下:
A B C D
( )( )( )
( )( )( )( )( )
A B C B C D A B C D
A B C D A B C D A B C D A B C D A B C D
42
-
標準POS形式4-16
求出使下列標準POS表示式等於0的二進位變數值。
解:
在A = 0, B = 0, C = 0, D = 0時,A + B + C + D等於0。
A + B + C + D = 0 + 0 + 0 + 0 = 0
在A = 0, , , D = 0時, 。
( )( )( )A B C D A B C D A B C D
0B 0C 0A B C D
0 1 1 0 0 0 0 0 0A B C D
43
-
標準POS形式例4-16(續)
在A = 1, B = 1, C = 1, D = 1時, 。
上述三項中任一項等於0,就會使此POS表示式等於0。
0A B C D 1 1 1 1 0 0 0 0 0A B C D
44
-
將標準SOP轉換成標準POS4-17
將下列SOP表示式轉換成等效的POS表示式:
解:估算方式如下:
000 + 010 + 011 + 101 + 111此表示式的範圍集合含有三個變數,所以總共有8種
可能的組合。這個SOP表示式含有其中的5種,所以POS必定含有其它3種,即001,100,和110。記住,這些就是使和項為0的二進位值。其等效POS表示式為:
A B C ABC ABC ABC ABC
3(2 )
( )( )( )A B C A B C A B C
45
-
例題六
46
6.將下面各標準SOP表示式轉換成標準POS形式。( )
( )
( )
a ABC ABC ABC ABC
b ABC ABC ABC
c ABC ABC ABC
-
將SOP表示式轉換成真值表格式
4-18
建立標準SOP表示式 的真值表。
解:
此表示式有三個變數,所以變數的二進位值共有8
種可能組合,見表4-6左邊三個欄位。使表示式各積項等
於1的二進位值分別為: : 001; : 100;ABC
: 111。如表所示,在這幾個二進位值組合的輸出欄位中
填入1。其餘二進位組合的輸出欄位中則填入0。
A BC AB C ABC
A B C A B C
47
-
將SOP表示式轉換成真值表格式例4-18(續)
表4-6 輸入端 輸出端 A B C X 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1
48
-
例題七
49
7.做出下列各SOP表示式的真值表:
-
由真值表求出標準表示式
4-20
由表4-8的真值表求出標準SOP表示式,及其等效的
標準POS表示式。
表4-8 輸入端 輸出端 A B C X 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 1
50
-
例4-20(續)
由真值表求出標準表示式
解:
輸出欄位中共有四個1,其對應的二進位數為011
,100,110,和111。將這些二進位數如下轉換成積項:
得到輸出X的標準SOP表示式為:
011
100
110111
ABC
AB C
ABCABC
X ABC AB C ABC ABC
51
-
例4-20(續)
由真值表求出標準表示式
至於POS表示式,則看輸出為0的二進位數000,001,010,和101。將這些二進位數如下轉換成和項:
得到輸出X的標準POS表示式為:
000
001
010
101
A B C
A B C
A B C
A B C
( )( )( )( )X A B C A B C A B C A B C
52
-
4-8 卡諾圖
卡諾圖是有系統的簡化布林表示式的方法。
做出3、4個變數的卡諾圖。
求出卡諾圖中各單位的二進位值。
求出卡諾圖中各單位所代表的標準積項。
53
-
4個變數的卡諾圖
4個變數的卡諾圖是由16個小單位排列而成的。
54
-
4-9 SOP卡諾圖簡化
卡諾圖用於簡化布林表示式至其最簡形式。最小SOP
表示式含有最少數目之積項,每項中之變數亦為最少。
55
-
標準SOP表示式轉換至卡諾圖
4-21
將下列標準SOP表示式轉換成卡諾圖:
解:
將表示式如下換成二進位值。在圖4-24的3變數卡
諾圖中,代表表示式中各標準積項的方格內填入1。
A BC ABC ABC ABC
0 01 01 0 11 0 1 1 1A BC ABC ABC ABC
56
-
例4-21(續)
標準SOP表示式轉換至卡諾圖
圖4-24
57
-
將非標準SOP表示式轉換成卡諾圖
4-23將下列SOP表示式做成卡諾圖: 。
解:
很明顯,此SOP表示式並非標準形式,因為並非各
積項都有三個變數。第一項中少了兩個變數,第二項中
少了一個變數,第三項則是標準形式。先將各積項展開
成數字:
A AB ABC
000 1 00 1 1 0001 1 01010011
A AB ABC
58
-
將非標準SOP表示式轉換成卡諾圖例4-23(續)
對照所得的各個二進位數,在圖4-26之3變數卡諾圖
的適當方格內填入1。
圖4-26
59
-
SOP表示式的卡諾圖化簡法
將填1的項目分組 用圈出含有1的相鄰方格的方法,在卡
諾圖上將填有1的項目分組。此步驟的目的是要使同一組
的規模變大,使組數變少。
由卡諾圖求出最小的SOP表示式 當代表表示式中各標準
積項的1都適當的填於卡諾圖中,再經過分組後,就可以
開始進入求最小SOP表示式的步驟。
60
-
SOP表示式的卡諾圖化簡法
4-27
求出圖4-31各卡諾圖的積項,並寫出所得的最小
SOP表示式。
解:
圖4-31中已顯示出各組的最小積項。此圖中各卡諾
圖的最小SOP表示式分別為:
(a) (b)
(c) (d)AB BC A B C B A C AC
AB A C ABD D ABC BC
61
-
SOP表示式的卡諾圖化簡法例4-23(續)
62
-
SOP表示式的卡諾圖化簡法
4-29
利用卡諾圖將下列SOP表示式最小化:
解:第一項 必須擴展成 和 ,形成標
準SOP表示式,才能做成卡諾圖,將圖中含1的方格分組,
如圖4-33所示。
B C D ABC D ABC D A BCD ABCD A BCD ABCD ABCD ABCD
B C D AB C D A B C D
圖4-33
63
-
SOP表示式的卡諾圖化簡法例4-29(續)
注意所得兩組都有包捲式鄰接的情形。因為卡諾圖的最
外兩行中的方格相鄰接而形成8方格的一組。因為最上和最下
層方格相鄰,將其餘的兩個1拼湊起來便形成4方格的一組。
各組的積項都標示在圖上了,所得的最小SOP表示式為:
記住,最小表示式和原標準表示式是等效的。
D BC
64
-
例題八
65
A B C A BC ABC ( )AC B C ( ) ( )A BC BC A BC BC
A B C AB C ABC ABC
8.利用卡諾圖找出各表示式的最小SOP形式:
(a) (b) (c) (d)
-
4-10 POS卡諾圖的簡化
這一節的重點是放在POS表示式。 POS表示式卡諾圖
的方格內填的是代表標準和項的0。
66
-
將標準POS表示式做成卡諾圖
4-30
將下列標準POS表示式做成卡諾圖:
解:
如下將表示式各和項的二進位數算出,再將0填入
圖4-37的4變數卡諾圖中。
( )( )( )( )( )A B C D A B C D A B C D A B C D A B C D
1100 1011 0010 1( )( )( )(
111 0011)( )A B C D A B C D A B C D A B C D A B C D
67
-
將標準POS表示式做成卡諾圖例4-30(續)
圖4-37
68
-
POS表示式的卡諾圖簡化法
4-32
利用卡諾圖將下列POS表示式最小化:
解:
第一項必須先擴展成 和A + B + C + D形成
標準POS表示式。接著便做出卡諾圖,並對方格分組,如圖
4-39所示。圖中已顯示出各組和項,最後得到的最小POS表
示式為
記住,最小POS表示式與原標準POS表示式是等效的。
( )( )( )( )( )B 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 D A B C
69
-
POS表示式的卡諾圖簡化法例4-32(續)
圖4-39
70
-
例題九
71
( )( )( )A B C A B C A B C
( )( )( )( )X Y X Z X Y Z X Y Z
( )( )( )( )A B C A C A B C A B C
9.利用卡諾圖找出下列各表示式的最小POS形式:
(a)
(b)
(c)
-
4-11 數位系統應用實例
計數與控制系統中就用到七段顯示器。這些顯示器和
解BCD碼的邏輯電路併用,將適當的數字顯示在顯示器上
。
72
-
顯示段解碼邏輯
顯示段可用來表示不同的十進位數字,表4-9。
表4-9 各個十進位數字所要運作的顯示段
數 字 要顯示的段 0 a , b , c , d , e , f 1 b , c 2 a , b , d , e , g 3 a , b , c , d , g 4 b , c , f , g 5 a , c , d , f , g 6 a , c , d , e , f , g 7 a , b , c 8 a , b , c , d , e , f , g 9 a , b , c , d , f , g
73
-
顯示段解碼邏輯
表4-10 七段邏輯電路的真值表輸 入 段 輸 出 十進位
數字 D C B A a b c d e f g 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 1 0 1 1 0 0 0 0 2 0 0 1 0 1 1 0 1 1 0 1 3 0 0 1 1 1 1 1 1 0 0 1 4 0 1 0 0 0 1 1 0 0 1 1 5 0 1 0 1 1 0 1 1 0 1 1 6 0 1 1 0 1 0 1 1 1 1 1 7 0 1 1 1 1 1 1 0 0 0 0 8 1 0 0 0 1 1 1 1 1 1 1 9 1 0 0 1 1 1 1 1 0 1 1
10 1 0 1 0 X X X X X X X 11 1 0 1 1 X X X X X X X 12 1 1 0 0 X X X X X X X 13 1 1 0 1 X X X X X X X 14 1 1 1 0 X X X X X X X 15 1 1 1 1 X X X X X X X
輸出1 表示該段啟動 (on) 輸出0 表示該段不啟動 (off) 輸出X 表示“隨意項"
74
-
顯示段解碼邏輯
顯示段邏輯電路的布林表示式 利用真值表,便能寫出
各顯示段的標準SOP或POS表示式。例如,a段的標準
SOP表示式為:
e段的標準SOP表示式為:
a D C B A D CBA D CBA DCBA DCBA DCBA DC B A DC BA
e D C B A D CBA DCBA DC B A
75
-
顯示段解碼邏輯
多輸出邏輯閘的進一步簡化
76