文章目录

  • 一、主要内容
  • 问题的提出
  • 函数化简的目的
  • 函数化简的方法:
  • 二、代数法化简逻辑函数
  • 三、卡诺图法化简逻辑函数
  • 1. 卡诺图
  • 2. 卡诺图填图
  • 1. 真值表填卡诺图
  • 2. 表达式化为最小项表达式填卡诺图
  • 3. 表达式作为一般与或式填卡诺图
  • 3. 函数的卡诺图化简
  • 1. 典型卡诺图
  • 2. 函数的卡诺图化简
  • 3. 含有任意项的逻辑函数的化简
  • 1. 任意项定义
  • 2. 带有任意项的逻辑函数的化简方法
  • 四、练习


一、主要内容

问题的提出

  • 同一个逻辑函数可以有多种表达形式;
  • 一种形式的表达式,对应一种电路;
  • 表达形式越复杂,则电路越复杂;

如何处理函数,以实现用尽量少的单元电路、尽量简单的电路类型来达到目的。即,逻辑函数要化简。

函数化简的目的

  • 逻辑电路所用门的数量少,每个门的输入端个数少,降低成本
  • 逻辑电路构成级数少,保证逻辑电路能可靠地工作,提高电路的工作速度和可靠性

函数化简的方法:

  • 代数化简法(公式法)
  • 卡诺图化简法

二、代数法化简逻辑函数

代数法化简逻辑函数的实质是反复运用逻辑代数的公式和规则,消去表达式中的多余项和多余变量。在用代数法化简逻辑函数时, 往往要依靠经验和技巧 ,带有一定的试凑性

方法:

  • 并项: 利用 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路 将两项并为一项,且消去一个变量 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_02
  • 消项: 利用 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_03 消去多余的项 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_04
  • 消元:利用 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_05 消去多余变量 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_06
  • 配项:利用 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_07

函数表达式一般化简成 与-或式 ,其最简应满足的两个条件:
1)表达式中“与”项的个数最少;
2)在满足1)的前提下,每个“与”项中的变量个数最少。
化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_08 化简化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_09
化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_10

实际上,我们最经常使用的是卡诺圈法,代数法化简常常作为结果的印证,我也就不麻烦的输入公式了,直接截图吧。

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_11


化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_12


三、卡诺图法化简逻辑函数

1. 卡诺图

卡诺图:是真值表的图形表示:

  • 将变量分成两组,构成二维表;
  • 行列组合排列顺序为循环码
  • 表中每个方格对应真值表中的一行,代表一个最小项。

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_13


化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_14


化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_15

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_16

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_17

  • 相邻方格最小项,具有 逻辑相邻性 ,即有一个变量互为反变量
  • 具有逻辑相邻性的方格有
    • 相接 —— 几何位置相邻的方格
    • 相对 —— 上下两边、左右两边的方格
    • 相重 —— 多变量卡诺图,以对称轴相折叠,叠在一起的方格(五变量)

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_18

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_19


化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_20

2. 卡诺图填图

卡诺图有什么用?为什么要用循环码?

  • 循环码:相邻两个码字有一位相反;
  • 卡诺图:逻辑相邻项有一个变量互为反变量;
  • 卡诺图中的两个逻辑相邻项相加可以消去一个变量。

用卡诺图法对逻辑函数进行化简时,首先要确定函数与卡诺图的关系,将函数用卡诺图的形式表现出来。真值表、表达式、卡诺图都可以表达一个逻辑函数。

1. 真值表填卡诺图

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_21

2. 表达式化为最小项表达式填卡诺图

对于 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_22 来说, 可以如下化简:

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_23

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_24

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_25

3. 表达式作为一般与或式填卡诺图

由一般与-或式填卡诺图示例1:三变量 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_26

1.将所有满足 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_27的方格内填“1”

2.将所有满足 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_28 的方格内填“1”

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_29

由一般与或式填卡诺图示例2:四变量 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_30
1.在所有满足 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_31 的方格内填“1”
2.将所有满足 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_32 的方格内填“1”
3.在所有满足 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_33 的方格内填“1”
4.在所有满足 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_34

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_35

3. 函数的卡诺图化简

化简依据:相邻最小项 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_36 提出公因子 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_36 消去互补变量
化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_38
化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_39

方法:

1)填写函数卡诺图

2)对邻项方格画卡诺圈

3)消去互补变量,直接写出最简与-或式

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_40

1. 典型卡诺图

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_08 二变量卡诺图的典型卡诺圈

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_42

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_08 三变量卡诺图的典型卡诺圈

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_44


化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_08 四变量卡诺图的典型卡诺圈

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_46

2. 函数的卡诺图化简

无效圈示例1:不是矩形

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_47

无效圈示例2:没有新变量,无效圈

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_48

写出每个卡诺圈最小项表达式保留卡诺圈内值不变的变量化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_49

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_50


化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_51

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_52


化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_53

  • 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_54函数与-或表达式;
  • 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_55反函数与-或表达式(下面的左图:化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_56)
  • 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_54 :函数的与-或表达式;
  • 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_55 :函数的或-与表达式(此时保持不变为0的变量用原变量,为1用反变量)

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_59

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_60


需要注意的是:不同的圈法,会得到不同的最简结果

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_61

3. 含有任意项的逻辑函数的化简

1. 任意项定义

一个逻辑函数,如果它的某些输入取值组合受特殊原因制约而不会再现,或者虽然每种输入取值组合都可能出现,但此时函数取值为1还是为0无关紧要,那么这些输入取值组合对应的最小项称为无关项或者任意项 。 任意项用 “d”或者 “ × ” 表示 。

任意项可以加到函数表达式中,也可以不加到函数表达式中,并不影响函数的实际逻辑功能。其值可以取1,也可以取0。

例1:十字路口红绿灯,设控制信号 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_62 绿灯亮;控制信号 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_63 红灯亮;则 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_64 可以为 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_65 ,但 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_66

例2:电动机正反转控制,设控制信号 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_67 正传;控制信号 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_68 反转;则 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_69 可以为 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_70 ,但 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_71

例3:化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_72 码中,从 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_73

2. 带有任意项的逻辑函数的化简方法

例1: 给定某电路的逻辑函数真值表如右图,求 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_74 的最简"与或"式:

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_75

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_76

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_77

例2:已知真值表如右图,用卡诺图化简:

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_78

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_79

四、练习

1.用代数法化简逻辑函数

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_80

2.用卡诺图化简一下函数:

(1)化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_81

答:根据下面的卡诺图,化简函数为 化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_82

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_83


(2)化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_84

答:根据卡诺图,化简函数为:化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_85

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_86


(3)化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_逻辑电路_87

答:根据下面的卡诺图,化简函数为:化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_88

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_真值表_89


3.将以下的函数分别化简为最简与或式和最简或与式。

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_90

答:根据下图,可得最简与或式为:化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_91

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_92


根据下面的卡诺图,圈0得最简或与式为:化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_化简函数 python_93

化简函数 python 化简函数F1(A,B,C,D)=∑m(2,3)_函数表达式_94