第 1章 数字逻辑基础
本章主要介绍数字电路中常用的几种数制的表示方法及其转换规律,数字系统中常见的几种编码及逻辑代数知识。
1.1计数体制
数是用来表示物理量多少的。常用多位数表示。
通常,把数的组成和由低位向高位进位的规则称为数制 。
在数字系统中,常用的数制包括 十进制数
(decimal),二进制数 (binary),八进制数
(octal)和十六进制数( hexadecimal)。
1.1.1十进制数
组成,0,1,2,3,4,5,6,7,8,9
进位规则:逢十进一 。
不同位置数的权不同,可用 10i表示 。
i在 (n-1)至 -m间取值 。
n为十进制数的整数位位数,
m为小数位位数 。
10称为基数 (radix或 base)。
1.1.1十进制数
例,666.66
666.66=6× 102+6× 101+6× 100+
6× 10-1+6× 10-2
十 进 制 位 置 记 数 法
(Positional notation);
多项式表示法
(Polynomial notation)。
102,101,100,10-1,10-2表示每位数对应的权值,
6为系数。
1.1.1十进制数
任意一个十进制数都可以写成:
1
i10 10
n
mi
iaM
n是整数位位数
m是小数位位数
ai是第 i位系数
10i是第 i位的权,
10是基数。
1.1.1十进制数
任意进制数的按权展开式
1n
mi
i
iR RaM
R为基数
ai为 0~ (R- 1)中任意一个数字符号
Ri为第 i位的权值 。
1.1.2二进制数
组成,0,1
进位规则:逢二进一
一个二进制数 M2可以写成:
1
2 2
n
mi
i
iaM
1.1.2二进制数
一个二进制数的最右边一位称为最低有效位,常表示为 LSB(Least Significant Bit),
最左边一位称为最高有效位,常表示为
MSB(Most Significant Bit)。
例:试标出二进制数 11011.011的 LSB,
MSB位,写出各位的权和按权展开式,求出其等值的十进制数 。
1.1.2二进制数
M2=11011.0112=1× 24+1× 23+0× 22+1× 21+
1× 20+0× 2-1+1× 2-2+1× 2-3=27.37510
1 1 0 1 1,0 1 1
24 23 22 21 20 2-1 2-2 2-3
MSB LSB
1.1.3八进制数和十六进制数
⒈ 八进制数
组成,0,1,2,3,4,5,6,7、
进位规则:逢八进一
权值,8i 基数,8
1.1.3八进制数和十六进制数
⒉ 十六进制数
组成,0,1,2,3,4,5,6,7,8,9,A、
B,C,D,E,F
其中 A~ F的等值十进制数分别为 10,11、
12,13,14,15
进位规则:逢十六进一
1.1.3八进制数和十六进制数
八进制数和十六进制数均可写成按权展开式,并能求出相应的等值十进制数。
18 8n
mi
i
iaM
116 16n
mi
i
iaM
1.1.3八进制数和十六进制数
例:求八进制数 6668的等值十进制数 。
解:
6668=6× 82+6× 81+6× 80=384+48+6=43810
例:一个十六进制数 2AF16的等值十进制数是多少?
解:
2AF16=2× 162+A× 161+F× 160
=2× 162+10× 161+15× 160=68710
1.1.4二进制数和其它进制之间的转换
⒈ 十进制数转换成二进制数
将十进制数 M10转换为二进制数,一般采用将 M10的整数部分和小数部分分别转换,然后把其结果相加 。
设 M10 的整数部分转换成的二进制数为
an-1an-2… a1a0
可列成下列等式:
M10=an-12n-1+an-22n-2+… +a121+a020
1.1.4二进制数和其它进制之间的转换
( 1) 整数部分转换
设 M10 的整数部分转换成的二进制数为
an-1an-2… a1a0
可列成下列等式:
M10=an-12n-1+an-22n-2+… +a121+a020
将上式两边同除以 2,两边的商和余数相等 。
所得商为 an-12n-2+an-22n-3+… +a221+a1,余数为 a0,经整理后有:
1.1.4二进制数和其它进制之间的转换
再将上式两边同时除以 2,可得余数 a1,依次类推,便可求出二进制数的整数部分的每一位系数 an-1,…,a1,a0。
在转换中注意除以 2一直进行到商数为 0止 。
这 就 是 所 谓 除 基 取 余 法 (Radix Divide
Method)。
12
4
2
3
1
010 )22(2
2 aaaa
aM n
n
n
n
1.1.4二进制数和其它进制之间的转换
例:将十进制数 2510转换为二进制数 。
解:
∴ 2510=110012
252
62
32
12
余 1= a0
0
122
余 0= a1
余 0= a2
余 1= a3
余 1= a4
1.1.4二进制数和其它进制之间的转换
( 2) 小数部分转换
设 M10的小数部分转换成二进制数为
a-1a-2… a-m,可写成等式:
M10=a-12-1+a-22-2+… +a-m2-m
将上式两边同时乘以 2得
2× M10=a-120+a-22-1+… +a-m2-m+1
上式中乘积的整数部分就是系数 a-1,而乘积的小数部分为:
1.1.4二进制数和其它进制之间的转换
2× M10-a-1=a-120+a-22-1+… +a-m2-m+1
对上式两边再同乘以 2,则积的整数部分为系数 a-2,依次类推,便可求出二进制数的小数部分的每一位系数,这就是所谓乘基取整法 (Radix Multiply Method)。
在转换过程中,乘 2过程一直继续到所需位数或达到小数部分为 0止 。
1.1.4二进制数和其它进制之间的转换
例:将 0.2510转为二进制数 。
解,0.2510× 2=0.5 整数 =0=a-1 MSB
0.510× 2=1.0 整数 =1=a-2 LSB
即 0.2510=0.012
由上两例可得 25.2510=11001.012
也可以用不同位权值相加等于十进制数的办法将十进制数转换成二进制数 。
如 25=16+8+1=24+23+20=11001。
1.1.4二进制数和其它进制之间的转换
⒉ 二进制数和八进制数之间的转换
三位二进制数恰好等于一位八进制数,8=23。
对于二进制数,从小数点处开始,分别向左,
右按三位分为一组,每组就对应一位八进制数,组合后即得到转换的八进制数 。
将八进制数转换为二进制数时,把每位八进制数写成等值的二进制数,再连接起来,即得到二进制数 。
1.1.4二进制数和其它进制之间的转换
例:将八进制数 2748转换成二进制数 。
解:
∴ 2748=101111002
2 7 4
010 111 100
1.1.4二进制数和其它进制之间的转换
⒊ 二进制数与十六进制数之间的转换
因为 16=24,所以 4位二进制数代表一位十六进制数 。
将二进制数从小数点处开始,分别向左,右按每四位分为一组,每组用相应的十六进制数表示,组合后可得到相应的十六进制数 。
1.1.4二进制数和其它进制之间的转换
例:将 10101111.00010110112转换成十六进制数 。
解:
∴ 10101111.00010110112=AF.16C16
1010 1111,0001 0110 1100
A F,1 6 C
几种数制之间的关系对照表 (1)
0
1
2
3
4
5
6
7
8
9
A
十六进制
0
1
2
3
4
5
6
7
10
11
12
八进制
00000
00001
00010
00011
00100
00101
00110
00111
01000
01001
01010
二进制
0
1
2
3
4
5
6
7
8
9
10
十进制几种数制之间的关系对照表 (2)
B
C
D
E
F
10
11
12
13
14
十六进制
13
14
15
16
17
20
21
22
23
24
八进制
01011
01100
01101
01110
01111
10000
10001
10010
10011
10100
二进制
11
12
13
14
15
16
17
18
19
20
十进制
1.2常用编码
编码:是指用文字,符号,数码等表示某种信息的过程 。
数字系统中处理,存储,传输的都是二进制代码 0和 1,因而对于来自于数字系统外部的输入信息,例如十进制数 0~ 9或字符 A~ Z,
a~ z等,必须用二进制代码 0和 1表示 。
二进制编码:给每个外部信息按一定规律赋予二进制代码的过程 。 或者说,用二进制代码表示有关对象 ( 信号 ) 的过程 。
1.2.1二 — 十进制编码( BCD码)
二 — 十进编码是用四位二进制代码表示一位十进制数的编码方式 。
BCD码的本质是十进制,其表现形式为二进制代码 。
如果任意取四位二进制代码十六种组合的其中十种,并按不同的次序排列,则可得到多种不同的编码 。
常用的几种 BCD码列于表 1-1中 ( 参见 P4表
1-1) 。
无权码542124212421无权码8421权
0010
0110
0111
0101
0100
1100
1101
1111
1110
1010
0000
0001
0010
0011
0100
1000
1001
1010
1011
1100
0000
0001
0010
0011
0100
1011
1100
1101
1110
1111
0000
0001
0010
0011
0100
0101
0110
0111
1110
1111
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
0
1
2
3
4
5
6
7
8
9
余 3循环码5421码2421码 (B)2421码 (A)余 3码8421码十进制表 1-1 常用的几种 BCD码种类
1.2.1二 — 十进制编码( BCD码)
⒈ 8421 BCD码
8421码是最常用的一种 BCD( Binary Coded
Decimal) 码,舍去四位二进制码的最后六个码,十位数和其二进制数有对应关系,为恒权码 。
多位十进制数,需用多位 8421 BCD码表示 。
例如 36910= 0011 0110 10018421。
1.2.1二 — 十进制编码( BCD码)
⒉ 余 3码
特点是每个余 3码所表示的二进制数要比它对应的十进制数多 3。
⒊ 2421和 5421码
二者均为恒权码 。 2421码有 A,B两种 。
1.2.2循环码
循环码是格雷码 (Gray Code)
中常用的一种,
其主要优点是相邻两组编码只有一位状态不同 。 以中间为对称的两组代码只有最左边一位不同 。
0 0 0 0
0 0 0 1
0 0 1 1
0 0 1 0
0 1 1 0
0 1 1 1
0 1 0 1
0 1 0 0
循 环 码
0
1
2
3
4
5
6
7
十进制数表 1-2 四位循环码
1 1 0 0
1 1 0 1
1 1 1 1
1 1 1 0
1 0 1 0
1 0 1 1
1 0 0 1
1 0 0 0
循 环 码
8
9
10
11
12
13
14
15
十进制数例如 0和 15,1和
14,2和 13等。
这称为反射性。
所以又称作反射码。而每一位代码从上到下的排列顺序都是以固定的周期进行循环的。
右起第一位的循环周期是
,0110”,第二位的循环周期是
,00111100”,
第三位的循环周期是
,0000111111110
000”等等。
是一种无权码。
四位循环码如表
1-2所示(参见
P5表 1-2)。
1.2.2循环码
循环码和二进制码之间保持确定关系,即已知一组二进制码,便可求出一组对应的循环码,反之亦然 。
设二进制码为 B=B3B2B1B0,循环码为
G=G3G2G1G0
Gi=Bi+1⊕ Bi
1.2.3 ASCII码
ASCII是 American National Standard Code
for Information Interchange美国国家信息交换标准代码的简称 。 常用于通讯设备和计算机中 。
它是一组八位二进制代码,用 1~ 7这七位二进制代码表示十进制数字,英文字母及专用符号 。 第八位作奇偶校验位 ( 在机中常为
0) 。
如表 1-3所示 ( 参见 P5表 1-3) 。
表 1-3 ASCII码
DELo_O?/USSI1111
~n^N>.RSSO1110
}m]M=-GSCR1101
|l\L<,FSFF1100
{k[K;+ESCVT(home)1011
zjZJ:*SUBLF(line feed)1010
yIYI9)EMHT(tab)1001
xhXH8(CANBS1000
wgWG7’ETBBEL(beep)0111
vfVF6&SYNACK0110
ueUE5%NAKENQ0101
tdTD4$DC4EOT0100
scSC3#DC3ETX0011
rbRB2”DC2STX0010
qaQA1!DC1SOH0001
p`P@0SPDLENUL(null)0000
111110101100011010001000b
4b3b2b1
b7b6b5
1.3 二极管和三极管的开关特性
1.3.1 二极管的开关特性
(一) 二极管导通条件及导通时的特点:
正向电压 VF≥0.7V
(二) 二极管截止条件及截止时的特点,VF≤0.5V(硅管)
如图所示
v
I
V
F
- V
R
0
t
1
t
( b ) 输 入 电 压 波 形
t
1
i
t0
I
F
I
R
( c ) 理 想 电 流 波 形
t
1
t
I
R
i
I
F
0
t
r e
- V
R
R
( d ) 实 际 电 流 波 形
i
v
I
R
( a ) 二 极 管 电 路在 t1时刻输入电压由 +VF
跳变到 -VR,会出现很大的反向电流的原因是 电荷存储效应 。
( a)二极管电路
( b)输入电压波形
( c)理想电流波形
( d)实际电流波形产生反向恢复时间 tre的原因如图 1-2所示反向恢复时间 tre为纳秒数量级,tre值愈小,开关速度愈快,允许信号频率愈高。
(三) 二极管反向恢复时间 tre
空 间 电 荷 区
P 区 N 区图 1 - 2 P 区 和 N 区 少 数载 流 子 存 储 情 况
1.3.2 三极管的开关特性
(一)截止、饱和的条件截止,VBE < 0V( 0.5V)
饱和,IB> IBS
临界饱和,VCE=VBE
此时,ICS=( VCC-0.3) /RC
≈VCC/RC
一般 VCES=0.1~ 0.3V
V
C C
R
C
R
b
v
0
v
I
T
图 1
-
3 三 极 管 开 关 电 路
(二)三极管的开关时间开启时间,ton=td+tr
延迟时间,td
上升时间,tr
关闭时间,tof=ts+tf
存储时间,ts
下降时间,tf
一般地 tof> ton,ts > tf
并且开关时间为纳秒数量极图1 - 4 三极管的开关时间
v
I
v
0
2 V
- 1 V
0
t
t
t
i
c
I
c s
0,9 I
c s
0,1 I
c s
t
d
t
r
t
s
t
f
t
o n
t
o f f
0
0
V
C E S
V
C C
1.4 逻辑代数基础
逻辑代数是分析和设计数字逻辑电路的数学工具 。
本节讨论,逻辑变量、逻辑函数、基 本 逻辑运算和逻辑代数公式,以及化简逻辑函数的两种方法 — 公式法和图形法 。
⒈ 逻辑电路中的几个问题
⑴ 逻辑值的概念
在数字系统中,通常用逻辑真和逻辑假状态来区分事物的两种对立的状态。
逻辑真状态用 ‘ 1’表示;逻辑假状态用 ‘ 0’
来表示。
‘ 1’和 ‘ 0’分别叫做逻辑真假状态的值。
0,1只有逻辑上的含义,已不表示数量上的大小。
⑵ 高、低电平的概念
以两个不同确定范围的电位与逻辑真、假两个逻辑状态对应。
这两个不同范围的电位称作逻辑电平,把其中一个相对电位较高者称为逻辑高电平,简称高电平,用 H表示。而相对较低者称为逻辑低电平,简称低电平,用 L
表示。
上限值下限值上限值下限值
4V
3V
0.8V
0V
高电平 H
低电平 L
⑶ 状态赋值和正、负逻辑的概念
状态赋值,数字电路中,经常用符号 1和 0表示高电平和低电平 。 我们把用符号 1,0表示输入,输出电平高低的过程叫做状态赋值 。
正逻辑,在状态赋值时,如果用 1表示高电平,用 0表示低电平,则称为正逻辑赋值,
简称正逻辑 。
负逻辑,在状态赋值时,如果用 0表示高电平,用 1表示低电平,则称为负逻辑赋值,
简称负逻辑 。
⒉ 基本逻辑运算和基本逻辑门
基本逻辑运算有逻辑与,逻辑或和逻辑非 。
实现这三种逻辑运算的电路,称作基本逻辑门 。
⑴ 逻辑与(乘)运算
只有决定一件事情的全部条件具备之后,
结果才能发生,这种因果关系为,逻辑与,
或,逻辑乘,。
⑴ 逻辑与(乘)运算
如图 1-7示照明电路,开关 A,B合上作为条件,灯亮为结果,只有两个开关全合上时,灯才会亮,否则灯不亮 。 灯和开关之间符合与逻辑关系 。
图 1-7 与逻辑电路
E
A B
F
A B
0 0
0 1
1 0
1 1
F
0
0
0
1
表 1-5 真值表逻辑符号
FA
B
(b)
A
B
(a)
F
FAB &
(c)
⑴ 逻辑与(乘)运算
逻辑真值表 ( Truth Table),经过状态赋值之后所得到的由文字和符号 0,1组成的,
描述输入和输出的所有状态的表格 。 简称真值表 。
逻辑与的逻辑关系表达式写成 F=A·B
与逻辑功能可记成:,有 0为 0,全 1为 1”
与运算规则,0·0=0; 0·1=0; 1·0=0;
1·1=1
A·0=0; A·1=A; 0·A=0; 1·A=A
⑵ 逻辑或(加)运算
决定一件事情的几个条件中,只要有一个或一个以上条件具备,结果就会发生,这种因果关系称为,或逻辑,,也称,逻辑加,。
⑵ 逻辑或(加)运算
图 1-8为两个开关并联的照明电路 。 只要有一个或一个以上 ( 二个 ) 开关闭合,灯就会亮 。 只有开关都断开时,灯灭 。 灯亮和开关之间的关系是,或逻辑,关系 。
E
A
B F
图 1-8 或 逻 辑 电 路
( 参见 P10图 1-8)
A
B F
(c)
≥1
A
B F
(a)
+ AB F
(b)
逻辑符号
A B
0 0
0 1
1 0
1 1
F
0
1
1
1
表 1-6 真值表
⑵ 逻辑或(加)运算
逻辑或的逻辑关系表达式 F=A+B
读作 F等于 A逻辑加 B。
或逻辑功能可记成,有 1为 1,全 0为 0”。
由真值表看出 0+0=0; 0+1=1; 1+0=1;
1+1=1,从 而 推 出 A+0=A ; A+1=1 ;
A+A=A。
或逻辑又称逻辑加法 。 通过上述真值表,
可见它和算术加有很大区别 。
在逻辑加中 1+1=1,1+1+···+1=1。
⑶ 逻辑非运算
条件具备时结果不发生,条件不具备时结果反而发生,这种因果关系是逻辑非 。 非也称为取反 。
⑶ 逻辑非运算图 1-9非逻辑电路
E A
R
F A0
1
F
1
0
表 1-7 真值表
A F1
(c)
A F
(a)
A F
(b)
逻辑图
如图 1-9示照明电路,开关 A合上时灯灭;
开关 A断开时灯亮 。 开关合上这一条件具备时灯亮这一结果不发生 。 满足非逻辑关系 。
同样可列出以 0和 1表示 A和 F之间的逻辑关系的真值表 。
⑶ 逻辑非运算
逻辑非的逻辑表达式写成
AF?
10? 01? AA?
0 AA 1 AA
⒊ 复合逻辑运算
与,或,非为三种基本逻辑运算 。
实际逻辑问题要比与,或,非复杂得多,
但都可以用简单的与,或,非逻辑组合来实现 。 从而构成复合逻辑 。
复合逻辑常见的有与非,或非,异或,同
(或 )运算等 。
⒊ 复合逻辑运算
A
B
F
&
A
B
F
≥ 1
≥ 1
F
A
B
C
D
&
A
B
F
A
B
F
= 1
=
A
B
F
A
B
F F
A
B
C
D
A
B
F
A
B
F
ABF? BAF CDABF
BA
BABAF
BABAF
=A⊙ B
逻辑符号如下图,其中第一行为国标符号;
第二行为惯用符号;第三行为国外常用符号。
A
B
F
A
B
F
+
+
F
A
B
C
D
A
B
F
A
B
F
⊙
⒋ 逻辑代数的基本公式和常用公式
⑴基本公式
AA1
00A
0 AA
AAA
ABBA
ABAA )(
AA?
)()( CBACBA
ACABCBA )(
BABA
01?
AA 0
11A
1 AA
AAA
ABBA
AABA
)()( CBACBA
))(( CABABCA
BABA
10?
AA 0
1 AA
0 AA
ABBA
)()( CBACBA
ACABBA )(
BA? BAAB?
AA1
=A⊙ B=
自等律说明公 式求反律反演律分配律结合律还原律吸收律交换律重迭律互补律
0— 1律
⑴ 基本公式
上述基本公式可用真值表进行证明。如证明反演律
BABA
可将变量,A,B的各种取值组合分别代入等式,
其结果如下表所示,等号两边的逻辑值完全对应相等,则说明该公式成立。
1
0
0
1
1
0
0
1
1
0
0
0
1
0
0
0
1
1
1
0
1
1
1
0
1 1
1 0
0 1
0 0
0 0
0 1
1 0
1 1
AB+ABA⊕ BA BA+BA+BABA BA B
⑵ 逻辑代数的三条规则公式
⒈ 代入规则
在任何逻辑等式中,如果等式两边所有出现某一变量的地方,都代之一个函数,
则等式仍然成立。这个规则叫代入规则 。
例如:等式
BABA
若用 F=AC代替 A,则根据代入规则,等式仍成立,即 CBABCABCA
利用代入规则,可以将基本公式推广为多变量的形式,扩大公式的使用范围
⑵ 逻辑代数的三条规则公式
⒉ 反演规则
将逻辑表达式中所有
·变 +,+变成 ·(注意省略的,·”号),
1变成 0,0变成 1,原变量变成反变量,
反变量变成原变量,
即得到原逻辑函数的反函数。
反演规则常用于从已知原函数求出其反函数。
⑵ 逻辑代数的三条规则公式
例:
CDCBAF 1
CDC)BA(F 1
E)DCBA(F 2
E)DCB(AF 2
⑵ 逻辑代数的三条规则公式
利用反演规则时须注意以下两点:
⑴ 仍需遵守,先括号,然后乘,最后加,
的运算顺序 。
⑵ 不属于单个变量上的长非号,在利用反演规则时应保持不变,而长非号下的变量及 ·和+号符号仍按反演规则处理 。
德 ·摩根定理实际上是反演规则的一个特例 。
BAF BAF BAF
⑵ 逻辑代数的三条规则公式
⒊ 对偶规则
将逻辑函数 F中的,·”换成,+,,,+,
换成,·”,,0,换成,1,,,1,换成,0,,即可求得 F的对偶式 F‘。 若两个逻辑函数相等,则它们的对偶式也相等;
反之亦然 。
例:求下列逻辑函数的对偶式,)(
1 CBAF CDABF2 DCABF3
BCAF'1 ))(('2 DCBAF CDBAF )('3
⑵ 逻辑代数的三条规则公式
有时为了证明两个逻辑式相等,可以通过证明它们的对偶式相等来完成,因为有时证明对偶式相等更容易 。
例:证明 A+BC=(A+B)(A+C)
证明:先写出等式两边的对偶式
等式左边 =A(B+C) 等式右边 =AB+AC
根据分配律 A(B+C)=AB+AC知对偶式相等,由对偶规则知 A+BC=(A+B)(A+C)
使用对偶规则时,同样要注意运算的优先级别;
正确使用括号;原式中的长非号,短非号均不变 。
⑶ 若干常用公式
利用基本公式不难证明下列各式也是正确的,
直接运用这些公式,可以给化简带来很大方便 。
ABAAB
BABAA AABA
BCCAABCAAB
B C DCAABCAAB
BAABBABA
BA?
),.,,0,1(),.,,,( zxfzxxxf?
),...1,0(),...0,1(),...,( zfxzxfzxxf
表 1-15 若干常用公式
⑤
添加律
②吸收律
①合并律
⑥
=A⊙ B
③
④
⑶ 若干常用公式
现将表中公式证明如下:
ABAAB
AABBABAAB 1)(
这个公式的含义是当两个乘积项相加时,
若它们分别包含 B和 两个因子,而其它因子相同,则两项定可合并,且能将 B和两个因子消掉。
B
B
⑶ 若干常用公式
A+AB=A
A+A·B=A(1+B)=A·1=A
此式表明:两个乘积项相加,若其中一项以另一项为因子,则该项是多余的 。
⑶ 若干常用公式
结果说明:两个乘积项相加时,如果一项取反后,是另一项的因子,则此因子是多余的,可以消去 。
BABAA
BABA
BAAABAA
)(1
))((
⑶ 若干常用公式
证明:
BCCAABCAAB
BCCAAB
CABBA
CABAABCAAB
))((
))((
⑶ 若干常用公式
逆证:
BCCAABCAAB
CAAB
BCACAB
BCAA B CCAAB
BCAACAABBCCAAB
)1()1(
)(
该式说明:两个与项相加时,若它们分别包含
A和 因子,则两项中的其余因子组成可添加的第三个与项 。 其逆式也成立,即三个与项相加时,若两项中分别有 和 A因子,而这两项的其余因子组成第三个乘积项时,则第三个乘积项是多余的,可以消去 。
A
A
该公式的推论是:
B C DCAABCAAB
⑶ 若干常用公式
BAABBABA
BAAB
BABA
BABABABA
))((
证明:
⑶ 若干常用公式
例:
),.,,0,1(),.,,,( zxfzxxxf?
变量 x和含有变量 x的逻辑函数相乘时,函数 f中的
x 用 1 代替,用 0 代替,依据是 x·x=x=x·1 ;
x· =0=x·0。x
x
)])(([ EADACAABAF
)()1(
)()])(([
EBAAEABDAEABAD EAEAB
DEDAAEAABEADACAABAF
F=A[1·B+0·C+(1+D)(0+E)]=A(B+E)
⑶ 若干常用公式
),...1,0(),...0,1(),...,( zfxzxfzxxf
例,GHAEDACAABF )()(
)()(
])1()0(10[
])0()1(01[
)()(
GDECAHGEBA
GHEDCBA
GHEDCBA
GHAEDACAABF
⒌ 逻辑函数及其表示法
⑴ 逻辑函数
数字电路研究的是输出变量和输入变量之间的逻辑关系 。 图 1-11示出二输入,一输出的数字电路框图 。
A
B F=f(A,B)
图 1-11数字电路框图数字电路当输入变量 A,B
取值为逻辑值 0或
1时,输出 F也只能是 0或 1。
⒌ 逻辑函数及其表示法
在处理逻辑问题时,可用多种方法来表示逻辑函数,其常用表示方法有真值表,逻辑表达式,卡诺图和逻辑图等 。
⑴ 真值表表示法
描述逻辑函数各个变量取值组合和函数值对应关系的表格,称为真值表 。
由于每一个输入变量有 0,1两个取值,n个输入变量有 2n个不同的取值组合,将输入变量的全部取值组合和相应的函数值一一列举出来,即可得到真值表 。
通常输入变量的全部取值组合按二进制顺序进行,以防遗漏,并方便检查 。
⑴ 真值表表示法
真值表直观明了,把实际逻辑问题抽象为数学问题时,使用真值表很方便 。 当变量较多时,为避免烦琐可只列出那些使函数值为 1的的输入变量取值组合 。
例:三人就某一提议进行表决,试列出表决结果的真值表 。
⑴ 真值表表示法
解:设输入变量 A,B、
C代表三人,F代表表决结果,两人以上同意者为 1( 表示通过 ),否则为 0。
A,B,C:同意为 1,不同意为 0。
F:通过为 1,不通过为 0。
则真值表为:
0
0
0
1
0
1
1
1
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
FA B C
表 1-16 表决逻辑真值表
⑵ 函数表达式表示法
用与,或,非等运算表示函数中各个变量之间逻辑关系的代数式子,叫做函数表达式 。
由真值表求函数表达式最方便 。
找出那些使函数值为 1的变量取值组合,变量值为 1的写成原变量,为 0的写成反变量,
这样对应于使函数值为 1的每一个组合就可以写出一个乘积项,把这些乘积项加起来,
可以得到函数的原函数的标准与或式 。
把函数值为 0的对应乘积项相加,则得反函数 。
⑵ 函数表达式表示法
例:写出表决逻辑的原函数和反函数的标准与或式 。
解,
A B CCABCBABCAF
CBACBACBACBAF
0
0
0
1
0
1
1
1
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
FA B C
表 1-16 表决逻辑真值表
⑵ 函数表达式表示法
特点:
⑴ 简洁方便 。 能高度抽象而且概括地表示各个变量之间的逻辑关系 。
⑵ 便于利用逻辑代数的公式和定理进行运算,
变换 。
⑶ 便于利用逻辑图实现函数 。
⑷ 缺点是难以直接从变量取值看出函数的值,
不如真值表直观 。
⑶ 逻辑图表示法
把函数表达式输入变量间的逻辑关系用逻辑符号表示出来而得到的电路图,称逻辑图 。
逻辑图只反映电路的逻辑功能,而不反映电器性能 。
一般可根据逻辑表达式画逻辑图 。 方法是把逻辑表达式中相应的运算用门电路的符号来代替 。
⑶ 逻辑图表示法
例:将 F=AB+BC+CA画成逻辑图 。 如表决逻辑图所示 。
≥1
A
B
C F
表决逻辑逻辑图
&
&
&
⑷ 卡诺图表示法
卡诺图 ( Karnaugh Map) 是逻辑函数的一种图形表示方法 。
卡诺图和真值表一样可以表示逻辑函数和输入变量之间的逻辑关系 。
卡诺图是用图示方法将各种输入变量取值组合下的输出函数值一一表达出来 。
A B 0 1
0
1
0 1
2 3
A B F
0 0
0 1
1 0
1 1
图 1-13 二变量卡诺图与相应真值表对应关系
⒍ 逻辑函数化简
逻辑函数表达式按表达式中乘积项的特点,
以及各个乘积项间的关系进行分类,大致可分成:与或表达式,或与表达式,与非与非表达式,或非或非表达式,与或非表达式五种,
ACBCABF
CACBBAF
ACCBBAF
F=AB+BC+AC 与或表达式
F=(A+B)(B+C)(C+A) 或与表达式与非与非表达式或非或非表达式与或非表达式
⒍ 逻辑函数化简
一般说来,表达式越简单,实现起来逻辑电路也越简单。对于不同类型的表达式,简单的标准是不一样的。以与或表达式为例,最简与或表达式应满足①乘积项的个数应该是最少的②在满足乘积项个数最少的条件下,
要求每一个乘积项中变量的个数也最少。
与或表达式最简,由它转换得来的表达式,
一般来说也就最简。
⒍ 逻辑函数化简
⑴ 逻辑函数的代数 ( 公式 ) 化简法
代数化简法的实质就是反复使用逻辑代数的基本公式和常用公式消去多余的乘积项和每个乘积项中多余的因子,以求得函数式的最简与或式 。 因此化简时,没有固定的步骤可循 。
现将经常使用的方法归纳如下:
⒍ 逻辑函数化简
① 吸收法:根据公式 A+AB=A可将 AB项消去,A和 B同样也可以是任何一个复杂的逻辑式 。
BCDCBABCAAF )(?例:化简
BCA
DCBABCABCA
BCDCBABCAA
BCDCBABCAAF
))(()(
))((
)(?解,将 A+BC看成一项
⒍ 逻辑函数化简
② 消因子法:
EBAEBBA
EBABAF
1
利用公式 可将 中的因子 消去。 A,B均可是任何复杂的逻辑式。
BABAA BA
A
例:
CDBABA
CDBABABABA
CDBAABBABA
CDBAA B C DBABAF
)(
2
⒍ 逻辑函数化简
③ 合并项法 (1):
ABAAB运用公式 可以把两项合并为一项,并消去 B和 这两个因子。根据代入规则,A和 B可以是任何复杂的逻辑式。
B
例:化简 B C DDCBDBCDCBF
BBCCB
DDBCDDCB
B C DDBCDCBDCB
B C DDCBDBCDCBF
)()(
)()(
⒍ 逻辑函数化简
③ 合并项法 (2):
1 AA?利用公式 可以把两项合并为一项,并消去一个变量。
例:
1
)(
1
BCBC
BCBCAA
BCBCAA B CF
ABAAB
CCBACCAB
CBACABCBAA B C
CBCBACBBCAF
)()(
)()(
2
⒍ 逻辑函数化简
④ 配项法
例:
A B C
ABA B CA B CAB
ABA B CABCAB
ABABABA B CCAB
ABA B CCABF
)(
2
式中的某一项乘以 或加,AA?
然后拆成两项分别与其它项合并,进行化简。
AA?
CACBBA
BBCAACBCBA
CBABCACBACBCBABA
CBACBACBCBABCABA
CBAACBCCBABA
CBCBBABAF
)()1()1(
)()()(
)()(
1
⒍ 逻辑函数化简
⑵ 逻辑函数的卡诺图化简法
① 卡诺图表示法
卡诺图 ( Karnaugh Map) 是逻辑函数的一种图形表示方法 。
卡诺图和真值表一样可以表示逻辑函数和输入变量之间的逻辑关系 。 卡诺图是用图示方法将各种输入变量取值组合下的输出函数值一一表达出来 。
⒍ 逻辑函数化简
② 最小项
对于 n个变量,如果某乘积项含有 n个因子,
每个因子或以原变量或以反变量的形式仅仅出现一次,则这个乘积项称为最小项 。
n个变量一共有 2n个最小项 。 因为每一个变量都有两种状态 — 原变量和反变量,而变量一共有 n个 。
⒍ 逻辑函数化简
③ 最小项编号
编号方法:把与最小项对应的那一组变量取值组合当成二进制数,与其对应的十进制,
就是该最小项的编号 。
下表为三变量的最小项及其编号 。
⒍ 逻辑函数化简表 1-17 三个变量的最小项及其编号
CBA
CBA
CBA
BCA
CBA
CBA
CAB
ABC
m0
m1
m2
m3
m4
m5
m6
m7
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
2
3
4
5
6
7
最小项编号最小项A B C序号
⒍ 逻辑函数化简
④ 最小项性质
ABCCBA CBA CBA BCA CBA CBA CABABC
表 1-18 三变量最小项真值表
m7m6m5m4m3m2m1m0编号
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
000
001
010
011
100
101
110
111
⑴ n个变量的逻辑函数有 2n个最小项。⑵ 每一个最小项对应了一组变量取值,任意一个最小项,只有对应的那一组取值使其值为 1,其它均为 0。⑶ 任意两个最小项之积恒为 0,记作,mi·mj=0( i≠j)⑷ 所有最小项的逻辑和为 1,记作Σmi=1( i=0,1,2,··,2n- )⑸ n个变量逻辑函数的每一个最小项都有 n个相邻项。 相邻是指逻辑相邻。⑹ 两个最小项相加可以消去互为反变量的因子。
⒍ 逻辑函数化简
⑤ 最小项是组成逻辑函数的基本单元
任何逻辑函数都可以表示成为最小项之和的形式 — 标准与或式,并且这种形式是唯一的 。
就是说,一个逻辑函数只有一个最小项之和的表达式 。
⒍ 逻辑函数化简
例:写出 F=AB+BC+AC的最小项表达式
解:
m
3567
)3,5,6,7(
mmmm
BCACBACABA B C
CBAA B CBCAA B CCABA B C
)BB(AC)AA(BC)CC(AB
ACBCABF
⒍ 逻辑函数化简
⑥ 逻辑函数的卡诺图
⑴ 最小项卡诺图的画法
① 画正方形或矩形,图形中分割出 2n个小方格,n为变量的个数,每个最小项对应一个小方格 。
② 变量取值按循环码排列 ( Gray Code),
其特点是相邻两个编码只有一位状态不同 。
变量卡诺图形象地表达了变量各个最小项之间在逻辑上的相邻性 。
⒍ 逻辑函数化简
A B C A B C A B C A B C
A B C A B C A B C A B C
A
B C
B C B C B C B C
A
A
每格标最小项
0 0 0 0 0 1 0 1 1 0 1 0
A
B C
0 0 0 1 1 1 1 0
0
1
1 0 0 1 0 1 1 1 1 1 1 0
每格标变量取值
m
0
m
1
m
3
m
2
A
B C
0 0 0 1 1 1 1 0
0
1
m
4
m
5
m
7
m
6
每格标最小项编号
0 1 3 2
A
B C
0 0 0 1 1 1 1 0
0
1
4 5 7 6
每格标最小项编号的简写图 1-13 三变量卡诺图
① 三变量卡诺图
② 四变量卡诺图
AB
CD00 01 11 10
00
01
0 1 3 2
4 5 7 6
11
10 8 9 11 10
14151312
ABCD00 01 11 10
00
01
m0
11
10
m1 m3 m2
m4 m5 m7 m6
m12 m13 m15 m14
m8 m9 m11 m10
⒍ 逻辑函数化简
⒍ 逻辑函数化简
③ 五变量卡诺图
0 0 0 0 0 1 0 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0
0 0
0 1
1 1
1 0
C D E
A B
0 1 3 2 6 7 5 4
8 9 1 1 1 0 1 4 1 5 1 3 1 2
2 4 2 5 2 7 2 6 3 0 3 1 2 9 2 8
1 6 1 7 1 9 1 8 2 2 2 3 2 1 2 0
图 1-15 五变量卡诺图
注意:五变量以上卡诺图很少使用。
⒍ 逻辑函数化简
在卡诺图中,一个最小项对应图中一个变量取值的组合 ( 反映在编号上 ) 的小格子,两个逻辑相邻的最小项对应的小格子位置间有以下三种情况:
相接 — 紧挨
相对 — 各在任一行或一列的两头
相重 — 对折起来位置相重合
⒍ 逻辑函数化简
在卡诺图上,两个相邻最小项合并时,相当于把其圈在一起组成一个新格子 。 新格子和两相邻最小项消去变化量之后的式子相对应 。
如图所示 。
A
BC00 01 11 10
0
1 CBA
CBA CBA
CBA
BCA
ABC
CBA
CAB
新格子含二个小格子,可用 BC代表
⒍ 逻辑函数化简
⑵ 逻辑函数的卡诺图
用卡诺图来表示逻辑函数 。 通常逻辑函数的卡诺图可由以下三种情况获得:
① 根据逻辑函数的真值表 ( 给出真值表时 )
根据逻辑函数的变量个数选择相应的卡诺图然后根据真值表填写卡诺图中的每个小方块,
即在对应于变量取值组合的每一小方块中,
函数值为 1时填 1,为 0时填 0,即得函数的卡诺图 。
⒍ 逻辑函数化简
例:表决逻辑的卡诺图为
B C
A
0 0 0 1
1 1 1 0
1
图
1 - 1 7
表 决 逻 辑 卡 诺 图
0 0 0
0
0 1
1
1 1
0
0
0
1
0
1
1
1
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
FA B C
表 1-16 表决逻辑真值表
⒍ 逻辑函数化简
② 根据逻辑函数的最小项表达式 ( 给出的是最小项表达式 )
将对应的逻辑函数的最小项的小方格填入 1,
其它的方格填入 0。
③ 根据一般的逻辑表达式 ( 这是经常出现的 )
首先将函数变换成与或式,但不必变为最小项之和的表达式 。 在变量卡诺图中,把每一乘积项所包括的那些最小项对应的格子都填上 1,剩下的填 0。
⒍ 逻辑函数化简
注:每一乘积项是其所包含的最小项公因子 。
每一乘积项包含的最小项的格子数是 2,4,
8…… 即 2n,而不能是 3,5,……,若变量为 n个,每个最小项应出现的变量 ( 或反变量 ) 应为 n 个,其 公 因 子 为 m 个变量
( m<n),该公因子包含的最小项个数为 2n-
m。
故 m越小,该公因子所包含的最小项的个数越多 。
⒍ 逻辑函数化简
例:
A
0 0 0 1
1 1 1 0
1
A C
0 0 0
0
0 1
1
1 1
A B
B C
B C
CA)CB()BA(F
CABCAB
CACBBA
CACBBA
CA)CB()BA(F
⒍ 逻辑函数化简
函数的真值表,标准与或式和卡诺图都是唯一的 。 三者之间有一一对应的关系 。 卡诺图只不过是真值表和标准与或式的阵列图表达形式 。
卡诺图的最突出的优点是用几何位置相邻表达了构成函数的各个最小项在逻辑上的相邻性 。 可以很容易地求出函数的最简与或式,
使其在函数的化简和变换中得到应用 。
⒍ 逻辑函数化简
⑦ 逻辑函数的卡诺图化简法
利用卡诺图进行化简,简捷直观,灵活方便,
且容易确定是否已得到最简结果 。
用卡诺图化简逻辑函数一般可按以下步骤进行:
(a)画出函数的卡诺图
(b)画包围圈,合并最小项
在卡诺图中,凡是相邻的最小项均可合并,
合并时,可消去有关变量 。
⒍ 逻辑函数化简
例:三变量卡诺图二相邻最小项的合并
BACBABCA
A
0 0 0 1
1 1 1 0
1
0
3
2
B C CBCABCBA
A
0 0 0 1
1 1 1 0
1
0
2
6
B C
CBCBACBA
A
0 0 0 1
1 1 1 0
1
0
1
5
B C
⒍ 逻辑函数化简
例:四变量卡诺图二相邻最小项的合并
AB DAB C DDCBA
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
ACDAB C DCDBA
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
⒍ 逻辑函数化简
例:四变量卡诺图二相邻最小项的合并
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
DCBDCBADCBA
A B
C D
0 0
1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
DBADBCADCBA
⒍ 逻辑函数化简
例:三变量卡诺图四相邻最小项的合并
A
B
C
0 0 0 1 11 1 0
0
1
0 1 3 2
4 5
7
6
BAB CCABBCACBA
BCBACBACBACBA
CCABCBACBACBA
A
B
C
0 0 0 1
1 1
1 0
0
1
0 1 3 2
4 5
7
6
A
C
B
00
0
1
11 1 0
0
1
0 1 3 2
4 5
7
6
⒍ 逻辑函数化简
例:四变量卡诺图四相邻最小项的合并
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
BAB CDADBCADCBADCBA DBDA B CDCABDBCADCBA
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
⒍ 逻辑函数化简
例:四变量卡诺图四相邻最小项的合并
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
ADAB CDDCABCDBADCBA
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0
1 3 2
4 5
7
6
1 1
1 0
8
9
1 1
1 0
1 41 51 31 2
DBDCBADCBADCBADCBA
⒍ 逻辑函数化简
例:四变量卡诺图八相邻最小项的合并
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0
1 3 2
4 5
7
6
1 1
1 0
8
9
1 1
1 0
1 41 51 31 2
B
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0
1 3 2
4 5
7
6
1 1
1 0
8
9
1 1
1 0
1 41 51 31 2
B
⒍ 逻辑函数化简
例:四变量卡诺图八相邻最小项的合并
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0
1 3 2
4 5
7
6
1 1
1 0
8
9
1 1
1 0
1 41 51 31 2
C D
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0
1 3 2
4 5
7
6
1 1
1 0
8
9
1 1
1 0
1 41 51 31 2
⒍ 逻辑函数化简
(c)选择乘积项,写出最简与或表达式 。
选择乘积项时,必须包含全部最小项,选用的乘积项的总数应该最少,每个乘积项所包含的因子也应该最少 。
例:化简函数 CBADCACBCDBF
⒍ 逻辑函数化简
解:①画出函数的卡诺图
② 合并最小项
③ 选择乘积项写出最简与或表达式
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
1 1
1 0
3
11
4 5
12 13
1
10
BCD=∑(3,11)
BC=∑(4,5,12,13)
ACD=∑(1,5)
ABC=∑(3,11)
CBADBACBF
例:化简函数 CBADCACBCDBF
⒍ 逻辑函数化简
解:①画出函数的卡诺图
② 合并最小项
③ 选择乘积项写出最简与或表达式
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
1 1
1 0
3
11
4 5
12 13
1
10
BCD=∑(3,11)
BC=∑(4,5,12,13)
ACD=∑(1,5)
ABC=∑(3,11)
CBADBACBF
1
1 1
1 1
1 1
化简时应注意的几个问题:
⑴ 圈 1得原函数,圈 0得反函数
⑵ 圈必须覆盖所有的 1。
⑶ 圈中 1的个数必须是 2n个相邻的 1。
⑷ 圈的个数必须最少 (乘积项最少 )。
⑸ 圈越大越好 ( 消去的变量多 ) 。
⑹ 每个圈至少包含一个新的最小项 。
⑺ 写出最简与或式 。
⒍ 逻辑函数化简
⒍ 逻辑函数化简
例:化简函数
F=∑(1,4,5,6,8,12,13,15)。
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
1 1
1 0
解:
①画出 F的卡诺图
② 合并最小项
1
4 5 6
8
12 13 15
③ 写出最简与或表达式 冗余舍去
A B DDCADBADCAF
具有无关项的逻辑函数及其化简
⑴ 约束项,任意项和无关项
在分析某些具体的逻辑函数时,常遇到输入变量的取值不是任意的情况 。 对输入变量的取值所施加的限制为约束 。 这些受约束的变量取值组合所对应的最小项叫约束项 。
⒍ 逻辑函数化简
例如用三个逻辑变量 A,B,C分别表示一台电动机的正转,反转和停止命令 。 A=1表示正转,B=1表示反转,C=1表示停止 。
因为电动机任何时候只能执行其中一个命令,
所以不允许两个命令同时为 1,即 ABC的取值只能是 001,010,100中的一种,不能是
000,011,110,101,111中的任一种 。 因此 A,B,C是一组具有约束的变量 。
⒍ 逻辑函数化简
通常用约束条件来描述约束的具体内容 。
由于每一组输入变量的取值都使一个,且仅有一个最小项的值为 1,所以当限制某些输入变量不能出现时,可以用它们对应的最小项恒等于 0来表示 。
上面例子中的约束条件可写为:
0?CBA 0?BCA 0?CAB 0?CBA 0?ABC
⒍ 逻辑函数化简
或写为:
0 ABCCBACABBCACBA
⒍ 逻辑函数化简
有时也会遇到在某些输入变量取值下不影响输出函数 。 例如对于 8421编码只出现 0000~
1001,而 1010~ 1111这 6种取值与 8421码无关 。 通常把与输出逻辑函数无关的最小项称作任意项 。
在不严格区分时,约束项和任意项统称为无关项 。
无关是指把它们是否写入逻辑式中无关紧要,
可写可不写 。 在卡诺图中填入,×,或,Φ”
表示 。
最小项和无关项的表示方法,
m **)*(*
d **)*(*d
最小项之和无关项之和
⒍ 逻辑函数化简
⒍ 逻辑函数化简
⑵ 无关项在化简逻辑函数中的应用
在存在无关项的情况下,可以把一个或几个无关项写进逻辑函数中,也可以把无关项从函数式中删掉,不影响函数值 。 因此在逻辑函数化简时,利用无关项有时会给化简带来方便 。
在卡诺图上,究竟将,×,作为,1”还是,0”
对待,应以得到的相邻最小项矩形组合最大,
而且矩形组合数目最少为原则 。
⒍ 逻辑函数化简
例:化简具有约束项的逻辑函数
DCBAB C DADCBAF
已知约束条件为
0
DCBADA B CA B C D
DCBADCABDCBACDBA
解:如果不利用约束项,F已无从化简,
适当写入一些约束项后,可以得到
DADA
DACDCABDADBA
DCBADA B CDCABDCBA
DCBAB C DACDBACBAF
⒍ 逻辑函数化简
可见,利用了约束项以后,能使逻辑函数进一步化简 。
但在确定应该写入哪些约束项时还不够直观 。
如果改用卡诺图化简法,则只要将 F的卡诺图画出,立即就能看出化简时对这些约束项应如何取舍 。
⒍ 逻辑函数化简
如下图所示 。 化简结果与代数法相同 。
DADAF
1
A B
C D
0 0 0 1 1 1 1 0
0 0
0 1
约 束 项 化 简 例 题
0
1 ×
0
0 ×
0
1 1
1 0
×
1
0
×
×
0
×
×
⒍ 逻辑函数化简
例:化简逻辑函数
F(A,B,C,D)=∑m(0,1,2,3,6,8)+∑d(10,11,12,1
3,14,15)。
DADCBA
DCBAF
),,,(
A B
C D
0 0 0 1 1 1
1 0
0 0
0 1
约 束 项 化 简 例 题
1 1 1 1
0
0
0 1
1 1
1 0
×
1
×
0
×
×
×
×
⒍ 逻辑函数化简
A B
C D
0 0 0 1 1 1
1 0
0 0
0 1
× 0
1
×
× 1
1 1
1 0
0
1
0
1
0
0
1
×
×
×
DCBAA B DDBAF
例:化简逻辑函数
F(A,B,C,D)=∑m(15,13,10,6,4)+∑d(8,7,5,2,1,0)
不考虑无关项
考虑无关项
DBBDBAF
⒍ 逻辑函数化简
通常,从逻辑问题概括出来的逻辑函数不一定是最简的,所以就要求对逻辑函数进行化简,找到其最简单的表达式。
此外,有时逻辑函数表达式是最简的形式,
但是它不一定适合给定的逻辑门,这种实际情况又要求对已有的最简式进行适当的变换,才能用给定的逻辑门画出逻辑电路图。
⒍ 逻辑函数化简
一个逻辑函数可有多种不同的表达形式,
这些表达式可以互相转换,例如:
BABA
BABA
BABA
BABA
BABA
BABA
BAAB
BAABF
)()(
)()(
与或表达式与非与非表达式或与非表达式与或非表达式或非或表达式与非与表达式或与表达式或非或非表达式
⒍ 逻辑函数化简
与或表达式是最常用的一种逻辑表达式,
最简与或表达式的标准是:式中含的与项最少;各与项中含的变量数最少。
有了最简的与或表达式,就很容易得到其他形式的最简表达式。
这里只介绍了两种与或表达式的化简方法。
一种是公式化简法;另一种是卡诺图化简法。
⒍ 逻辑函数化简
例 2:化简函数
F=∑(1,3,5,9)+∑d(7,11,13)。
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
1 1
1 0
解,①画出 F的卡诺图
② 合并最小项 1 1
1 ×
1
×
×
③ 写出最简与或表达式
DCDA
DCDA
DCDAF
DAC
DCA
DCDAF
)(
⒍ 逻辑函数化简
例 2:化简函数
F=∑(1,3,5,9)+∑d(7,11,13)。
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
1 1
1 0
解,①画出 F的卡诺图
② 合并最小项 1 1
1 ×
1
×
×
③ 写出最简与或表达式
DAB
DBA
DBDAF
)(
DBDA
DBDA
DBDAF
⒍ 逻辑函数化简
例 2:化简函数
F=∑(1,3,5,9)+∑d(7,11,13)。
DCDA
DCDA
DCDAF
DAC
DCA
DCDAF
)(
1 4
1 3 1 2 1 1 1 0 9 8
7654321
7 4 L S 0 0
V
C C
G N D
&
&
&
&
A
C
D
A
C
D
F
&
& &
A
C
D
F
&
&
&
1
1
F
⒍ 逻辑函数化简
A
C
D
F
&
&
&
1
1
1 4
1 3 1 2 1 1 1 0 9 8
7654321
7 4 L S 0 0
V
C C
G N D
&
&
&
&
A
C
D
1 4
1 3 1 2 1 1 1 0 9 8
7654321
7 4 L S 0 0
V
C C
G N D
&
&
&
&
F
作业:
P22:
1-1— 1-7; 1-10,1-15,1-17,
1-19— 1-21
本章主要介绍数字电路中常用的几种数制的表示方法及其转换规律,数字系统中常见的几种编码及逻辑代数知识。
1.1计数体制
数是用来表示物理量多少的。常用多位数表示。
通常,把数的组成和由低位向高位进位的规则称为数制 。
在数字系统中,常用的数制包括 十进制数
(decimal),二进制数 (binary),八进制数
(octal)和十六进制数( hexadecimal)。
1.1.1十进制数
组成,0,1,2,3,4,5,6,7,8,9
进位规则:逢十进一 。
不同位置数的权不同,可用 10i表示 。
i在 (n-1)至 -m间取值 。
n为十进制数的整数位位数,
m为小数位位数 。
10称为基数 (radix或 base)。
1.1.1十进制数
例,666.66
666.66=6× 102+6× 101+6× 100+
6× 10-1+6× 10-2
十 进 制 位 置 记 数 法
(Positional notation);
多项式表示法
(Polynomial notation)。
102,101,100,10-1,10-2表示每位数对应的权值,
6为系数。
1.1.1十进制数
任意一个十进制数都可以写成:
1
i10 10
n
mi
iaM
n是整数位位数
m是小数位位数
ai是第 i位系数
10i是第 i位的权,
10是基数。
1.1.1十进制数
任意进制数的按权展开式
1n
mi
i
iR RaM
R为基数
ai为 0~ (R- 1)中任意一个数字符号
Ri为第 i位的权值 。
1.1.2二进制数
组成,0,1
进位规则:逢二进一
一个二进制数 M2可以写成:
1
2 2
n
mi
i
iaM
1.1.2二进制数
一个二进制数的最右边一位称为最低有效位,常表示为 LSB(Least Significant Bit),
最左边一位称为最高有效位,常表示为
MSB(Most Significant Bit)。
例:试标出二进制数 11011.011的 LSB,
MSB位,写出各位的权和按权展开式,求出其等值的十进制数 。
1.1.2二进制数
M2=11011.0112=1× 24+1× 23+0× 22+1× 21+
1× 20+0× 2-1+1× 2-2+1× 2-3=27.37510
1 1 0 1 1,0 1 1
24 23 22 21 20 2-1 2-2 2-3
MSB LSB
1.1.3八进制数和十六进制数
⒈ 八进制数
组成,0,1,2,3,4,5,6,7、
进位规则:逢八进一
权值,8i 基数,8
1.1.3八进制数和十六进制数
⒉ 十六进制数
组成,0,1,2,3,4,5,6,7,8,9,A、
B,C,D,E,F
其中 A~ F的等值十进制数分别为 10,11、
12,13,14,15
进位规则:逢十六进一
1.1.3八进制数和十六进制数
八进制数和十六进制数均可写成按权展开式,并能求出相应的等值十进制数。
18 8n
mi
i
iaM
116 16n
mi
i
iaM
1.1.3八进制数和十六进制数
例:求八进制数 6668的等值十进制数 。
解:
6668=6× 82+6× 81+6× 80=384+48+6=43810
例:一个十六进制数 2AF16的等值十进制数是多少?
解:
2AF16=2× 162+A× 161+F× 160
=2× 162+10× 161+15× 160=68710
1.1.4二进制数和其它进制之间的转换
⒈ 十进制数转换成二进制数
将十进制数 M10转换为二进制数,一般采用将 M10的整数部分和小数部分分别转换,然后把其结果相加 。
设 M10 的整数部分转换成的二进制数为
an-1an-2… a1a0
可列成下列等式:
M10=an-12n-1+an-22n-2+… +a121+a020
1.1.4二进制数和其它进制之间的转换
( 1) 整数部分转换
设 M10 的整数部分转换成的二进制数为
an-1an-2… a1a0
可列成下列等式:
M10=an-12n-1+an-22n-2+… +a121+a020
将上式两边同除以 2,两边的商和余数相等 。
所得商为 an-12n-2+an-22n-3+… +a221+a1,余数为 a0,经整理后有:
1.1.4二进制数和其它进制之间的转换
再将上式两边同时除以 2,可得余数 a1,依次类推,便可求出二进制数的整数部分的每一位系数 an-1,…,a1,a0。
在转换中注意除以 2一直进行到商数为 0止 。
这 就 是 所 谓 除 基 取 余 法 (Radix Divide
Method)。
12
4
2
3
1
010 )22(2
2 aaaa
aM n
n
n
n
1.1.4二进制数和其它进制之间的转换
例:将十进制数 2510转换为二进制数 。
解:
∴ 2510=110012
252
62
32
12
余 1= a0
0
122
余 0= a1
余 0= a2
余 1= a3
余 1= a4
1.1.4二进制数和其它进制之间的转换
( 2) 小数部分转换
设 M10的小数部分转换成二进制数为
a-1a-2… a-m,可写成等式:
M10=a-12-1+a-22-2+… +a-m2-m
将上式两边同时乘以 2得
2× M10=a-120+a-22-1+… +a-m2-m+1
上式中乘积的整数部分就是系数 a-1,而乘积的小数部分为:
1.1.4二进制数和其它进制之间的转换
2× M10-a-1=a-120+a-22-1+… +a-m2-m+1
对上式两边再同乘以 2,则积的整数部分为系数 a-2,依次类推,便可求出二进制数的小数部分的每一位系数,这就是所谓乘基取整法 (Radix Multiply Method)。
在转换过程中,乘 2过程一直继续到所需位数或达到小数部分为 0止 。
1.1.4二进制数和其它进制之间的转换
例:将 0.2510转为二进制数 。
解,0.2510× 2=0.5 整数 =0=a-1 MSB
0.510× 2=1.0 整数 =1=a-2 LSB
即 0.2510=0.012
由上两例可得 25.2510=11001.012
也可以用不同位权值相加等于十进制数的办法将十进制数转换成二进制数 。
如 25=16+8+1=24+23+20=11001。
1.1.4二进制数和其它进制之间的转换
⒉ 二进制数和八进制数之间的转换
三位二进制数恰好等于一位八进制数,8=23。
对于二进制数,从小数点处开始,分别向左,
右按三位分为一组,每组就对应一位八进制数,组合后即得到转换的八进制数 。
将八进制数转换为二进制数时,把每位八进制数写成等值的二进制数,再连接起来,即得到二进制数 。
1.1.4二进制数和其它进制之间的转换
例:将八进制数 2748转换成二进制数 。
解:
∴ 2748=101111002
2 7 4
010 111 100
1.1.4二进制数和其它进制之间的转换
⒊ 二进制数与十六进制数之间的转换
因为 16=24,所以 4位二进制数代表一位十六进制数 。
将二进制数从小数点处开始,分别向左,右按每四位分为一组,每组用相应的十六进制数表示,组合后可得到相应的十六进制数 。
1.1.4二进制数和其它进制之间的转换
例:将 10101111.00010110112转换成十六进制数 。
解:
∴ 10101111.00010110112=AF.16C16
1010 1111,0001 0110 1100
A F,1 6 C
几种数制之间的关系对照表 (1)
0
1
2
3
4
5
6
7
8
9
A
十六进制
0
1
2
3
4
5
6
7
10
11
12
八进制
00000
00001
00010
00011
00100
00101
00110
00111
01000
01001
01010
二进制
0
1
2
3
4
5
6
7
8
9
10
十进制几种数制之间的关系对照表 (2)
B
C
D
E
F
10
11
12
13
14
十六进制
13
14
15
16
17
20
21
22
23
24
八进制
01011
01100
01101
01110
01111
10000
10001
10010
10011
10100
二进制
11
12
13
14
15
16
17
18
19
20
十进制
1.2常用编码
编码:是指用文字,符号,数码等表示某种信息的过程 。
数字系统中处理,存储,传输的都是二进制代码 0和 1,因而对于来自于数字系统外部的输入信息,例如十进制数 0~ 9或字符 A~ Z,
a~ z等,必须用二进制代码 0和 1表示 。
二进制编码:给每个外部信息按一定规律赋予二进制代码的过程 。 或者说,用二进制代码表示有关对象 ( 信号 ) 的过程 。
1.2.1二 — 十进制编码( BCD码)
二 — 十进编码是用四位二进制代码表示一位十进制数的编码方式 。
BCD码的本质是十进制,其表现形式为二进制代码 。
如果任意取四位二进制代码十六种组合的其中十种,并按不同的次序排列,则可得到多种不同的编码 。
常用的几种 BCD码列于表 1-1中 ( 参见 P4表
1-1) 。
无权码542124212421无权码8421权
0010
0110
0111
0101
0100
1100
1101
1111
1110
1010
0000
0001
0010
0011
0100
1000
1001
1010
1011
1100
0000
0001
0010
0011
0100
1011
1100
1101
1110
1111
0000
0001
0010
0011
0100
0101
0110
0111
1110
1111
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
0
1
2
3
4
5
6
7
8
9
余 3循环码5421码2421码 (B)2421码 (A)余 3码8421码十进制表 1-1 常用的几种 BCD码种类
1.2.1二 — 十进制编码( BCD码)
⒈ 8421 BCD码
8421码是最常用的一种 BCD( Binary Coded
Decimal) 码,舍去四位二进制码的最后六个码,十位数和其二进制数有对应关系,为恒权码 。
多位十进制数,需用多位 8421 BCD码表示 。
例如 36910= 0011 0110 10018421。
1.2.1二 — 十进制编码( BCD码)
⒉ 余 3码
特点是每个余 3码所表示的二进制数要比它对应的十进制数多 3。
⒊ 2421和 5421码
二者均为恒权码 。 2421码有 A,B两种 。
1.2.2循环码
循环码是格雷码 (Gray Code)
中常用的一种,
其主要优点是相邻两组编码只有一位状态不同 。 以中间为对称的两组代码只有最左边一位不同 。
0 0 0 0
0 0 0 1
0 0 1 1
0 0 1 0
0 1 1 0
0 1 1 1
0 1 0 1
0 1 0 0
循 环 码
0
1
2
3
4
5
6
7
十进制数表 1-2 四位循环码
1 1 0 0
1 1 0 1
1 1 1 1
1 1 1 0
1 0 1 0
1 0 1 1
1 0 0 1
1 0 0 0
循 环 码
8
9
10
11
12
13
14
15
十进制数例如 0和 15,1和
14,2和 13等。
这称为反射性。
所以又称作反射码。而每一位代码从上到下的排列顺序都是以固定的周期进行循环的。
右起第一位的循环周期是
,0110”,第二位的循环周期是
,00111100”,
第三位的循环周期是
,0000111111110
000”等等。
是一种无权码。
四位循环码如表
1-2所示(参见
P5表 1-2)。
1.2.2循环码
循环码和二进制码之间保持确定关系,即已知一组二进制码,便可求出一组对应的循环码,反之亦然 。
设二进制码为 B=B3B2B1B0,循环码为
G=G3G2G1G0
Gi=Bi+1⊕ Bi
1.2.3 ASCII码
ASCII是 American National Standard Code
for Information Interchange美国国家信息交换标准代码的简称 。 常用于通讯设备和计算机中 。
它是一组八位二进制代码,用 1~ 7这七位二进制代码表示十进制数字,英文字母及专用符号 。 第八位作奇偶校验位 ( 在机中常为
0) 。
如表 1-3所示 ( 参见 P5表 1-3) 。
表 1-3 ASCII码
DELo_O?/USSI1111
~n^N>.RSSO1110
}m]M=-GSCR1101
|l\L<,FSFF1100
{k[K;+ESCVT(home)1011
zjZJ:*SUBLF(line feed)1010
yIYI9)EMHT(tab)1001
xhXH8(CANBS1000
wgWG7’ETBBEL(beep)0111
vfVF6&SYNACK0110
ueUE5%NAKENQ0101
tdTD4$DC4EOT0100
scSC3#DC3ETX0011
rbRB2”DC2STX0010
qaQA1!DC1SOH0001
p`P@0SPDLENUL(null)0000
111110101100011010001000b
4b3b2b1
b7b6b5
1.3 二极管和三极管的开关特性
1.3.1 二极管的开关特性
(一) 二极管导通条件及导通时的特点:
正向电压 VF≥0.7V
(二) 二极管截止条件及截止时的特点,VF≤0.5V(硅管)
如图所示
v
I
V
F
- V
R
0
t
1
t
( b ) 输 入 电 压 波 形
t
1
i
t0
I
F
I
R
( c ) 理 想 电 流 波 形
t
1
t
I
R
i
I
F
0
t
r e
- V
R
R
( d ) 实 际 电 流 波 形
i
v
I
R
( a ) 二 极 管 电 路在 t1时刻输入电压由 +VF
跳变到 -VR,会出现很大的反向电流的原因是 电荷存储效应 。
( a)二极管电路
( b)输入电压波形
( c)理想电流波形
( d)实际电流波形产生反向恢复时间 tre的原因如图 1-2所示反向恢复时间 tre为纳秒数量级,tre值愈小,开关速度愈快,允许信号频率愈高。
(三) 二极管反向恢复时间 tre
空 间 电 荷 区
P 区 N 区图 1 - 2 P 区 和 N 区 少 数载 流 子 存 储 情 况
1.3.2 三极管的开关特性
(一)截止、饱和的条件截止,VBE < 0V( 0.5V)
饱和,IB> IBS
临界饱和,VCE=VBE
此时,ICS=( VCC-0.3) /RC
≈VCC/RC
一般 VCES=0.1~ 0.3V
V
C C
R
C
R
b
v
0
v
I
T
图 1
-
3 三 极 管 开 关 电 路
(二)三极管的开关时间开启时间,ton=td+tr
延迟时间,td
上升时间,tr
关闭时间,tof=ts+tf
存储时间,ts
下降时间,tf
一般地 tof> ton,ts > tf
并且开关时间为纳秒数量极图1 - 4 三极管的开关时间
v
I
v
0
2 V
- 1 V
0
t
t
t
i
c
I
c s
0,9 I
c s
0,1 I
c s
t
d
t
r
t
s
t
f
t
o n
t
o f f
0
0
V
C E S
V
C C
1.4 逻辑代数基础
逻辑代数是分析和设计数字逻辑电路的数学工具 。
本节讨论,逻辑变量、逻辑函数、基 本 逻辑运算和逻辑代数公式,以及化简逻辑函数的两种方法 — 公式法和图形法 。
⒈ 逻辑电路中的几个问题
⑴ 逻辑值的概念
在数字系统中,通常用逻辑真和逻辑假状态来区分事物的两种对立的状态。
逻辑真状态用 ‘ 1’表示;逻辑假状态用 ‘ 0’
来表示。
‘ 1’和 ‘ 0’分别叫做逻辑真假状态的值。
0,1只有逻辑上的含义,已不表示数量上的大小。
⑵ 高、低电平的概念
以两个不同确定范围的电位与逻辑真、假两个逻辑状态对应。
这两个不同范围的电位称作逻辑电平,把其中一个相对电位较高者称为逻辑高电平,简称高电平,用 H表示。而相对较低者称为逻辑低电平,简称低电平,用 L
表示。
上限值下限值上限值下限值
4V
3V
0.8V
0V
高电平 H
低电平 L
⑶ 状态赋值和正、负逻辑的概念
状态赋值,数字电路中,经常用符号 1和 0表示高电平和低电平 。 我们把用符号 1,0表示输入,输出电平高低的过程叫做状态赋值 。
正逻辑,在状态赋值时,如果用 1表示高电平,用 0表示低电平,则称为正逻辑赋值,
简称正逻辑 。
负逻辑,在状态赋值时,如果用 0表示高电平,用 1表示低电平,则称为负逻辑赋值,
简称负逻辑 。
⒉ 基本逻辑运算和基本逻辑门
基本逻辑运算有逻辑与,逻辑或和逻辑非 。
实现这三种逻辑运算的电路,称作基本逻辑门 。
⑴ 逻辑与(乘)运算
只有决定一件事情的全部条件具备之后,
结果才能发生,这种因果关系为,逻辑与,
或,逻辑乘,。
⑴ 逻辑与(乘)运算
如图 1-7示照明电路,开关 A,B合上作为条件,灯亮为结果,只有两个开关全合上时,灯才会亮,否则灯不亮 。 灯和开关之间符合与逻辑关系 。
图 1-7 与逻辑电路
E
A B
F
A B
0 0
0 1
1 0
1 1
F
0
0
0
1
表 1-5 真值表逻辑符号
FA
B
(b)
A
B
(a)
F
FAB &
(c)
⑴ 逻辑与(乘)运算
逻辑真值表 ( Truth Table),经过状态赋值之后所得到的由文字和符号 0,1组成的,
描述输入和输出的所有状态的表格 。 简称真值表 。
逻辑与的逻辑关系表达式写成 F=A·B
与逻辑功能可记成:,有 0为 0,全 1为 1”
与运算规则,0·0=0; 0·1=0; 1·0=0;
1·1=1
A·0=0; A·1=A; 0·A=0; 1·A=A
⑵ 逻辑或(加)运算
决定一件事情的几个条件中,只要有一个或一个以上条件具备,结果就会发生,这种因果关系称为,或逻辑,,也称,逻辑加,。
⑵ 逻辑或(加)运算
图 1-8为两个开关并联的照明电路 。 只要有一个或一个以上 ( 二个 ) 开关闭合,灯就会亮 。 只有开关都断开时,灯灭 。 灯亮和开关之间的关系是,或逻辑,关系 。
E
A
B F
图 1-8 或 逻 辑 电 路
( 参见 P10图 1-8)
A
B F
(c)
≥1
A
B F
(a)
+ AB F
(b)
逻辑符号
A B
0 0
0 1
1 0
1 1
F
0
1
1
1
表 1-6 真值表
⑵ 逻辑或(加)运算
逻辑或的逻辑关系表达式 F=A+B
读作 F等于 A逻辑加 B。
或逻辑功能可记成,有 1为 1,全 0为 0”。
由真值表看出 0+0=0; 0+1=1; 1+0=1;
1+1=1,从 而 推 出 A+0=A ; A+1=1 ;
A+A=A。
或逻辑又称逻辑加法 。 通过上述真值表,
可见它和算术加有很大区别 。
在逻辑加中 1+1=1,1+1+···+1=1。
⑶ 逻辑非运算
条件具备时结果不发生,条件不具备时结果反而发生,这种因果关系是逻辑非 。 非也称为取反 。
⑶ 逻辑非运算图 1-9非逻辑电路
E A
R
F A0
1
F
1
0
表 1-7 真值表
A F1
(c)
A F
(a)
A F
(b)
逻辑图
如图 1-9示照明电路,开关 A合上时灯灭;
开关 A断开时灯亮 。 开关合上这一条件具备时灯亮这一结果不发生 。 满足非逻辑关系 。
同样可列出以 0和 1表示 A和 F之间的逻辑关系的真值表 。
⑶ 逻辑非运算
逻辑非的逻辑表达式写成
AF?
10? 01? AA?
0 AA 1 AA
⒊ 复合逻辑运算
与,或,非为三种基本逻辑运算 。
实际逻辑问题要比与,或,非复杂得多,
但都可以用简单的与,或,非逻辑组合来实现 。 从而构成复合逻辑 。
复合逻辑常见的有与非,或非,异或,同
(或 )运算等 。
⒊ 复合逻辑运算
A
B
F
&
A
B
F
≥ 1
≥ 1
F
A
B
C
D
&
A
B
F
A
B
F
= 1
=
A
B
F
A
B
F F
A
B
C
D
A
B
F
A
B
F
ABF? BAF CDABF
BA
BABAF
BABAF
=A⊙ B
逻辑符号如下图,其中第一行为国标符号;
第二行为惯用符号;第三行为国外常用符号。
A
B
F
A
B
F
+
+
F
A
B
C
D
A
B
F
A
B
F
⊙
⒋ 逻辑代数的基本公式和常用公式
⑴基本公式
AA1
00A
0 AA
AAA
ABBA
ABAA )(
AA?
)()( CBACBA
ACABCBA )(
BABA
01?
AA 0
11A
1 AA
AAA
ABBA
AABA
)()( CBACBA
))(( CABABCA
BABA
10?
AA 0
1 AA
0 AA
ABBA
)()( CBACBA
ACABBA )(
BA? BAAB?
AA1
=A⊙ B=
自等律说明公 式求反律反演律分配律结合律还原律吸收律交换律重迭律互补律
0— 1律
⑴ 基本公式
上述基本公式可用真值表进行证明。如证明反演律
BABA
可将变量,A,B的各种取值组合分别代入等式,
其结果如下表所示,等号两边的逻辑值完全对应相等,则说明该公式成立。
1
0
0
1
1
0
0
1
1
0
0
0
1
0
0
0
1
1
1
0
1
1
1
0
1 1
1 0
0 1
0 0
0 0
0 1
1 0
1 1
AB+ABA⊕ BA BA+BA+BABA BA B
⑵ 逻辑代数的三条规则公式
⒈ 代入规则
在任何逻辑等式中,如果等式两边所有出现某一变量的地方,都代之一个函数,
则等式仍然成立。这个规则叫代入规则 。
例如:等式
BABA
若用 F=AC代替 A,则根据代入规则,等式仍成立,即 CBABCABCA
利用代入规则,可以将基本公式推广为多变量的形式,扩大公式的使用范围
⑵ 逻辑代数的三条规则公式
⒉ 反演规则
将逻辑表达式中所有
·变 +,+变成 ·(注意省略的,·”号),
1变成 0,0变成 1,原变量变成反变量,
反变量变成原变量,
即得到原逻辑函数的反函数。
反演规则常用于从已知原函数求出其反函数。
⑵ 逻辑代数的三条规则公式
例:
CDCBAF 1
CDC)BA(F 1
E)DCBA(F 2
E)DCB(AF 2
⑵ 逻辑代数的三条规则公式
利用反演规则时须注意以下两点:
⑴ 仍需遵守,先括号,然后乘,最后加,
的运算顺序 。
⑵ 不属于单个变量上的长非号,在利用反演规则时应保持不变,而长非号下的变量及 ·和+号符号仍按反演规则处理 。
德 ·摩根定理实际上是反演规则的一个特例 。
BAF BAF BAF
⑵ 逻辑代数的三条规则公式
⒊ 对偶规则
将逻辑函数 F中的,·”换成,+,,,+,
换成,·”,,0,换成,1,,,1,换成,0,,即可求得 F的对偶式 F‘。 若两个逻辑函数相等,则它们的对偶式也相等;
反之亦然 。
例:求下列逻辑函数的对偶式,)(
1 CBAF CDABF2 DCABF3
BCAF'1 ))(('2 DCBAF CDBAF )('3
⑵ 逻辑代数的三条规则公式
有时为了证明两个逻辑式相等,可以通过证明它们的对偶式相等来完成,因为有时证明对偶式相等更容易 。
例:证明 A+BC=(A+B)(A+C)
证明:先写出等式两边的对偶式
等式左边 =A(B+C) 等式右边 =AB+AC
根据分配律 A(B+C)=AB+AC知对偶式相等,由对偶规则知 A+BC=(A+B)(A+C)
使用对偶规则时,同样要注意运算的优先级别;
正确使用括号;原式中的长非号,短非号均不变 。
⑶ 若干常用公式
利用基本公式不难证明下列各式也是正确的,
直接运用这些公式,可以给化简带来很大方便 。
ABAAB
BABAA AABA
BCCAABCAAB
B C DCAABCAAB
BAABBABA
BA?
),.,,0,1(),.,,,( zxfzxxxf?
),...1,0(),...0,1(),...,( zfxzxfzxxf
表 1-15 若干常用公式
⑤
添加律
②吸收律
①合并律
⑥
=A⊙ B
③
④
⑶ 若干常用公式
现将表中公式证明如下:
ABAAB
AABBABAAB 1)(
这个公式的含义是当两个乘积项相加时,
若它们分别包含 B和 两个因子,而其它因子相同,则两项定可合并,且能将 B和两个因子消掉。
B
B
⑶ 若干常用公式
A+AB=A
A+A·B=A(1+B)=A·1=A
此式表明:两个乘积项相加,若其中一项以另一项为因子,则该项是多余的 。
⑶ 若干常用公式
结果说明:两个乘积项相加时,如果一项取反后,是另一项的因子,则此因子是多余的,可以消去 。
BABAA
BABA
BAAABAA
)(1
))((
⑶ 若干常用公式
证明:
BCCAABCAAB
BCCAAB
CABBA
CABAABCAAB
))((
))((
⑶ 若干常用公式
逆证:
BCCAABCAAB
CAAB
BCACAB
BCAA B CCAAB
BCAACAABBCCAAB
)1()1(
)(
该式说明:两个与项相加时,若它们分别包含
A和 因子,则两项中的其余因子组成可添加的第三个与项 。 其逆式也成立,即三个与项相加时,若两项中分别有 和 A因子,而这两项的其余因子组成第三个乘积项时,则第三个乘积项是多余的,可以消去 。
A
A
该公式的推论是:
B C DCAABCAAB
⑶ 若干常用公式
BAABBABA
BAAB
BABA
BABABABA
))((
证明:
⑶ 若干常用公式
例:
),.,,0,1(),.,,,( zxfzxxxf?
变量 x和含有变量 x的逻辑函数相乘时,函数 f中的
x 用 1 代替,用 0 代替,依据是 x·x=x=x·1 ;
x· =0=x·0。x
x
)])(([ EADACAABAF
)()1(
)()])(([
EBAAEABDAEABAD EAEAB
DEDAAEAABEADACAABAF
F=A[1·B+0·C+(1+D)(0+E)]=A(B+E)
⑶ 若干常用公式
),...1,0(),...0,1(),...,( zfxzxfzxxf
例,GHAEDACAABF )()(
)()(
])1()0(10[
])0()1(01[
)()(
GDECAHGEBA
GHEDCBA
GHEDCBA
GHAEDACAABF
⒌ 逻辑函数及其表示法
⑴ 逻辑函数
数字电路研究的是输出变量和输入变量之间的逻辑关系 。 图 1-11示出二输入,一输出的数字电路框图 。
A
B F=f(A,B)
图 1-11数字电路框图数字电路当输入变量 A,B
取值为逻辑值 0或
1时,输出 F也只能是 0或 1。
⒌ 逻辑函数及其表示法
在处理逻辑问题时,可用多种方法来表示逻辑函数,其常用表示方法有真值表,逻辑表达式,卡诺图和逻辑图等 。
⑴ 真值表表示法
描述逻辑函数各个变量取值组合和函数值对应关系的表格,称为真值表 。
由于每一个输入变量有 0,1两个取值,n个输入变量有 2n个不同的取值组合,将输入变量的全部取值组合和相应的函数值一一列举出来,即可得到真值表 。
通常输入变量的全部取值组合按二进制顺序进行,以防遗漏,并方便检查 。
⑴ 真值表表示法
真值表直观明了,把实际逻辑问题抽象为数学问题时,使用真值表很方便 。 当变量较多时,为避免烦琐可只列出那些使函数值为 1的的输入变量取值组合 。
例:三人就某一提议进行表决,试列出表决结果的真值表 。
⑴ 真值表表示法
解:设输入变量 A,B、
C代表三人,F代表表决结果,两人以上同意者为 1( 表示通过 ),否则为 0。
A,B,C:同意为 1,不同意为 0。
F:通过为 1,不通过为 0。
则真值表为:
0
0
0
1
0
1
1
1
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
FA B C
表 1-16 表决逻辑真值表
⑵ 函数表达式表示法
用与,或,非等运算表示函数中各个变量之间逻辑关系的代数式子,叫做函数表达式 。
由真值表求函数表达式最方便 。
找出那些使函数值为 1的变量取值组合,变量值为 1的写成原变量,为 0的写成反变量,
这样对应于使函数值为 1的每一个组合就可以写出一个乘积项,把这些乘积项加起来,
可以得到函数的原函数的标准与或式 。
把函数值为 0的对应乘积项相加,则得反函数 。
⑵ 函数表达式表示法
例:写出表决逻辑的原函数和反函数的标准与或式 。
解,
A B CCABCBABCAF
CBACBACBACBAF
0
0
0
1
0
1
1
1
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
FA B C
表 1-16 表决逻辑真值表
⑵ 函数表达式表示法
特点:
⑴ 简洁方便 。 能高度抽象而且概括地表示各个变量之间的逻辑关系 。
⑵ 便于利用逻辑代数的公式和定理进行运算,
变换 。
⑶ 便于利用逻辑图实现函数 。
⑷ 缺点是难以直接从变量取值看出函数的值,
不如真值表直观 。
⑶ 逻辑图表示法
把函数表达式输入变量间的逻辑关系用逻辑符号表示出来而得到的电路图,称逻辑图 。
逻辑图只反映电路的逻辑功能,而不反映电器性能 。
一般可根据逻辑表达式画逻辑图 。 方法是把逻辑表达式中相应的运算用门电路的符号来代替 。
⑶ 逻辑图表示法
例:将 F=AB+BC+CA画成逻辑图 。 如表决逻辑图所示 。
≥1
A
B
C F
表决逻辑逻辑图
&
&
&
⑷ 卡诺图表示法
卡诺图 ( Karnaugh Map) 是逻辑函数的一种图形表示方法 。
卡诺图和真值表一样可以表示逻辑函数和输入变量之间的逻辑关系 。
卡诺图是用图示方法将各种输入变量取值组合下的输出函数值一一表达出来 。
A B 0 1
0
1
0 1
2 3
A B F
0 0
0 1
1 0
1 1
图 1-13 二变量卡诺图与相应真值表对应关系
⒍ 逻辑函数化简
逻辑函数表达式按表达式中乘积项的特点,
以及各个乘积项间的关系进行分类,大致可分成:与或表达式,或与表达式,与非与非表达式,或非或非表达式,与或非表达式五种,
ACBCABF
CACBBAF
ACCBBAF
F=AB+BC+AC 与或表达式
F=(A+B)(B+C)(C+A) 或与表达式与非与非表达式或非或非表达式与或非表达式
⒍ 逻辑函数化简
一般说来,表达式越简单,实现起来逻辑电路也越简单。对于不同类型的表达式,简单的标准是不一样的。以与或表达式为例,最简与或表达式应满足①乘积项的个数应该是最少的②在满足乘积项个数最少的条件下,
要求每一个乘积项中变量的个数也最少。
与或表达式最简,由它转换得来的表达式,
一般来说也就最简。
⒍ 逻辑函数化简
⑴ 逻辑函数的代数 ( 公式 ) 化简法
代数化简法的实质就是反复使用逻辑代数的基本公式和常用公式消去多余的乘积项和每个乘积项中多余的因子,以求得函数式的最简与或式 。 因此化简时,没有固定的步骤可循 。
现将经常使用的方法归纳如下:
⒍ 逻辑函数化简
① 吸收法:根据公式 A+AB=A可将 AB项消去,A和 B同样也可以是任何一个复杂的逻辑式 。
BCDCBABCAAF )(?例:化简
BCA
DCBABCABCA
BCDCBABCAA
BCDCBABCAAF
))(()(
))((
)(?解,将 A+BC看成一项
⒍ 逻辑函数化简
② 消因子法:
EBAEBBA
EBABAF
1
利用公式 可将 中的因子 消去。 A,B均可是任何复杂的逻辑式。
BABAA BA
A
例:
CDBABA
CDBABABABA
CDBAABBABA
CDBAA B C DBABAF
)(
2
⒍ 逻辑函数化简
③ 合并项法 (1):
ABAAB运用公式 可以把两项合并为一项,并消去 B和 这两个因子。根据代入规则,A和 B可以是任何复杂的逻辑式。
B
例:化简 B C DDCBDBCDCBF
BBCCB
DDBCDDCB
B C DDBCDCBDCB
B C DDCBDBCDCBF
)()(
)()(
⒍ 逻辑函数化简
③ 合并项法 (2):
1 AA?利用公式 可以把两项合并为一项,并消去一个变量。
例:
1
)(
1
BCBC
BCBCAA
BCBCAA B CF
ABAAB
CCBACCAB
CBACABCBAA B C
CBCBACBBCAF
)()(
)()(
2
⒍ 逻辑函数化简
④ 配项法
例:
A B C
ABA B CA B CAB
ABA B CABCAB
ABABABA B CCAB
ABA B CCABF
)(
2
式中的某一项乘以 或加,AA?
然后拆成两项分别与其它项合并,进行化简。
AA?
CACBBA
BBCAACBCBA
CBABCACBACBCBABA
CBACBACBCBABCABA
CBAACBCCBABA
CBCBBABAF
)()1()1(
)()()(
)()(
1
⒍ 逻辑函数化简
⑵ 逻辑函数的卡诺图化简法
① 卡诺图表示法
卡诺图 ( Karnaugh Map) 是逻辑函数的一种图形表示方法 。
卡诺图和真值表一样可以表示逻辑函数和输入变量之间的逻辑关系 。 卡诺图是用图示方法将各种输入变量取值组合下的输出函数值一一表达出来 。
⒍ 逻辑函数化简
② 最小项
对于 n个变量,如果某乘积项含有 n个因子,
每个因子或以原变量或以反变量的形式仅仅出现一次,则这个乘积项称为最小项 。
n个变量一共有 2n个最小项 。 因为每一个变量都有两种状态 — 原变量和反变量,而变量一共有 n个 。
⒍ 逻辑函数化简
③ 最小项编号
编号方法:把与最小项对应的那一组变量取值组合当成二进制数,与其对应的十进制,
就是该最小项的编号 。
下表为三变量的最小项及其编号 。
⒍ 逻辑函数化简表 1-17 三个变量的最小项及其编号
CBA
CBA
CBA
BCA
CBA
CBA
CAB
ABC
m0
m1
m2
m3
m4
m5
m6
m7
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
2
3
4
5
6
7
最小项编号最小项A B C序号
⒍ 逻辑函数化简
④ 最小项性质
ABCCBA CBA CBA BCA CBA CBA CABABC
表 1-18 三变量最小项真值表
m7m6m5m4m3m2m1m0编号
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
000
001
010
011
100
101
110
111
⑴ n个变量的逻辑函数有 2n个最小项。⑵ 每一个最小项对应了一组变量取值,任意一个最小项,只有对应的那一组取值使其值为 1,其它均为 0。⑶ 任意两个最小项之积恒为 0,记作,mi·mj=0( i≠j)⑷ 所有最小项的逻辑和为 1,记作Σmi=1( i=0,1,2,··,2n- )⑸ n个变量逻辑函数的每一个最小项都有 n个相邻项。 相邻是指逻辑相邻。⑹ 两个最小项相加可以消去互为反变量的因子。
⒍ 逻辑函数化简
⑤ 最小项是组成逻辑函数的基本单元
任何逻辑函数都可以表示成为最小项之和的形式 — 标准与或式,并且这种形式是唯一的 。
就是说,一个逻辑函数只有一个最小项之和的表达式 。
⒍ 逻辑函数化简
例:写出 F=AB+BC+AC的最小项表达式
解:
m
3567
)3,5,6,7(
mmmm
BCACBACABA B C
CBAA B CBCAA B CCABA B C
)BB(AC)AA(BC)CC(AB
ACBCABF
⒍ 逻辑函数化简
⑥ 逻辑函数的卡诺图
⑴ 最小项卡诺图的画法
① 画正方形或矩形,图形中分割出 2n个小方格,n为变量的个数,每个最小项对应一个小方格 。
② 变量取值按循环码排列 ( Gray Code),
其特点是相邻两个编码只有一位状态不同 。
变量卡诺图形象地表达了变量各个最小项之间在逻辑上的相邻性 。
⒍ 逻辑函数化简
A B C A B C A B C A B C
A B C A B C A B C A B C
A
B C
B C B C B C B C
A
A
每格标最小项
0 0 0 0 0 1 0 1 1 0 1 0
A
B C
0 0 0 1 1 1 1 0
0
1
1 0 0 1 0 1 1 1 1 1 1 0
每格标变量取值
m
0
m
1
m
3
m
2
A
B C
0 0 0 1 1 1 1 0
0
1
m
4
m
5
m
7
m
6
每格标最小项编号
0 1 3 2
A
B C
0 0 0 1 1 1 1 0
0
1
4 5 7 6
每格标最小项编号的简写图 1-13 三变量卡诺图
① 三变量卡诺图
② 四变量卡诺图
AB
CD00 01 11 10
00
01
0 1 3 2
4 5 7 6
11
10 8 9 11 10
14151312
ABCD00 01 11 10
00
01
m0
11
10
m1 m3 m2
m4 m5 m7 m6
m12 m13 m15 m14
m8 m9 m11 m10
⒍ 逻辑函数化简
⒍ 逻辑函数化简
③ 五变量卡诺图
0 0 0 0 0 1 0 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0
0 0
0 1
1 1
1 0
C D E
A B
0 1 3 2 6 7 5 4
8 9 1 1 1 0 1 4 1 5 1 3 1 2
2 4 2 5 2 7 2 6 3 0 3 1 2 9 2 8
1 6 1 7 1 9 1 8 2 2 2 3 2 1 2 0
图 1-15 五变量卡诺图
注意:五变量以上卡诺图很少使用。
⒍ 逻辑函数化简
在卡诺图中,一个最小项对应图中一个变量取值的组合 ( 反映在编号上 ) 的小格子,两个逻辑相邻的最小项对应的小格子位置间有以下三种情况:
相接 — 紧挨
相对 — 各在任一行或一列的两头
相重 — 对折起来位置相重合
⒍ 逻辑函数化简
在卡诺图上,两个相邻最小项合并时,相当于把其圈在一起组成一个新格子 。 新格子和两相邻最小项消去变化量之后的式子相对应 。
如图所示 。
A
BC00 01 11 10
0
1 CBA
CBA CBA
CBA
BCA
ABC
CBA
CAB
新格子含二个小格子,可用 BC代表
⒍ 逻辑函数化简
⑵ 逻辑函数的卡诺图
用卡诺图来表示逻辑函数 。 通常逻辑函数的卡诺图可由以下三种情况获得:
① 根据逻辑函数的真值表 ( 给出真值表时 )
根据逻辑函数的变量个数选择相应的卡诺图然后根据真值表填写卡诺图中的每个小方块,
即在对应于变量取值组合的每一小方块中,
函数值为 1时填 1,为 0时填 0,即得函数的卡诺图 。
⒍ 逻辑函数化简
例:表决逻辑的卡诺图为
B C
A
0 0 0 1
1 1 1 0
1
图
1 - 1 7
表 决 逻 辑 卡 诺 图
0 0 0
0
0 1
1
1 1
0
0
0
1
0
1
1
1
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
FA B C
表 1-16 表决逻辑真值表
⒍ 逻辑函数化简
② 根据逻辑函数的最小项表达式 ( 给出的是最小项表达式 )
将对应的逻辑函数的最小项的小方格填入 1,
其它的方格填入 0。
③ 根据一般的逻辑表达式 ( 这是经常出现的 )
首先将函数变换成与或式,但不必变为最小项之和的表达式 。 在变量卡诺图中,把每一乘积项所包括的那些最小项对应的格子都填上 1,剩下的填 0。
⒍ 逻辑函数化简
注:每一乘积项是其所包含的最小项公因子 。
每一乘积项包含的最小项的格子数是 2,4,
8…… 即 2n,而不能是 3,5,……,若变量为 n个,每个最小项应出现的变量 ( 或反变量 ) 应为 n 个,其 公 因 子 为 m 个变量
( m<n),该公因子包含的最小项个数为 2n-
m。
故 m越小,该公因子所包含的最小项的个数越多 。
⒍ 逻辑函数化简
例:
A
0 0 0 1
1 1 1 0
1
A C
0 0 0
0
0 1
1
1 1
A B
B C
B C
CA)CB()BA(F
CABCAB
CACBBA
CACBBA
CA)CB()BA(F
⒍ 逻辑函数化简
函数的真值表,标准与或式和卡诺图都是唯一的 。 三者之间有一一对应的关系 。 卡诺图只不过是真值表和标准与或式的阵列图表达形式 。
卡诺图的最突出的优点是用几何位置相邻表达了构成函数的各个最小项在逻辑上的相邻性 。 可以很容易地求出函数的最简与或式,
使其在函数的化简和变换中得到应用 。
⒍ 逻辑函数化简
⑦ 逻辑函数的卡诺图化简法
利用卡诺图进行化简,简捷直观,灵活方便,
且容易确定是否已得到最简结果 。
用卡诺图化简逻辑函数一般可按以下步骤进行:
(a)画出函数的卡诺图
(b)画包围圈,合并最小项
在卡诺图中,凡是相邻的最小项均可合并,
合并时,可消去有关变量 。
⒍ 逻辑函数化简
例:三变量卡诺图二相邻最小项的合并
BACBABCA
A
0 0 0 1
1 1 1 0
1
0
3
2
B C CBCABCBA
A
0 0 0 1
1 1 1 0
1
0
2
6
B C
CBCBACBA
A
0 0 0 1
1 1 1 0
1
0
1
5
B C
⒍ 逻辑函数化简
例:四变量卡诺图二相邻最小项的合并
AB DAB C DDCBA
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
ACDAB C DCDBA
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
⒍ 逻辑函数化简
例:四变量卡诺图二相邻最小项的合并
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
DCBDCBADCBA
A B
C D
0 0
1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
DBADBCADCBA
⒍ 逻辑函数化简
例:三变量卡诺图四相邻最小项的合并
A
B
C
0 0 0 1 11 1 0
0
1
0 1 3 2
4 5
7
6
BAB CCABBCACBA
BCBACBACBACBA
CCABCBACBACBA
A
B
C
0 0 0 1
1 1
1 0
0
1
0 1 3 2
4 5
7
6
A
C
B
00
0
1
11 1 0
0
1
0 1 3 2
4 5
7
6
⒍ 逻辑函数化简
例:四变量卡诺图四相邻最小项的合并
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
BAB CDADBCADCBADCBA DBDA B CDCABDBCADCBA
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
⒍ 逻辑函数化简
例:四变量卡诺图四相邻最小项的合并
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0 1 3 2
4 5
7
6
1 1
1 0
8
9
1 1 1 0
1 41 51 31 2
ADAB CDDCABCDBADCBA
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0
1 3 2
4 5
7
6
1 1
1 0
8
9
1 1
1 0
1 41 51 31 2
DBDCBADCBADCBADCBA
⒍ 逻辑函数化简
例:四变量卡诺图八相邻最小项的合并
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0
1 3 2
4 5
7
6
1 1
1 0
8
9
1 1
1 0
1 41 51 31 2
B
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0
1 3 2
4 5
7
6
1 1
1 0
8
9
1 1
1 0
1 41 51 31 2
B
⒍ 逻辑函数化简
例:四变量卡诺图八相邻最小项的合并
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0
1 3 2
4 5
7
6
1 1
1 0
8
9
1 1
1 0
1 41 51 31 2
C D
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
0
1 3 2
4 5
7
6
1 1
1 0
8
9
1 1
1 0
1 41 51 31 2
⒍ 逻辑函数化简
(c)选择乘积项,写出最简与或表达式 。
选择乘积项时,必须包含全部最小项,选用的乘积项的总数应该最少,每个乘积项所包含的因子也应该最少 。
例:化简函数 CBADCACBCDBF
⒍ 逻辑函数化简
解:①画出函数的卡诺图
② 合并最小项
③ 选择乘积项写出最简与或表达式
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
1 1
1 0
3
11
4 5
12 13
1
10
BCD=∑(3,11)
BC=∑(4,5,12,13)
ACD=∑(1,5)
ABC=∑(3,11)
CBADBACBF
例:化简函数 CBADCACBCDBF
⒍ 逻辑函数化简
解:①画出函数的卡诺图
② 合并最小项
③ 选择乘积项写出最简与或表达式
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
1 1
1 0
3
11
4 5
12 13
1
10
BCD=∑(3,11)
BC=∑(4,5,12,13)
ACD=∑(1,5)
ABC=∑(3,11)
CBADBACBF
1
1 1
1 1
1 1
化简时应注意的几个问题:
⑴ 圈 1得原函数,圈 0得反函数
⑵ 圈必须覆盖所有的 1。
⑶ 圈中 1的个数必须是 2n个相邻的 1。
⑷ 圈的个数必须最少 (乘积项最少 )。
⑸ 圈越大越好 ( 消去的变量多 ) 。
⑹ 每个圈至少包含一个新的最小项 。
⑺ 写出最简与或式 。
⒍ 逻辑函数化简
⒍ 逻辑函数化简
例:化简函数
F=∑(1,4,5,6,8,12,13,15)。
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
1 1
1 0
解:
①画出 F的卡诺图
② 合并最小项
1
4 5 6
8
12 13 15
③ 写出最简与或表达式 冗余舍去
A B DDCADBADCAF
具有无关项的逻辑函数及其化简
⑴ 约束项,任意项和无关项
在分析某些具体的逻辑函数时,常遇到输入变量的取值不是任意的情况 。 对输入变量的取值所施加的限制为约束 。 这些受约束的变量取值组合所对应的最小项叫约束项 。
⒍ 逻辑函数化简
例如用三个逻辑变量 A,B,C分别表示一台电动机的正转,反转和停止命令 。 A=1表示正转,B=1表示反转,C=1表示停止 。
因为电动机任何时候只能执行其中一个命令,
所以不允许两个命令同时为 1,即 ABC的取值只能是 001,010,100中的一种,不能是
000,011,110,101,111中的任一种 。 因此 A,B,C是一组具有约束的变量 。
⒍ 逻辑函数化简
通常用约束条件来描述约束的具体内容 。
由于每一组输入变量的取值都使一个,且仅有一个最小项的值为 1,所以当限制某些输入变量不能出现时,可以用它们对应的最小项恒等于 0来表示 。
上面例子中的约束条件可写为:
0?CBA 0?BCA 0?CAB 0?CBA 0?ABC
⒍ 逻辑函数化简
或写为:
0 ABCCBACABBCACBA
⒍ 逻辑函数化简
有时也会遇到在某些输入变量取值下不影响输出函数 。 例如对于 8421编码只出现 0000~
1001,而 1010~ 1111这 6种取值与 8421码无关 。 通常把与输出逻辑函数无关的最小项称作任意项 。
在不严格区分时,约束项和任意项统称为无关项 。
无关是指把它们是否写入逻辑式中无关紧要,
可写可不写 。 在卡诺图中填入,×,或,Φ”
表示 。
最小项和无关项的表示方法,
m **)*(*
d **)*(*d
最小项之和无关项之和
⒍ 逻辑函数化简
⒍ 逻辑函数化简
⑵ 无关项在化简逻辑函数中的应用
在存在无关项的情况下,可以把一个或几个无关项写进逻辑函数中,也可以把无关项从函数式中删掉,不影响函数值 。 因此在逻辑函数化简时,利用无关项有时会给化简带来方便 。
在卡诺图上,究竟将,×,作为,1”还是,0”
对待,应以得到的相邻最小项矩形组合最大,
而且矩形组合数目最少为原则 。
⒍ 逻辑函数化简
例:化简具有约束项的逻辑函数
DCBAB C DADCBAF
已知约束条件为
0
DCBADA B CA B C D
DCBADCABDCBACDBA
解:如果不利用约束项,F已无从化简,
适当写入一些约束项后,可以得到
DADA
DACDCABDADBA
DCBADA B CDCABDCBA
DCBAB C DACDBACBAF
⒍ 逻辑函数化简
可见,利用了约束项以后,能使逻辑函数进一步化简 。
但在确定应该写入哪些约束项时还不够直观 。
如果改用卡诺图化简法,则只要将 F的卡诺图画出,立即就能看出化简时对这些约束项应如何取舍 。
⒍ 逻辑函数化简
如下图所示 。 化简结果与代数法相同 。
DADAF
1
A B
C D
0 0 0 1 1 1 1 0
0 0
0 1
约 束 项 化 简 例 题
0
1 ×
0
0 ×
0
1 1
1 0
×
1
0
×
×
0
×
×
⒍ 逻辑函数化简
例:化简逻辑函数
F(A,B,C,D)=∑m(0,1,2,3,6,8)+∑d(10,11,12,1
3,14,15)。
DADCBA
DCBAF
),,,(
A B
C D
0 0 0 1 1 1
1 0
0 0
0 1
约 束 项 化 简 例 题
1 1 1 1
0
0
0 1
1 1
1 0
×
1
×
0
×
×
×
×
⒍ 逻辑函数化简
A B
C D
0 0 0 1 1 1
1 0
0 0
0 1
× 0
1
×
× 1
1 1
1 0
0
1
0
1
0
0
1
×
×
×
DCBAA B DDBAF
例:化简逻辑函数
F(A,B,C,D)=∑m(15,13,10,6,4)+∑d(8,7,5,2,1,0)
不考虑无关项
考虑无关项
DBBDBAF
⒍ 逻辑函数化简
通常,从逻辑问题概括出来的逻辑函数不一定是最简的,所以就要求对逻辑函数进行化简,找到其最简单的表达式。
此外,有时逻辑函数表达式是最简的形式,
但是它不一定适合给定的逻辑门,这种实际情况又要求对已有的最简式进行适当的变换,才能用给定的逻辑门画出逻辑电路图。
⒍ 逻辑函数化简
一个逻辑函数可有多种不同的表达形式,
这些表达式可以互相转换,例如:
BABA
BABA
BABA
BABA
BABA
BABA
BAAB
BAABF
)()(
)()(
与或表达式与非与非表达式或与非表达式与或非表达式或非或表达式与非与表达式或与表达式或非或非表达式
⒍ 逻辑函数化简
与或表达式是最常用的一种逻辑表达式,
最简与或表达式的标准是:式中含的与项最少;各与项中含的变量数最少。
有了最简的与或表达式,就很容易得到其他形式的最简表达式。
这里只介绍了两种与或表达式的化简方法。
一种是公式化简法;另一种是卡诺图化简法。
⒍ 逻辑函数化简
例 2:化简函数
F=∑(1,3,5,9)+∑d(7,11,13)。
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
1 1
1 0
解,①画出 F的卡诺图
② 合并最小项 1 1
1 ×
1
×
×
③ 写出最简与或表达式
DCDA
DCDA
DCDAF
DAC
DCA
DCDAF
)(
⒍ 逻辑函数化简
例 2:化简函数
F=∑(1,3,5,9)+∑d(7,11,13)。
A B
C D
0 0
0 1 1 1
1 0
0 0
0 1
1 1
1 0
解,①画出 F的卡诺图
② 合并最小项 1 1
1 ×
1
×
×
③ 写出最简与或表达式
DAB
DBA
DBDAF
)(
DBDA
DBDA
DBDAF
⒍ 逻辑函数化简
例 2:化简函数
F=∑(1,3,5,9)+∑d(7,11,13)。
DCDA
DCDA
DCDAF
DAC
DCA
DCDAF
)(
1 4
1 3 1 2 1 1 1 0 9 8
7654321
7 4 L S 0 0
V
C C
G N D
&
&
&
&
A
C
D
A
C
D
F
&
& &
A
C
D
F
&
&
&
1
1
F
⒍ 逻辑函数化简
A
C
D
F
&
&
&
1
1
1 4
1 3 1 2 1 1 1 0 9 8
7654321
7 4 L S 0 0
V
C C
G N D
&
&
&
&
A
C
D
1 4
1 3 1 2 1 1 1 0 9 8
7654321
7 4 L S 0 0
V
C C
G N D
&
&
&
&
F
作业:
P22:
1-1— 1-7; 1-10,1-15,1-17,
1-19— 1-21