第 6章 门电路与逻辑代数
学习要点
?了解数字电路的特点以及数制和编
码的概念
?掌握与门、或门、与非门、异或门
的逻辑符号、逻辑功能和表示方法
?了解 TTL和 CMOS门电路的特点以及
三态门的概念
?掌握逻辑代数的基本运算法则、基
本公式、基本定理和化简方法
?能够熟练地运用真值表、逻辑表达
式、波形图和逻辑图表示逻辑函数
第 6章 门电路与逻辑代数
?6.1 数字电路概述
?6.2 分立元件门电路
?6.3 集成门电路
?6.4 逻辑代数
6.1 数字电路概述
6.1.1 数字信号与数字电路
模拟信号:在时间上和
数值上连续的信号。
数字信号:在时间上和
数值上不连续的(即离
散的)信号。
uu
模拟信号波形 数字信号波形
t t
对模拟信号进行传输、
处理的电子线路称为
模拟电路。
对数字信号进行传输、
处理的电子线路称为
数字电路。
( 1)工作信号是二进制的数字信号,在时
间上和数值上是离散的(不连续),反
映在电路上就是低电平和高电平两种状
态(即 0和 1两个逻辑值)。
( 2)在数字电路中,研究的主要问题是电
路的逻辑功能,即输入信号的状态和输
出信号的状态之间的逻辑关系。
( 3)对组成数字电路的元器件的精度要求
不高,只要在工作时能够可靠地区分 0和
1两种状态即可 。
数字电路的特点
( 1)进位制:表示数时,仅用一位数码往往不够用,必
须用进位计数的方法组成多位数码。多位数码每一位的
构成以及从低位到高位的进位规则称为进位计数制,简
称进位制。
6.1.2 数制及其转换
( 2)基 数:进位制的基数,就是在该进位制中可能用到
的数码个数。
( 3) 位 权(位的权数):在某一进位制的数中,每一位
的大小都对应着该位上的数码乘上一个固定的数,这个固
定的数就是这一位的权数。权数是一个幂。
一、数制
数码为,0~ 9;基数是 10。
运算规律:逢十进一,即,9+ 1= 10。
十进制数的权展开式:
1、十进制
5 5 5 5
5 × 10 3 =5000
5 × 10 2 = 500
5 × 10 1 = 50
5 × 10 0 = 5
=5555
103,102,101,100称
为十进制的权。各数
位的权是 10的幂。
同样的数码在不同的数
位上代表的数值不同。
+
任意一个十进制数都
可以表示为各个数位
上的数码与其对应的
权的乘积之和,称权
展开式。
即,(5555)10= 5× 103 + 5× 102+ 5× 101+ 5× 100
又如,(209.04)10= 2× 102 + 0× 101+ 9× 100+ 0× 10- 1+ 4 × 10- 2
2、二进制
数码为,0,1;基数是 2。
运算规律:逢二进一,即,1+ 1= 10。
二进制数的权展开式:
如,(101.01)2= 1× 22 + 0× 21+ 1× 20+ 0× 2- 1+ 1 × 2- 2
= (5.25)10
加法规则,0+0=0,0+1=1,1+0=1,1+1=10
乘法规则,0.0=0,0.1=0, 1.0=0,1.1=1
运算
规则
各数位的权是2的幂
二进制数只有 0和 1两个数码,它的每一位都可以用电子元
件来实现,且运算规则简单,相应的运算电路也容易实现。
3、十六进制
数码为,0~ 9,A~ F;基数是 16。
运算规律,逢十六进一,即,F+ 1= 10。
十六进制数的权展开式:
如,(D8.A)2= 13× 161 + 8× 160+ 10 × 16- 1= (216.625)10
各数位的权是 16的幂
二、数制转换
1、二进制数与十六进制数的相互转换
1 1 1 0 1 0 1 0 0, 0 1 10 0 0 0 = (1D4.6)16
= 1010 1111 0100, 0111 0110(AF4.76)16
二进制数与十六进制数的相互转换,按照 每 4位二进制数
对应于一位十六进制数 进行转换。
2 44 余数 低位
2 22 ……… 0= K
0
2 11 ……… 0= K
1
2 5 ……… 1= K
2
2 2 ……… 1= K
3
2 1 ……… 0= K
4
0 ……… 1= K
5
高位
十进制整数转换为二进制采用 除基取余法,先得到的余数
为低位,后得到的余数为高位。
所以,(44)10= (101100)2
2、十进制数转换为二进制数
几种进制数之间的对应关系
十进制数 二进制数 八进制数 十六进制数
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 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
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
用一定位数的二进制数来表示十进制数码、字母、符
号等信息称为 编码 。
用以表示十进制数码、字母、符号等信息的一定位数的
二进制数称为 代码 。
数字系统只能识别 0和 1,怎样才能表示更多的数码、符
号、字母呢?用编码可以解决此问题。
二 -十进制代码:用 4位二进制数 b3b2b1b0来表示十进
制数中的 0 ~ 9 十个数码。简称 BCD码。
2421码的权值依次为 2,4,2,1;余 3码由 8421码加 0011
得到;格雷码是一种循环码,其特点是任何相邻的两个码字,
仅有一位代码不同,其它位相同。
用四位自然二进制码中的前十个码字来表示十进制数码,
因各位的权值依次为 8,4,2,1,故称 8421码。
6.1.3 编码
常用 B C D 码
十进制数 8421 码 余 3 码 格雷码 2421 码 5421 码
0
1
2
3
4
5
6
7
8
9
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
0000
0001
0011
0010
0110
0111
0101
0100
1100
1101
0000
0001
0010
0011
0100
1011
1100
1101
1110
1111
0000
0001
0010
0011
0100
1000
1001
1010
1011
1100
权 8421 2421 5421
6.2 分立元件门电路
获得高、低电平的基本方法:利用半导
体开关元件的导通、截止(即开、关)两种
工作状态。
逻辑 0和 1,电子电路中用高、低电平来
表示。
逻辑门电路:用以实现基本和常用逻辑
运算的电子电路。简称门电路。
基本和常用门电路有与门、或门、非门
(反相器)、与非门、或非门、与或非门和
异或门等。
6.2.1 与逻辑和与门电路
当决定某事件的全部条件同时具备时,结
果才会发生,这种因果关系叫做 与逻辑 。
实现与逻辑关系的电路称为 与门 。
+ U
CC
(+ 5V )
R
F
D
1
A
D
2
B
3V
0V
A
B
F
&
u
A
u
B
u
F
D
1
D
2
0V 0V
0V 3 V
3 V 0V
3 V 3 V
0V
0V
0V
3V
导通 导通
导通 截止
截止 导通
截止 截止
A B F
0 0
0 1
1 0
1 1
0
0
0
1
F=AB
与门的逻辑功能可概括为:输入有 0,输出为 0;
输入全 1,输出为 1。
F=AB
逻辑与(逻辑乘)的 运算规则 为:
111 001 010 000 ????????
A
B
C
F
与门的输入端可以有多个。下图为一个三输入与门电路
的输入信号 A,B,C和输出信号 F的波形图。
在决定某事件的条件中, 只要任一条件
具备, 事件就会发生, 这种因果关系叫
做 或逻辑 。
实现或逻辑关系的电路称为 或门 。
6.2.2 或逻辑和或门电路
A
D
1
B
D
2
3 V
0V
F
R
A
B
F
≥ 1
u
A
u
B
u
F
D
1
D
2
0V 0V
0V 3 V
3V 0V
3V 3V
0V
3V
3V
3V
截止 截止
截止 导通
导通 截止
导通 导通
A B F
0 0
0 1
1 0
1 1
0
1
1
1
F=A+B
或门的逻辑功能可概括为:输入有 1,输出为 1;
输入全 0,输出为 0。
F=A+B
逻辑或(逻辑加)的 运算规则 为:
111 001 010 000 ????????
或门的输入端也可以有多个。下图为一个三输入或门电
路的输入信号 A,B,C和输出信号 F的波形图。
A
B
C
F
决定某事件的条件只有一个,当条件出现时事件不发生,而
条件不出现时,事件发生,这种因果关系叫做 非逻辑 。
实现非逻辑关系的电路称为 非门,也称 反相器 。
A
+ 3 V
F
电路图
1
逻辑符号
A F
R
C
R
B
A F
0
1
1
0
AF ?
输入 A为高电平 1(3V)时,三极管饱和导通,输出 F为低电平
0( 0V);输入 A为低电平 0(0V)时,三极管截止,输出 F为高
电平 1( 3V)。
逻辑非(逻辑反)的 运算规则 为:
01 10 ??
6.2.3 非逻辑和非门电路
将与门、或门、非门组合起来,可以构成多种复合门电路。
A
B
& F
(b ) 逻辑符号
A
B
F& 1
(a ) 与非门的构成
ABF ?
由与门和非门构成与非门。
( 1) 与非门
A B F
0 0
0 1
1 0
1 1
1
1
1
0
与非门的逻辑功能可概括为:输入有 0,输出为 1;
输入全 1,输出为 0。
6.2.4 复合门电路
A
B
≥ 1 F
( b) 逻辑符号
A
B
F≥ 1 1
( a ) 或非门的构成
由或门和非门构成或非门。
BAF ??
( 2)或 非门
A B F
0 0
0 1
1 0
1 1
1
0
0
0
或非门的逻辑功能可概括为:输入有 1,输出为 0;
输入全 0,输出为 1。
由与门、或门和非门构成与或非门。
( 3)与或 非门
A
B
C
D
F
&
&
≥ 1 &
& ≥ 1
A
B
C
D
( a ) 与或非门的构成 ( b ) 与或非门的符号
F
CDABF ??
V
4
+ U
CC
(+ 5V )
b
1
A
B
R
1
3k Ω
V
3
V
2V
1
F
R
4
100 Ω
+ U
CC
(+ 5V )
V
5
A
B
TTL 与非门电路 V
1
的等效电路
D
3
c
1
R
1
3k Ω
R
2
750 Ω
R
3
360 Ω
R
5
3k Ω
D
1
D
2
6.3.1 TTL门电路
6.3 集成门电路
1,TTL与非门
① 输入信号不全为 1:如 uA=0.3V,uB=3.6V
R
4
100 Ω
V
4
A
B
R
1
3k Ω
V
3
V
2V
1
F
+ U
CC
(+ 5V )
V
5
R
2
750 Ω
R
3
360 Ω
R
5
3k Ω
0.7V
0.7V
+
+
-
-
3.6V
0.3V
1V
则 uB1=0.3+0.7=1V,V2,V5截止,V3,V4导通
忽略 iB3,输出端的电位为:
输出 F为高电平 1。
uF≈5―0.7―0.7 = 3.6V
V
4
A
B
R
1
3k Ω
V
3
V
2
V
1
F
R
4
100 Ω
+ U
CC
(+ 5V )
V
5
R
2
750 Ω
R
3
360 Ω
R
5
3k Ω
0.7V
0.7V
+
+
-
-
+
-
0.3V
+
-
0.3V
3.6V
3.6V
② 输入信号全为 1:如 uA=uB=3.6V
2.1V
则 uB1=2.1V,V2,V5导通,V3,V4截止
输出端的电位为,uF=UCES= 0.3V
输出 F为低电平 0。
BAF ??
u
A
u
B
u
F
0.3V 0.3V
0.3V 3.6V
3.6V 0.3V
3.6V 3.6V
3.6V
3.6V
3.6V
0.3V
A B F
0 0
0 1
1 0
1 1
1
1
1
0
功能表 真值表
逻辑表达式:
输入有 0,输出为 1;输入全 1,输出为 0。
2,TTL三态门
符号
V
4
A
R
1
3k Ω
V
3
V
2V
1
F
R
4
100 Ω
+ U
CC
(+ 5V )
V
5
R
2
750 Ω
R
3
360 Ω
R
5
3k Ω
A
E
&
EN
F
E
V
D
电路结构
① E= 0时,二极管 VD导通,三极管 V1基极和 V2基极均被钳制在
低电平,因而 V2~ V5均截止,输出端开路,电路处于高阻状态。
结论:电路的输出有高阻态、高电平和低电平 3种状态。
② E= 1时,二极管 D截止,三态门的输出状态完全取决于输入信
号 A的状态,电路输出与输入的逻辑关系和一般反相器相同,即:
F=A,A= 0时 F= 1,为高电平; A= 1时 F= 0,为低电平。
u
A
+ U
DD
+ 10V
V
P
V
N
+ U
DD
+ 10V
+ U
DD
+ 10V
S
S
R
O N P
R
O N N
10V
0V
(a ) 电路 (b ) V
N
截止,V
P
导通 (c ) V
N
导通,V
P
截止
u
F
u
F
F
Y
( 1) uA= 0V时, VN截止, VP导通 。 输出电压 uF= VDD= 10V。
( 2) uA= 10V时, VN导通, VP截止 。 输出电压 uF= 0V。
AF ?
6.3.2 CMOS门电路
1,CMOS非 门
B
F
+ U
DD
A
V
P1
V
N1
V
N2
V
P2
BAF ??
① A,B当中有一个或全
为低电平 0时,VN1、
VN2中有一个或全部截
止,VP1,VP2中有一个
或全部导通,输出 F为
高电平 1。
② 只有当输入 A,B全为
高电平 1时,VN1和 VN2才
会都导通,VP1和 VP2才会
都截止,输出 F才会为低
电平 0。
2,CMOS与非 门
B
F
+ U
DD
A
V
N1
V
P2
V
N2
V
P1
BAF ??
① 只要输入 A,B当
中有一个或全为高电
平 1,VP1,VP2中有
一个或全部截止,
VN1,VN2中有一个
或全部导通,输出 F
为低电平 0。
② 只有当 A,B全为低
电平 0时,VP1和 VP2
才会都导通,VN1和
VN2才会都截止,输
出 F才会为高电平 1。
3,CMOS或非 门
6.4 逻辑代数
将门电路按照一定的规律连接起来,可以组
成具有各种逻辑功能的逻辑电路。分析和设
计逻辑电路的数学工具是逻辑代数(又叫布
尔代数或开关代数)。逻辑代数具有 3种基本
运算:与运算(逻辑乘)、或运算(逻辑加)
和非运算(逻辑非)。
6.4.1 逻辑代数的公式和定理
与运算,111 001 010 000 ????????
( 2)基本运算
或运算,111 101 110 000 ????????
非运算,10 01 ??
( 1)常量之间的关系
与运算,0 1 00 ???????? AA AAAAAA
或运算,1 11 0 ???????? AA AAAAAA
非运算,AA ?
分别令 A=0及 A=1代入这些公式,即
可证明它们的正确性。
( 3)基本定理
交换律:
?
?
?
???
???
ABBA
ABBA
结合律:
?
?
?
?????
?????
)()(
)()(
CBACBA
CBACBA
分配律:
?
?
?
??????
??????
)()(
)(
CABACBA
CABACBA
反演律 (摩根定律),
??
?
?
?
???
???
BABA
BABA,
利用真值表很容易证
明这些公式的正确性。
如证明 A·B=B·A:
A B A, B B, A
0 0
0 1
1 0
1 1
0
0
0
1
0
0
0
1
(A+B)(A+C)=AA+AB+AC+BC 分配率A(B+C)=AB+AC
=A+AB+AC+BC AA=A
=A(1+B+C)+BC 分配率A(B+C)=AB+AC
=A+BC A+1=1
证明分配率,A+BA=(A+B)(A+C)
证明:
吸收律:
?
?
?
????
????
ABABA
ABABA
)()(
证明,))(( BAAABAA ????
??
?
?
?
????
????
?
?
?
???
???
BABAA
BABAA
ABAA
ABAA )(
)(
)(1 BA ???
BA ??
分配率
A+BC=(A+B)(A+C)
A+A=1
A·1=1
逻辑函数有 5种表示形式:真值表, 逻辑表达式, 卡诺图, 逻辑
图和波形图 。 只要知道其中一种表示形式, 就可转换为其它几
种表示形式 。
6.4.2 逻辑函数的表示方法
1,真值表
真值表,是由变量的所有可能取值组合及其对应的函数值所
构成的表格。
真值表列写方法,每一个变量均有 0,1两种取值,n个变量共
有 2i种不同的取值,将这 2i种不同的取值按顺序(一般按二进
制递增规律)排列起来,同时在相应位置上填入函数的值,便
可得到逻辑函数的真值表。
例如,要表示这样一个函数关系:当 3个变量 A,B,C的取
值中有偶数个 1时,函数取值为 1;否则,函数取值为 0。此
函数称为判偶函数,可用真值表表示如下。
A B C F
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
1
0
0
1
0
1
1
0
表达式列写方法,取 F=1的组合,输入变量值为 1的表示成原变
量,值为 0的表示成反变量,然后将各变量相乘,最后将各乘积
项相加,即得到函数的与或表达式。
2,逻辑表达式
逻辑表达式,是由逻辑变量和与、或、非 3种运算符连接起来所
构成的式子。
A B C F
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
1
0
0
1
0
1
1
0
CABCBABCACBAF ????
CBA
BCA
CBA
CAB
由逻辑表达式列真值表的方法,把输入变量各种组合的取值
分别代入逻辑表达式中进行运算, 求出相应的逻辑函数值,
即可列出真值表 。 如函数:
CABCABF ???
A B C F
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
0
0
0
1
0
1
1
1
3,逻辑图
逻辑图,是由表示逻辑运算的逻辑符号所构成的图形。
CABCBABCACBAF ????
A
B
C
&
&
&
≥ 1 F
1
1
1
&
C
C
B B
A
A
A
B
C
F
4、波形 图
波形图,是由输入变量的所有可能取值组合的高、低电平
及其对应的输出函数值的高、低电平所构成的图形。
0
0
0
1
0
0
1
0
0
1
0
0
0
1
1
1
1
0
0
0
1
0
1
1
1
1
0
1
1
1
1
0
CABCBABCACBAF ????
5、卡诺 图
卡诺图,将逻辑函数真值表中的各行排列成矩阵形式,在
矩阵的左方和上方按照格雷码的顺序写上输入变量的取值,在
矩阵的各个小方格内填入输入变量各组取值所对应的输出函数
值,这样构成的图形就是卡诺图。如函数:
CABCBABCACBAF ????
00 01 11 10
0 0 0 1 0
1 1 1 0 0
A
B C
在变量 A,B,C的取值分别为 000,011,101,110所对应的小
方格内填入 1,其余小方格内填入 0(也可以空着不填),便得
到该函数的卡诺图。
BABABAF ????
异或函数:
0 1
0 0 1
1 1 0
( a ) 卡诺图
A
B
=1
A
B
F
( b ) 逻辑符号
4变量函数,DCBDAF ??
00 01 11 10
00 0 1 0 0
01 0 1 1 0
11 0 1 0 0
10 0 1 0 0
A B
CD
例 某逻辑函数的真值表如表所示,试用其他 4种方法表示该
逻辑函数。
A B C F
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
0
1
1
0
1
0
0
0
解 逻辑表达式:
CBACBACBAF ???
逻
辑
图
:
A
B
C
&
&
& ≥ 1
F
1
1
1
C
C
B B
A
A
波形图:
A
B
C
F
卡诺图:
00 01 11 10
0 0 1 0 1
1 1 0 0 0
A
B C
例 2 某逻辑函数的卡诺图如图所示,试用其他 4种方法表示该
逻辑函数。 A
≥ 1
& F
≥ 1
&
&
F
1
F
2
F
3
F
4
B
C
解 写逻辑表达式:
ACF
BCF
BAF
?
?
??
3
2
1
ACBCFFF ???? 324
BCABACABCBAACBCBA
ACBCBAACBCBAFFF
???????
????????
)(
))((41
列真值表:
A B C F
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
1
1
0
1
0
0
0
0
画波形图:
A
B
C
F
画卡诺图:
00 01 11 10
0 1 1 1 0
1 0 0 0 0
A
B C
BCABAF ??
6.4.3 逻辑函数的化简
利用公式A+A= 1,将两项合并为一项,并消去一个变量。
BCCBCBBC
CBBCAACBBCAA B CY
?????
??????
)(
)(1
ABCBCABCAA B C
CBAA B CCABAA B CY
?????
??????
)(
)(2
若
两
个
乘
积
项
中
分
别
包
含
同
一
个
因
子
的
原
变
量
和
反
变
量
,
而
其
他
因
子
都
相
同
时
,
则
这
两
项
可
以
合
并
成
一
项
,
并
消
去
互
为
反
变
量
的
因
子
。
运用摩根定律
运用分配律
运用分配律
逻辑函数化简的意义:逻辑表达式越简单,实现它的电
路越简单,电路工作越稳定可靠。
1、公式法
BAFEB C DABAY ???? )(1
BAB C DBADA
BADB C DABADCDBAY
??????
????????
)()(
2
如
果
乘
积
项
是
另
外
一
个
乘
积
项
的
因
子
,
则
这
另
外
一
个
乘
积
项
是
多
余
的
。
运用摩根定律
利用公式A+AB=A,消去多余的项。
利用公式A+AB=A+B,消去多余的变量。
CAB
CABAB
CBAAB
CBCAABY
??
??
???
???
)(
DCBA
DBACBA
DBACBA
DBACCBA
DCBDCACBAY
???
???
????
????
????
)(
)(
如
果
一
个
乘
积
项
的
反
是
另
一
个
乘
积
项
的
因
子
,
则
这
个
因
子
是
多
余
的
。
利用公式A=A(B+B),为某一项配上其所缺的变量,以
便用其它方法进行化简。
CACBBA
BBCAACBCBA
CBABCACBACBACBBA
CCBACBAACBBA
BACBCBBAY
???
??????
??????
??????
????
)()1()1(
)()(
利用公式A+A=A,为某项配上其所能合并的项。
BCACAB
BCAABCCBAABCCABABC
BCACBACABABCY
???
??????
????
)()()(
2、卡诺图法
利用卡诺图化简逻辑函数可按以下步骤进行:
( 1) 将逻辑函数正确地用卡诺图表示出来 。
( 2) 将取值为 1的相邻小方格圈成矩形或方形 。 相邻小方格
包括最上行与最下行同列两端的两个小方格, 以及最左列与
最右列同行两端的两个小方格 。 所圈取值为 1的相邻小方格
的个数应为 2n(, 1,2,3,…… ), 即 1,2,4,8,……,
不允许 3,6,10等 。
( 3) 圈的个数应最少, 圈内小方格个数应尽可能多 。 每圈
一个新的圈时, 必须包含至少一个在已圈过的圈中没有出现
过的小方格, 否则重复而得不到最简单的表达式 。 每 — 个取
值为 1的小方格可被圈多次, 但不能漏掉任何一个小方格 。
( 4) 将各个圈进行合并 。 含 2个小方格的圈可合并为一项,
并消去 1个变量;含 4个小方格的圈可合并为一项, 并消去 2
个变量;以此类推, 含 2n个小方格的圈可合并为一项, 并消
去 n个变量 。 若圈内只含一个小方格, 则不能化简 。 最后将
合并的结果相加, 即为所求的最简与或表达式 。
例 将下示函数用卡诺图表示并化简。
ABCCABCBABCAF ????
00 01 11 10
0 0 0 1 0
1 0 1 1 1
A
B C
ACCBAA B C ?? ABCABABC ??BCBCAABC ??
ACBCABF ???
( 1)画卡诺图
( 2)画圈合并
( 3)相加
例 用卡诺图化简函数,DCBAABDDCACF ????
00 01 11 10
00 1 0 1 1
01 0 0 1 1
11 1 1 1 1
10 1 0 1 1
A B
CD
C
AB
BD
DBABCF ???
例 用卡诺图化简函数:
CBABDAABCCABF ????
00 01 11 10
00 0 0 1 1
01 0 1 1 0
11 1 1 1 1
10 0 0 0 0
A B
CD
BD
CD
ACD
多余项
DCACDBDF ???
学习要点
?了解数字电路的特点以及数制和编
码的概念
?掌握与门、或门、与非门、异或门
的逻辑符号、逻辑功能和表示方法
?了解 TTL和 CMOS门电路的特点以及
三态门的概念
?掌握逻辑代数的基本运算法则、基
本公式、基本定理和化简方法
?能够熟练地运用真值表、逻辑表达
式、波形图和逻辑图表示逻辑函数
第 6章 门电路与逻辑代数
?6.1 数字电路概述
?6.2 分立元件门电路
?6.3 集成门电路
?6.4 逻辑代数
6.1 数字电路概述
6.1.1 数字信号与数字电路
模拟信号:在时间上和
数值上连续的信号。
数字信号:在时间上和
数值上不连续的(即离
散的)信号。
uu
模拟信号波形 数字信号波形
t t
对模拟信号进行传输、
处理的电子线路称为
模拟电路。
对数字信号进行传输、
处理的电子线路称为
数字电路。
( 1)工作信号是二进制的数字信号,在时
间上和数值上是离散的(不连续),反
映在电路上就是低电平和高电平两种状
态(即 0和 1两个逻辑值)。
( 2)在数字电路中,研究的主要问题是电
路的逻辑功能,即输入信号的状态和输
出信号的状态之间的逻辑关系。
( 3)对组成数字电路的元器件的精度要求
不高,只要在工作时能够可靠地区分 0和
1两种状态即可 。
数字电路的特点
( 1)进位制:表示数时,仅用一位数码往往不够用,必
须用进位计数的方法组成多位数码。多位数码每一位的
构成以及从低位到高位的进位规则称为进位计数制,简
称进位制。
6.1.2 数制及其转换
( 2)基 数:进位制的基数,就是在该进位制中可能用到
的数码个数。
( 3) 位 权(位的权数):在某一进位制的数中,每一位
的大小都对应着该位上的数码乘上一个固定的数,这个固
定的数就是这一位的权数。权数是一个幂。
一、数制
数码为,0~ 9;基数是 10。
运算规律:逢十进一,即,9+ 1= 10。
十进制数的权展开式:
1、十进制
5 5 5 5
5 × 10 3 =5000
5 × 10 2 = 500
5 × 10 1 = 50
5 × 10 0 = 5
=5555
103,102,101,100称
为十进制的权。各数
位的权是 10的幂。
同样的数码在不同的数
位上代表的数值不同。
+
任意一个十进制数都
可以表示为各个数位
上的数码与其对应的
权的乘积之和,称权
展开式。
即,(5555)10= 5× 103 + 5× 102+ 5× 101+ 5× 100
又如,(209.04)10= 2× 102 + 0× 101+ 9× 100+ 0× 10- 1+ 4 × 10- 2
2、二进制
数码为,0,1;基数是 2。
运算规律:逢二进一,即,1+ 1= 10。
二进制数的权展开式:
如,(101.01)2= 1× 22 + 0× 21+ 1× 20+ 0× 2- 1+ 1 × 2- 2
= (5.25)10
加法规则,0+0=0,0+1=1,1+0=1,1+1=10
乘法规则,0.0=0,0.1=0, 1.0=0,1.1=1
运算
规则
各数位的权是2的幂
二进制数只有 0和 1两个数码,它的每一位都可以用电子元
件来实现,且运算规则简单,相应的运算电路也容易实现。
3、十六进制
数码为,0~ 9,A~ F;基数是 16。
运算规律,逢十六进一,即,F+ 1= 10。
十六进制数的权展开式:
如,(D8.A)2= 13× 161 + 8× 160+ 10 × 16- 1= (216.625)10
各数位的权是 16的幂
二、数制转换
1、二进制数与十六进制数的相互转换
1 1 1 0 1 0 1 0 0, 0 1 10 0 0 0 = (1D4.6)16
= 1010 1111 0100, 0111 0110(AF4.76)16
二进制数与十六进制数的相互转换,按照 每 4位二进制数
对应于一位十六进制数 进行转换。
2 44 余数 低位
2 22 ……… 0= K
0
2 11 ……… 0= K
1
2 5 ……… 1= K
2
2 2 ……… 1= K
3
2 1 ……… 0= K
4
0 ……… 1= K
5
高位
十进制整数转换为二进制采用 除基取余法,先得到的余数
为低位,后得到的余数为高位。
所以,(44)10= (101100)2
2、十进制数转换为二进制数
几种进制数之间的对应关系
十进制数 二进制数 八进制数 十六进制数
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 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
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
用一定位数的二进制数来表示十进制数码、字母、符
号等信息称为 编码 。
用以表示十进制数码、字母、符号等信息的一定位数的
二进制数称为 代码 。
数字系统只能识别 0和 1,怎样才能表示更多的数码、符
号、字母呢?用编码可以解决此问题。
二 -十进制代码:用 4位二进制数 b3b2b1b0来表示十进
制数中的 0 ~ 9 十个数码。简称 BCD码。
2421码的权值依次为 2,4,2,1;余 3码由 8421码加 0011
得到;格雷码是一种循环码,其特点是任何相邻的两个码字,
仅有一位代码不同,其它位相同。
用四位自然二进制码中的前十个码字来表示十进制数码,
因各位的权值依次为 8,4,2,1,故称 8421码。
6.1.3 编码
常用 B C D 码
十进制数 8421 码 余 3 码 格雷码 2421 码 5421 码
0
1
2
3
4
5
6
7
8
9
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
0000
0001
0011
0010
0110
0111
0101
0100
1100
1101
0000
0001
0010
0011
0100
1011
1100
1101
1110
1111
0000
0001
0010
0011
0100
1000
1001
1010
1011
1100
权 8421 2421 5421
6.2 分立元件门电路
获得高、低电平的基本方法:利用半导
体开关元件的导通、截止(即开、关)两种
工作状态。
逻辑 0和 1,电子电路中用高、低电平来
表示。
逻辑门电路:用以实现基本和常用逻辑
运算的电子电路。简称门电路。
基本和常用门电路有与门、或门、非门
(反相器)、与非门、或非门、与或非门和
异或门等。
6.2.1 与逻辑和与门电路
当决定某事件的全部条件同时具备时,结
果才会发生,这种因果关系叫做 与逻辑 。
实现与逻辑关系的电路称为 与门 。
+ U
CC
(+ 5V )
R
F
D
1
A
D
2
B
3V
0V
A
B
F
&
u
A
u
B
u
F
D
1
D
2
0V 0V
0V 3 V
3 V 0V
3 V 3 V
0V
0V
0V
3V
导通 导通
导通 截止
截止 导通
截止 截止
A B F
0 0
0 1
1 0
1 1
0
0
0
1
F=AB
与门的逻辑功能可概括为:输入有 0,输出为 0;
输入全 1,输出为 1。
F=AB
逻辑与(逻辑乘)的 运算规则 为:
111 001 010 000 ????????
A
B
C
F
与门的输入端可以有多个。下图为一个三输入与门电路
的输入信号 A,B,C和输出信号 F的波形图。
在决定某事件的条件中, 只要任一条件
具备, 事件就会发生, 这种因果关系叫
做 或逻辑 。
实现或逻辑关系的电路称为 或门 。
6.2.2 或逻辑和或门电路
A
D
1
B
D
2
3 V
0V
F
R
A
B
F
≥ 1
u
A
u
B
u
F
D
1
D
2
0V 0V
0V 3 V
3V 0V
3V 3V
0V
3V
3V
3V
截止 截止
截止 导通
导通 截止
导通 导通
A B F
0 0
0 1
1 0
1 1
0
1
1
1
F=A+B
或门的逻辑功能可概括为:输入有 1,输出为 1;
输入全 0,输出为 0。
F=A+B
逻辑或(逻辑加)的 运算规则 为:
111 001 010 000 ????????
或门的输入端也可以有多个。下图为一个三输入或门电
路的输入信号 A,B,C和输出信号 F的波形图。
A
B
C
F
决定某事件的条件只有一个,当条件出现时事件不发生,而
条件不出现时,事件发生,这种因果关系叫做 非逻辑 。
实现非逻辑关系的电路称为 非门,也称 反相器 。
A
+ 3 V
F
电路图
1
逻辑符号
A F
R
C
R
B
A F
0
1
1
0
AF ?
输入 A为高电平 1(3V)时,三极管饱和导通,输出 F为低电平
0( 0V);输入 A为低电平 0(0V)时,三极管截止,输出 F为高
电平 1( 3V)。
逻辑非(逻辑反)的 运算规则 为:
01 10 ??
6.2.3 非逻辑和非门电路
将与门、或门、非门组合起来,可以构成多种复合门电路。
A
B
& F
(b ) 逻辑符号
A
B
F& 1
(a ) 与非门的构成
ABF ?
由与门和非门构成与非门。
( 1) 与非门
A B F
0 0
0 1
1 0
1 1
1
1
1
0
与非门的逻辑功能可概括为:输入有 0,输出为 1;
输入全 1,输出为 0。
6.2.4 复合门电路
A
B
≥ 1 F
( b) 逻辑符号
A
B
F≥ 1 1
( a ) 或非门的构成
由或门和非门构成或非门。
BAF ??
( 2)或 非门
A B F
0 0
0 1
1 0
1 1
1
0
0
0
或非门的逻辑功能可概括为:输入有 1,输出为 0;
输入全 0,输出为 1。
由与门、或门和非门构成与或非门。
( 3)与或 非门
A
B
C
D
F
&
&
≥ 1 &
& ≥ 1
A
B
C
D
( a ) 与或非门的构成 ( b ) 与或非门的符号
F
CDABF ??
V
4
+ U
CC
(+ 5V )
b
1
A
B
R
1
3k Ω
V
3
V
2V
1
F
R
4
100 Ω
+ U
CC
(+ 5V )
V
5
A
B
TTL 与非门电路 V
1
的等效电路
D
3
c
1
R
1
3k Ω
R
2
750 Ω
R
3
360 Ω
R
5
3k Ω
D
1
D
2
6.3.1 TTL门电路
6.3 集成门电路
1,TTL与非门
① 输入信号不全为 1:如 uA=0.3V,uB=3.6V
R
4
100 Ω
V
4
A
B
R
1
3k Ω
V
3
V
2V
1
F
+ U
CC
(+ 5V )
V
5
R
2
750 Ω
R
3
360 Ω
R
5
3k Ω
0.7V
0.7V
+
+
-
-
3.6V
0.3V
1V
则 uB1=0.3+0.7=1V,V2,V5截止,V3,V4导通
忽略 iB3,输出端的电位为:
输出 F为高电平 1。
uF≈5―0.7―0.7 = 3.6V
V
4
A
B
R
1
3k Ω
V
3
V
2
V
1
F
R
4
100 Ω
+ U
CC
(+ 5V )
V
5
R
2
750 Ω
R
3
360 Ω
R
5
3k Ω
0.7V
0.7V
+
+
-
-
+
-
0.3V
+
-
0.3V
3.6V
3.6V
② 输入信号全为 1:如 uA=uB=3.6V
2.1V
则 uB1=2.1V,V2,V5导通,V3,V4截止
输出端的电位为,uF=UCES= 0.3V
输出 F为低电平 0。
BAF ??
u
A
u
B
u
F
0.3V 0.3V
0.3V 3.6V
3.6V 0.3V
3.6V 3.6V
3.6V
3.6V
3.6V
0.3V
A B F
0 0
0 1
1 0
1 1
1
1
1
0
功能表 真值表
逻辑表达式:
输入有 0,输出为 1;输入全 1,输出为 0。
2,TTL三态门
符号
V
4
A
R
1
3k Ω
V
3
V
2V
1
F
R
4
100 Ω
+ U
CC
(+ 5V )
V
5
R
2
750 Ω
R
3
360 Ω
R
5
3k Ω
A
E
&
EN
F
E
V
D
电路结构
① E= 0时,二极管 VD导通,三极管 V1基极和 V2基极均被钳制在
低电平,因而 V2~ V5均截止,输出端开路,电路处于高阻状态。
结论:电路的输出有高阻态、高电平和低电平 3种状态。
② E= 1时,二极管 D截止,三态门的输出状态完全取决于输入信
号 A的状态,电路输出与输入的逻辑关系和一般反相器相同,即:
F=A,A= 0时 F= 1,为高电平; A= 1时 F= 0,为低电平。
u
A
+ U
DD
+ 10V
V
P
V
N
+ U
DD
+ 10V
+ U
DD
+ 10V
S
S
R
O N P
R
O N N
10V
0V
(a ) 电路 (b ) V
N
截止,V
P
导通 (c ) V
N
导通,V
P
截止
u
F
u
F
F
Y
( 1) uA= 0V时, VN截止, VP导通 。 输出电压 uF= VDD= 10V。
( 2) uA= 10V时, VN导通, VP截止 。 输出电压 uF= 0V。
AF ?
6.3.2 CMOS门电路
1,CMOS非 门
B
F
+ U
DD
A
V
P1
V
N1
V
N2
V
P2
BAF ??
① A,B当中有一个或全
为低电平 0时,VN1、
VN2中有一个或全部截
止,VP1,VP2中有一个
或全部导通,输出 F为
高电平 1。
② 只有当输入 A,B全为
高电平 1时,VN1和 VN2才
会都导通,VP1和 VP2才会
都截止,输出 F才会为低
电平 0。
2,CMOS与非 门
B
F
+ U
DD
A
V
N1
V
P2
V
N2
V
P1
BAF ??
① 只要输入 A,B当
中有一个或全为高电
平 1,VP1,VP2中有
一个或全部截止,
VN1,VN2中有一个
或全部导通,输出 F
为低电平 0。
② 只有当 A,B全为低
电平 0时,VP1和 VP2
才会都导通,VN1和
VN2才会都截止,输
出 F才会为高电平 1。
3,CMOS或非 门
6.4 逻辑代数
将门电路按照一定的规律连接起来,可以组
成具有各种逻辑功能的逻辑电路。分析和设
计逻辑电路的数学工具是逻辑代数(又叫布
尔代数或开关代数)。逻辑代数具有 3种基本
运算:与运算(逻辑乘)、或运算(逻辑加)
和非运算(逻辑非)。
6.4.1 逻辑代数的公式和定理
与运算,111 001 010 000 ????????
( 2)基本运算
或运算,111 101 110 000 ????????
非运算,10 01 ??
( 1)常量之间的关系
与运算,0 1 00 ???????? AA AAAAAA
或运算,1 11 0 ???????? AA AAAAAA
非运算,AA ?
分别令 A=0及 A=1代入这些公式,即
可证明它们的正确性。
( 3)基本定理
交换律:
?
?
?
???
???
ABBA
ABBA
结合律:
?
?
?
?????
?????
)()(
)()(
CBACBA
CBACBA
分配律:
?
?
?
??????
??????
)()(
)(
CABACBA
CABACBA
反演律 (摩根定律),
??
?
?
?
???
???
BABA
BABA,
利用真值表很容易证
明这些公式的正确性。
如证明 A·B=B·A:
A B A, B B, A
0 0
0 1
1 0
1 1
0
0
0
1
0
0
0
1
(A+B)(A+C)=AA+AB+AC+BC 分配率A(B+C)=AB+AC
=A+AB+AC+BC AA=A
=A(1+B+C)+BC 分配率A(B+C)=AB+AC
=A+BC A+1=1
证明分配率,A+BA=(A+B)(A+C)
证明:
吸收律:
?
?
?
????
????
ABABA
ABABA
)()(
证明,))(( BAAABAA ????
??
?
?
?
????
????
?
?
?
???
???
BABAA
BABAA
ABAA
ABAA )(
)(
)(1 BA ???
BA ??
分配率
A+BC=(A+B)(A+C)
A+A=1
A·1=1
逻辑函数有 5种表示形式:真值表, 逻辑表达式, 卡诺图, 逻辑
图和波形图 。 只要知道其中一种表示形式, 就可转换为其它几
种表示形式 。
6.4.2 逻辑函数的表示方法
1,真值表
真值表,是由变量的所有可能取值组合及其对应的函数值所
构成的表格。
真值表列写方法,每一个变量均有 0,1两种取值,n个变量共
有 2i种不同的取值,将这 2i种不同的取值按顺序(一般按二进
制递增规律)排列起来,同时在相应位置上填入函数的值,便
可得到逻辑函数的真值表。
例如,要表示这样一个函数关系:当 3个变量 A,B,C的取
值中有偶数个 1时,函数取值为 1;否则,函数取值为 0。此
函数称为判偶函数,可用真值表表示如下。
A B C F
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
1
0
0
1
0
1
1
0
表达式列写方法,取 F=1的组合,输入变量值为 1的表示成原变
量,值为 0的表示成反变量,然后将各变量相乘,最后将各乘积
项相加,即得到函数的与或表达式。
2,逻辑表达式
逻辑表达式,是由逻辑变量和与、或、非 3种运算符连接起来所
构成的式子。
A B C F
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
1
0
0
1
0
1
1
0
CABCBABCACBAF ????
CBA
BCA
CBA
CAB
由逻辑表达式列真值表的方法,把输入变量各种组合的取值
分别代入逻辑表达式中进行运算, 求出相应的逻辑函数值,
即可列出真值表 。 如函数:
CABCABF ???
A B C F
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
0
0
0
1
0
1
1
1
3,逻辑图
逻辑图,是由表示逻辑运算的逻辑符号所构成的图形。
CABCBABCACBAF ????
A
B
C
&
&
&
≥ 1 F
1
1
1
&
C
C
B B
A
A
A
B
C
F
4、波形 图
波形图,是由输入变量的所有可能取值组合的高、低电平
及其对应的输出函数值的高、低电平所构成的图形。
0
0
0
1
0
0
1
0
0
1
0
0
0
1
1
1
1
0
0
0
1
0
1
1
1
1
0
1
1
1
1
0
CABCBABCACBAF ????
5、卡诺 图
卡诺图,将逻辑函数真值表中的各行排列成矩阵形式,在
矩阵的左方和上方按照格雷码的顺序写上输入变量的取值,在
矩阵的各个小方格内填入输入变量各组取值所对应的输出函数
值,这样构成的图形就是卡诺图。如函数:
CABCBABCACBAF ????
00 01 11 10
0 0 0 1 0
1 1 1 0 0
A
B C
在变量 A,B,C的取值分别为 000,011,101,110所对应的小
方格内填入 1,其余小方格内填入 0(也可以空着不填),便得
到该函数的卡诺图。
BABABAF ????
异或函数:
0 1
0 0 1
1 1 0
( a ) 卡诺图
A
B
=1
A
B
F
( b ) 逻辑符号
4变量函数,DCBDAF ??
00 01 11 10
00 0 1 0 0
01 0 1 1 0
11 0 1 0 0
10 0 1 0 0
A B
CD
例 某逻辑函数的真值表如表所示,试用其他 4种方法表示该
逻辑函数。
A B C F
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
0
1
1
0
1
0
0
0
解 逻辑表达式:
CBACBACBAF ???
逻
辑
图
:
A
B
C
&
&
& ≥ 1
F
1
1
1
C
C
B B
A
A
波形图:
A
B
C
F
卡诺图:
00 01 11 10
0 0 1 0 1
1 1 0 0 0
A
B C
例 2 某逻辑函数的卡诺图如图所示,试用其他 4种方法表示该
逻辑函数。 A
≥ 1
& F
≥ 1
&
&
F
1
F
2
F
3
F
4
B
C
解 写逻辑表达式:
ACF
BCF
BAF
?
?
??
3
2
1
ACBCFFF ???? 324
BCABACABCBAACBCBA
ACBCBAACBCBAFFF
???????
????????
)(
))((41
列真值表:
A B C F
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
1
1
0
1
0
0
0
0
画波形图:
A
B
C
F
画卡诺图:
00 01 11 10
0 1 1 1 0
1 0 0 0 0
A
B C
BCABAF ??
6.4.3 逻辑函数的化简
利用公式A+A= 1,将两项合并为一项,并消去一个变量。
BCCBCBBC
CBBCAACBBCAA B CY
?????
??????
)(
)(1
ABCBCABCAA B C
CBAA B CCABAA B CY
?????
??????
)(
)(2
若
两
个
乘
积
项
中
分
别
包
含
同
一
个
因
子
的
原
变
量
和
反
变
量
,
而
其
他
因
子
都
相
同
时
,
则
这
两
项
可
以
合
并
成
一
项
,
并
消
去
互
为
反
变
量
的
因
子
。
运用摩根定律
运用分配律
运用分配律
逻辑函数化简的意义:逻辑表达式越简单,实现它的电
路越简单,电路工作越稳定可靠。
1、公式法
BAFEB C DABAY ???? )(1
BAB C DBADA
BADB C DABADCDBAY
??????
????????
)()(
2
如
果
乘
积
项
是
另
外
一
个
乘
积
项
的
因
子
,
则
这
另
外
一
个
乘
积
项
是
多
余
的
。
运用摩根定律
利用公式A+AB=A,消去多余的项。
利用公式A+AB=A+B,消去多余的变量。
CAB
CABAB
CBAAB
CBCAABY
??
??
???
???
)(
DCBA
DBACBA
DBACBA
DBACCBA
DCBDCACBAY
???
???
????
????
????
)(
)(
如
果
一
个
乘
积
项
的
反
是
另
一
个
乘
积
项
的
因
子
,
则
这
个
因
子
是
多
余
的
。
利用公式A=A(B+B),为某一项配上其所缺的变量,以
便用其它方法进行化简。
CACBBA
BBCAACBCBA
CBABCACBACBACBBA
CCBACBAACBBA
BACBCBBAY
???
??????
??????
??????
????
)()1()1(
)()(
利用公式A+A=A,为某项配上其所能合并的项。
BCACAB
BCAABCCBAABCCABABC
BCACBACABABCY
???
??????
????
)()()(
2、卡诺图法
利用卡诺图化简逻辑函数可按以下步骤进行:
( 1) 将逻辑函数正确地用卡诺图表示出来 。
( 2) 将取值为 1的相邻小方格圈成矩形或方形 。 相邻小方格
包括最上行与最下行同列两端的两个小方格, 以及最左列与
最右列同行两端的两个小方格 。 所圈取值为 1的相邻小方格
的个数应为 2n(, 1,2,3,…… ), 即 1,2,4,8,……,
不允许 3,6,10等 。
( 3) 圈的个数应最少, 圈内小方格个数应尽可能多 。 每圈
一个新的圈时, 必须包含至少一个在已圈过的圈中没有出现
过的小方格, 否则重复而得不到最简单的表达式 。 每 — 个取
值为 1的小方格可被圈多次, 但不能漏掉任何一个小方格 。
( 4) 将各个圈进行合并 。 含 2个小方格的圈可合并为一项,
并消去 1个变量;含 4个小方格的圈可合并为一项, 并消去 2
个变量;以此类推, 含 2n个小方格的圈可合并为一项, 并消
去 n个变量 。 若圈内只含一个小方格, 则不能化简 。 最后将
合并的结果相加, 即为所求的最简与或表达式 。
例 将下示函数用卡诺图表示并化简。
ABCCABCBABCAF ????
00 01 11 10
0 0 0 1 0
1 0 1 1 1
A
B C
ACCBAA B C ?? ABCABABC ??BCBCAABC ??
ACBCABF ???
( 1)画卡诺图
( 2)画圈合并
( 3)相加
例 用卡诺图化简函数,DCBAABDDCACF ????
00 01 11 10
00 1 0 1 1
01 0 0 1 1
11 1 1 1 1
10 1 0 1 1
A B
CD
C
AB
BD
DBABCF ???
例 用卡诺图化简函数:
CBABDAABCCABF ????
00 01 11 10
00 0 0 1 1
01 0 1 1 0
11 1 1 1 1
10 0 0 0 0
A B
CD
BD
CD
ACD
多余项
DCACDBDF ???