第四节 逻辑函数的化简方法
一、函数化简的意义
1,逻辑函数表达式的几种形式
F= + 与或式
= 或与式
= 与或非式
= 与非 — 与非式
= 或非 — 或非式
ABCB
)( BA? ? ?CB?
CBBA ?
CBAB?
CBBA ???
2,化简标准
对与或式的最简形式,首先要求函数中的
与项个数最少,这样使用的门数最少。其次要
求每一个与项中的变量个数最少,这样会使所
用逻辑门的输入个数最少。所以化简函数有其
实用意义。化简函数的方法有公式化简法和卡
诺图法。
二、公式化简
1.并项法 利用 =1将两项合并成一
项并消去一个变量。
2.吸收法 利用 A+AB=A,消去多余项。
3.消去法 利用 A+AB=A+B,消去多余项。
F=
=
=
AA?
ABDDBABABA ???
BABADBABA ???
DBABA ??
4,配项法
利用 A+A=1,增加必要的乘积项,再用并项
和吸收办法使项数减少。
F=
=
=
=( A+1)
=
BACBCBBA ???
BACBAACBCCBA ????? )()(
BACBCBACABCBACBA ?????
)()1( BBCACBACB ????
CABACB ??
三、卡诺图化简法
1,逻辑函数的最小项表达式 任一逻辑
函数都可以表示成最小项之和形式。为掌握
卡诺图化简法,有必要先讨论逻辑函数的最
小项。
( 1)最小项的概念 。 n个变量的函数的最
小项是包含 n个变量的乘积项,且每一个变量
在乘积项中只能以原变量或反变量形式出现
且仅出现一次,这样的乘积项叫最小项。
最小项
为分析方便常常把最小项进行编号 。 用 mi
表示 。 m是最小项, i是十进制数, 即最小项编
号 。 这里需要强调一点:在每一个最小项中变
量要按英文字母顺序排列 。
三变量函数的最小项编号
CBA 0m
CBA
1m
CBA 4m
CBA 5m
CAB 6m
ABC
7m
逻辑变量取值 十进制数 最小项 最小项编号
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7
CBA 2m
BCA 3m
最小项性质
① 任意一个最小项, 只有一组变量取值使其值为
1,而其余各种取值组合, 该最小项的值均为 0。
② 任意两个最小项的乘积为 0。
③ 全体最小项之和为 1。
( 2)逻辑函数的最小项标准式
例 8-24 F = 化成最小项标准式 。
展开过程可按以下步骤进行 。
① 反复应用摩根定理去掉长非号, 直到只在单个变量上有非
号为止 。
F =
② 反复应用乘法分配律展开, 直到写成与或式为止 。
F =(
③ 将与或式中缺少变量 ( 如 ) 的项, 乘以 A+, 然后展开成
最小项和的形式 。
F=A
BCACBBC )( ??
BCACBCBBCACBBCBCACBBC ????????? ))((
?? CBBB BCCABCBABCACCCB ????? )
A
??
???????????
)7,6,5,3(
)( 3765
m
mmmmBCAABCCABCBAAABCCABCB
2.卡诺图表示函数
( 1) 卡诺图 。 卡诺图是有规则排列的最小项
方格图 。 它是函数的一种表示形式 。 n变量函数
有 2n个最小项, 在这些最小项中, 把只有一个
变量取值不同的两个最小项叫逻辑相邻项 。 每
一个最小项对应一个方格, 卡诺图将逻辑相邻
的项巧妙地与几何相邻的方格有机地结合起来 。
图 8-10所示是二, 三, 四个变量的函数的卡诺
图 。
二、三、四个变量的函数的卡诺图
a.二变量函数的卡诺图 b.三变量函数的卡诺图, c.四变量函数的卡诺图
构造卡诺图时应遵循以下规则
? ① n变量函数有 2n个最小项,则卡诺图有 2n方
格,即方格与最小项一一对应。
? ② 2n个方格必须排列成方阵或矩阵。
? ③ 变量分成两组,行变量和列变量组,行变
量为高位组,列变量为低位组。如图 8-10中 C
中,为行变量,为列变量。
? ④ 变量取值遵守反射码的形成规则。
逻辑相邻
根据逻辑相邻的定义,不难由图 8-10看出,
几何相邻的两个方格的最小项满足逻辑相邻性。
而不直接相邻的方格,但以卡诺图中心轴对称
的方格对应的最小项也满足逻辑相邻,如图 8-
10c中 m0与 m2,m0与 m8,m3与 m11等,称这种相
邻叫对称相邻。所以卡诺图可看作是立体图。
这是卡诺图巧妙之所在 。
用卡诺图表示函数
? 任意逻辑函数都可表示成最小项之和形式, 用
卡诺图表示函数时, 将函数中出现的最小项,
在对应最小项方格中填 1,没有的填 0(或不填 ),
所得
? 图形即为该函数的卡诺图。
例 8-25
? 例 8-25
? 可表示为图 8-11卡诺图
图 8-11 例 8-25的卡诺图
????? )7,6,5,3()( mBCACBBCF
卡诺图合并相邻项
? 卡诺图中几何相邻的方格对应的最小项符合逻
辑相邻,如图 8-11中 m7与 m5的最小项为和只有
变量不同,合并可消去,在卡诺图中可用一个
圈(卡诺圈)将 m7和 m5方格圈起来,合并成,
并消去。图 8-13中列出了三变量和四变量函数
中 2个,4个,8个相邻项用卡诺圈合并消去变
量的例子。
? 由图 8-12中可以看出卡诺图覆盖过的变量以 0
和 1两种取值出现,则该变量被消去;只以 0出
现,则该变量用反变量表示;只以 1出现,则
以原变量出现。卡诺圈越大消去的变量越多,
能够合并相邻项的一个正确的卡诺圈必须符合
以下要求。
? (1) 卡诺圈里的 1方格数必须是 2m个。 m=0,1,
2,… 。
? (2) 2m个 1方格必须排列成方阵或矩阵。
? (3) 2m个 1方格必须是方格相邻或对称相邻的。
用卡诺图化简函数
? 在了解了用卡诺图合并相邻项后, 就可用卡诺
图化简函数了 。 其步骤如下:
( 1)用卡诺图表示函数。
( 2)画卡诺圈合并相邻项。
画卡诺圈时要尽可能大,使消去的变量多,
要尽可能少,使所得与项最少。
例 8-26
例 8-26化简函数
解 ( 1)用卡诺图表示函数,如图 8-13 所示
( 2)画卡诺圈合并相邻项得到最简与或式。
图 8-13 例 8-26的卡诺图
?? )15,12,10,9,8,4,2,1,0(),,,( mDCBAF
DBCBDCA B C DF ????
图 8-12 卡诺图合并相邻项
化简函数时注意
? 用卡诺图化简函数时,要注意:一个正确的卡
诺圈还要满足卡诺圈里的 1方格至少有一个 1方
格没有被别的圈覆盖过,否则为冗余项。
例 8-27
? 例 8-27一个逻辑电路的输入是 4个变量 A,B,C,D,它
的真值表,如表 8-19,用卡诺图化简为最简与或式。
? A B C D F A B C D F
? 0 0 0 0 1 1 0 0 0 1
? 0 0 0 1 1 1 0 0 1 1
? 0 0 1 0 1 1 0 1 0 1
? 0 0 1 1 1 1 0 1 1 1
? 0 1 0 0 1 1 1 0 0 1
? 0 1 0 1 1 1 1 0 1 1
? 0 1 1 0 1 1 1 1 0 0
? 0 1 1 1 1 1 1 1 1 0 图 8-14 例 8-27的卡诺图
解 ( 1)用卡诺图表示函数,如图 8-14所示。
( 2)化简函数得
例 8-27中不仅可以采用圈 1化简,还可采用圈 0化简,得到原
函数的反函数。如图 8-14中虚线所示。则
有
当然在实际中经常会遇到这样的问题,在对应输入变量
的取值下函数的值可以是任意的,或者这些变量的取值根
本不会出现,把这些变量取值所对应的最小项叫 任意项 或
无关项。 在化简函数时对这些项的处理,可根据使函数得
到简化而确定其值取 0或取 1,在卡诺图中用, ×,表示。
CBAF ???
ABCF ?
CBAA B CFF ?????
例 8-28
? 例 8-28设计一个四舍五入电路,用变量 A,B,C,D表
示 1位十进制数 X,采用 8421码。当 X≥5 时,输出 F=1,
否则为 0。 解 根据题意列真值表,如表 8-20所示。
? A B C D F A B C D F
? 0 0 0 0 0 1 0 0 0 1
? 0 0 0 1 0 1 0 0 1 1
? 0 0 1 0 0 1 0 1 0 ×
? 0 0 1 1 0 1 0 1 1 ×
? 0 1 0 0 0 1 1 0 0 ×
? 0 1 0 1 1 1 1 0 1 ×
? 0 1 1 0 1 1 1 1 0 × 图 8-15 例 8-2的卡诺图
? 0 1 1 1 1 1 1 1 1 ×
? 表 8-20 例 8-28的真值表
用卡诺图化简,如图 8-15所示。则
F= A+BD+BC
在一些实际问题中, 变量的取值是互相排斥的,
即一个变量取值为 1,则其它变量只能取 0,而不
会出现两个以上变量同时为 1的情况 。 反之亦然 。
如三个变量分别表示数字系统中进行的左移, 右
移, 存数三种操作, 同一时刻只能进行一种操作,
所以变量取值只能为 001,010,100,而其余组合
011,110,101,111,就不允许出现, 这种关系
的变量叫互相排斥的变量 。
一、函数化简的意义
1,逻辑函数表达式的几种形式
F= + 与或式
= 或与式
= 与或非式
= 与非 — 与非式
= 或非 — 或非式
ABCB
)( BA? ? ?CB?
CBBA ?
CBAB?
CBBA ???
2,化简标准
对与或式的最简形式,首先要求函数中的
与项个数最少,这样使用的门数最少。其次要
求每一个与项中的变量个数最少,这样会使所
用逻辑门的输入个数最少。所以化简函数有其
实用意义。化简函数的方法有公式化简法和卡
诺图法。
二、公式化简
1.并项法 利用 =1将两项合并成一
项并消去一个变量。
2.吸收法 利用 A+AB=A,消去多余项。
3.消去法 利用 A+AB=A+B,消去多余项。
F=
=
=
AA?
ABDDBABABA ???
BABADBABA ???
DBABA ??
4,配项法
利用 A+A=1,增加必要的乘积项,再用并项
和吸收办法使项数减少。
F=
=
=
=( A+1)
=
BACBCBBA ???
BACBAACBCCBA ????? )()(
BACBCBACABCBACBA ?????
)()1( BBCACBACB ????
CABACB ??
三、卡诺图化简法
1,逻辑函数的最小项表达式 任一逻辑
函数都可以表示成最小项之和形式。为掌握
卡诺图化简法,有必要先讨论逻辑函数的最
小项。
( 1)最小项的概念 。 n个变量的函数的最
小项是包含 n个变量的乘积项,且每一个变量
在乘积项中只能以原变量或反变量形式出现
且仅出现一次,这样的乘积项叫最小项。
最小项
为分析方便常常把最小项进行编号 。 用 mi
表示 。 m是最小项, i是十进制数, 即最小项编
号 。 这里需要强调一点:在每一个最小项中变
量要按英文字母顺序排列 。
三变量函数的最小项编号
CBA 0m
CBA
1m
CBA 4m
CBA 5m
CAB 6m
ABC
7m
逻辑变量取值 十进制数 最小项 最小项编号
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7
CBA 2m
BCA 3m
最小项性质
① 任意一个最小项, 只有一组变量取值使其值为
1,而其余各种取值组合, 该最小项的值均为 0。
② 任意两个最小项的乘积为 0。
③ 全体最小项之和为 1。
( 2)逻辑函数的最小项标准式
例 8-24 F = 化成最小项标准式 。
展开过程可按以下步骤进行 。
① 反复应用摩根定理去掉长非号, 直到只在单个变量上有非
号为止 。
F =
② 反复应用乘法分配律展开, 直到写成与或式为止 。
F =(
③ 将与或式中缺少变量 ( 如 ) 的项, 乘以 A+, 然后展开成
最小项和的形式 。
F=A
BCACBBC )( ??
BCACBCBBCACBBCBCACBBC ????????? ))((
?? CBBB BCCABCBABCACCCB ????? )
A
??
???????????
)7,6,5,3(
)( 3765
m
mmmmBCAABCCABCBAAABCCABCB
2.卡诺图表示函数
( 1) 卡诺图 。 卡诺图是有规则排列的最小项
方格图 。 它是函数的一种表示形式 。 n变量函数
有 2n个最小项, 在这些最小项中, 把只有一个
变量取值不同的两个最小项叫逻辑相邻项 。 每
一个最小项对应一个方格, 卡诺图将逻辑相邻
的项巧妙地与几何相邻的方格有机地结合起来 。
图 8-10所示是二, 三, 四个变量的函数的卡诺
图 。
二、三、四个变量的函数的卡诺图
a.二变量函数的卡诺图 b.三变量函数的卡诺图, c.四变量函数的卡诺图
构造卡诺图时应遵循以下规则
? ① n变量函数有 2n个最小项,则卡诺图有 2n方
格,即方格与最小项一一对应。
? ② 2n个方格必须排列成方阵或矩阵。
? ③ 变量分成两组,行变量和列变量组,行变
量为高位组,列变量为低位组。如图 8-10中 C
中,为行变量,为列变量。
? ④ 变量取值遵守反射码的形成规则。
逻辑相邻
根据逻辑相邻的定义,不难由图 8-10看出,
几何相邻的两个方格的最小项满足逻辑相邻性。
而不直接相邻的方格,但以卡诺图中心轴对称
的方格对应的最小项也满足逻辑相邻,如图 8-
10c中 m0与 m2,m0与 m8,m3与 m11等,称这种相
邻叫对称相邻。所以卡诺图可看作是立体图。
这是卡诺图巧妙之所在 。
用卡诺图表示函数
? 任意逻辑函数都可表示成最小项之和形式, 用
卡诺图表示函数时, 将函数中出现的最小项,
在对应最小项方格中填 1,没有的填 0(或不填 ),
所得
? 图形即为该函数的卡诺图。
例 8-25
? 例 8-25
? 可表示为图 8-11卡诺图
图 8-11 例 8-25的卡诺图
????? )7,6,5,3()( mBCACBBCF
卡诺图合并相邻项
? 卡诺图中几何相邻的方格对应的最小项符合逻
辑相邻,如图 8-11中 m7与 m5的最小项为和只有
变量不同,合并可消去,在卡诺图中可用一个
圈(卡诺圈)将 m7和 m5方格圈起来,合并成,
并消去。图 8-13中列出了三变量和四变量函数
中 2个,4个,8个相邻项用卡诺圈合并消去变
量的例子。
? 由图 8-12中可以看出卡诺图覆盖过的变量以 0
和 1两种取值出现,则该变量被消去;只以 0出
现,则该变量用反变量表示;只以 1出现,则
以原变量出现。卡诺圈越大消去的变量越多,
能够合并相邻项的一个正确的卡诺圈必须符合
以下要求。
? (1) 卡诺圈里的 1方格数必须是 2m个。 m=0,1,
2,… 。
? (2) 2m个 1方格必须排列成方阵或矩阵。
? (3) 2m个 1方格必须是方格相邻或对称相邻的。
用卡诺图化简函数
? 在了解了用卡诺图合并相邻项后, 就可用卡诺
图化简函数了 。 其步骤如下:
( 1)用卡诺图表示函数。
( 2)画卡诺圈合并相邻项。
画卡诺圈时要尽可能大,使消去的变量多,
要尽可能少,使所得与项最少。
例 8-26
例 8-26化简函数
解 ( 1)用卡诺图表示函数,如图 8-13 所示
( 2)画卡诺圈合并相邻项得到最简与或式。
图 8-13 例 8-26的卡诺图
?? )15,12,10,9,8,4,2,1,0(),,,( mDCBAF
DBCBDCA B C DF ????
图 8-12 卡诺图合并相邻项
化简函数时注意
? 用卡诺图化简函数时,要注意:一个正确的卡
诺圈还要满足卡诺圈里的 1方格至少有一个 1方
格没有被别的圈覆盖过,否则为冗余项。
例 8-27
? 例 8-27一个逻辑电路的输入是 4个变量 A,B,C,D,它
的真值表,如表 8-19,用卡诺图化简为最简与或式。
? A B C D F A B C D F
? 0 0 0 0 1 1 0 0 0 1
? 0 0 0 1 1 1 0 0 1 1
? 0 0 1 0 1 1 0 1 0 1
? 0 0 1 1 1 1 0 1 1 1
? 0 1 0 0 1 1 1 0 0 1
? 0 1 0 1 1 1 1 0 1 1
? 0 1 1 0 1 1 1 1 0 0
? 0 1 1 1 1 1 1 1 1 0 图 8-14 例 8-27的卡诺图
解 ( 1)用卡诺图表示函数,如图 8-14所示。
( 2)化简函数得
例 8-27中不仅可以采用圈 1化简,还可采用圈 0化简,得到原
函数的反函数。如图 8-14中虚线所示。则
有
当然在实际中经常会遇到这样的问题,在对应输入变量
的取值下函数的值可以是任意的,或者这些变量的取值根
本不会出现,把这些变量取值所对应的最小项叫 任意项 或
无关项。 在化简函数时对这些项的处理,可根据使函数得
到简化而确定其值取 0或取 1,在卡诺图中用, ×,表示。
CBAF ???
ABCF ?
CBAA B CFF ?????
例 8-28
? 例 8-28设计一个四舍五入电路,用变量 A,B,C,D表
示 1位十进制数 X,采用 8421码。当 X≥5 时,输出 F=1,
否则为 0。 解 根据题意列真值表,如表 8-20所示。
? A B C D F A B C D F
? 0 0 0 0 0 1 0 0 0 1
? 0 0 0 1 0 1 0 0 1 1
? 0 0 1 0 0 1 0 1 0 ×
? 0 0 1 1 0 1 0 1 1 ×
? 0 1 0 0 0 1 1 0 0 ×
? 0 1 0 1 1 1 1 0 1 ×
? 0 1 1 0 1 1 1 1 0 × 图 8-15 例 8-2的卡诺图
? 0 1 1 1 1 1 1 1 1 ×
? 表 8-20 例 8-28的真值表
用卡诺图化简,如图 8-15所示。则
F= A+BD+BC
在一些实际问题中, 变量的取值是互相排斥的,
即一个变量取值为 1,则其它变量只能取 0,而不
会出现两个以上变量同时为 1的情况 。 反之亦然 。
如三个变量分别表示数字系统中进行的左移, 右
移, 存数三种操作, 同一时刻只能进行一种操作,
所以变量取值只能为 001,010,100,而其余组合
011,110,101,111,就不允许出现, 这种关系
的变量叫互相排斥的变量 。