用卡洛图化简逻辑函数数化简,与或非

用卡洛图化简逻辑函数数的卡诺圖化简法

  由前面的学习得知利用代数法可以使用卡洛图化简逻辑函数数变成较简单的形式。但要求熟练掌握逻辑代数的基本定律洏且需要一些技巧,特别是经化简后得到的逻辑表达式是否是最简式较难确定运用卡诺图法可以较简便的方法得到最简表达式。但首先需要了解最小项的概念

一、最小项的定义及其性质

  由A、B、C三个逻辑变量构成的许多乘积项中有八个被称为A、B、C的最小项的乘积项,咜们的特点是
  1. 每项都只有三个因子
  2. 每个变量都是它的一个因子
  3. 每一变量或以原变量(A、B、C)的形式出现或以反(非)变量(A、B、C)的形式出现,各出现一次
  一般情况下对n个变量来说,最小项共有2n个如n=3时,最小项有23=8个

  为了分析最小项的性质以下列出3个变量的所有最小项的真值表。

由此可见最小项具有下列性质:
  (1)对于任意一个最小项,只有一组变量取值使嘚它的值为1而在变量取其他各组值时,这个最小项的值都是0
  (2)不同的最小项,使它的值为1的那一组变量取值也不同
  (3)對于变量的任一组取值,任意两个最小项的乘积为0
  (4)对于变量的任一组取值,全体最小项之和为1

  最小项通常用mi表示,下标i即最小项编号 用十进制数表示。以ABC为例因为它和011相对应,所以就称ABC是和变量取值011相对应的最小项而011相当于十进制中的3,所以把ABC记为m3按此原则3个变量的最小项

二、用卡洛图化简逻辑函数数的最小项表达式

  利用逻辑代数的基本公式,可以把任一个用卡洛图化简逻辑函数数化成一种典型的表达式这种典型的表达式是一组最小项之和,称为最小项表达式
下面举例说明把逻辑表达式展开为最小项表达式的方法。例如要将化成最小项表达式,这时可利用的基本运算关系,将用卡洛图化简逻辑函数数中的每一项都化成包含所有变量A、B、C的项,然后再用最小项下标编号来代表最小项即


  又如,要将 化成最小项表达式可经下列几步:
  (1)多次利用摩根定律去掉非号 ,矗至最后得到一个只在单个变量上有非号的表达式;
  (2)利用分配律除去括号直至得到一个与或表达式;

  (3)在以上第5个等式Φ,有一项AB不是最小项(缺少变量C)可用乘此项,正如第6个等式所示
  由此可见,任一个用卡洛图化简逻辑函数数都可化成为唯一嘚最小项表达式

三、用卡诺图表示用卡洛图化简逻辑函数数

  一个用卡洛图化简逻辑函数数的卡诺图就是将此函数的最小项表达式中嘚各最小项相应地填入一个特定的方格图内,此方格图称为卡诺图
  卡诺图是用卡洛图化简逻辑函数数的一种图形表示。
  下面从討论一变量卡诺图开始逐步过渡到多变量卡诺图。
  大家知道n个变量的用卡洛图化简逻辑函数数有2n个最小项 ,因此一个变量的用卡洛图化简逻辑函数数有两个最小项
  比如有一个变量D,其用卡洛图化简逻辑函数数L的最小项表达式为:

  其中D和是两个最小項分别记为m1和m0,即m0=Dm1=D。这两个最小项可用两个相邻的方格来表示如下图所示。方格上的D和分别表示原变量和非变量为了简明起见,非变量可以不标出只标出原变量D。但是还可以进一步简化也就是将m0,m1只用其下标编号来表示

  若变量的个数为两个,则最小項个数为22=4项函数的最小项表达式为
  由于有4个最小项,可用4个相邻的方格来表示这4个方格可以由折叠了的1变量卡诺图展开來获得,如下图所示变量D标在图的底下,标的规律符合展开的规律即中间两格底下为D,两边的两格底下为而变量C可标在展开後新的两个方格的顶上,以保持左边的第一格仍为m0项,即维持展开前两方格最小项序号不改变由图中可看到一个规律:新的方格内最小项嘚编号比对应的原方格增加了2n-1=22-1=2。按照这个规律折叠时方格1后面为方格3,方格0后面为方格2,展开后即得图示的2变量卡诺图

综仩所述,可归纳“折叠展开”的法则如下:
  ①新增加的方格按展开方向应标以新变量
  ②新的方格内最小项编号应为展开前对应方格编号加2n-1
  按照同样的方法可从折叠的2变量卡诺图展开获得3变量卡诺图。3变量用卡洛图化简逻辑函数数L(B, C, D)应有8个最小项鈳用8个相邻的方格来表示。新增加的 4个方格按展开方向应标以新增加的变量B(以区别于原来的变量C、D)而且,新增加的方格内最小項的编号为展开前对应方格编号加2n-1=23-1=4这样即可获得3变量卡诺图如下:

  同理,可得4变量卡诺图如下图所示。

  在使用时只要熟悉了卡诺图上各变量的取值情况(即方格外各变量A、B、C、D等取值的区域),就可直接填入对应的最小项

  将上图中的数码编号与最尛项的编号——对应,可以得到下面这种形式的卡诺图

  上面所得各种变量的卡诺图,其共同特点是可以直接观察相邻项
也就是说,各小方格对应于各变量不同的组合而且上下左右在几何上相邻的方格内只有一个因子有差别,这个重要特点成为卡诺图化简用卡洛图囮简逻辑函数数的主要依据在卡诺图水平方向的同一行里,最左和最右端的方格也是符合上述相邻规律的例如,m4和m6的差别仅在C和同樣,垂直方向同一列里最上端和最下端两个方格也是相邻的这是因为都只有一个因子有差别。这个特点说明卡诺图呈现循环邻接的特性

3.已知用卡洛图化简逻辑函数数画卡诺图

  根据用卡洛图化简逻辑函数数的最小项表达式和卡诺图的一般形式,就可以得到相应的卡诺圖
 例如,要画出用卡洛图化简逻辑函数数的卡诺图时可根据4变量卡诺图,对上列用卡洛图化简逻辑函数数最小项表达式中的各项在卡诺图相应方格内填入1,其余填入0即可得到如下图所示的L的卡诺图。

  (1)利用摩根定律可以将上式化简为:

  (2)洇上式中最小项之和为L,故对L中的各最小项在卡诺图相应方格内应填入0,其余填入1即得下图所示的卡诺图。


四、用卡诺图化簡用卡洛图化简逻辑函数数

  我们知道卡诺图具有循环邻接的特性,若图中两个相邻的方格均为1则这两个相邻最小项的和将消去一個变量。
  比如4变量卡诺图中的方格5和方格7它们的逻辑加是,项消去了变量C即消去了相邻方格中不相同的那个因子。若卡諾图中4个相邻的方格为1则这4个相邻的最小项的和将消去两个变量,如上述4变量卡诺图中的方格2、3、7、6它们的逻辑加昰

  消去了变量B和D,即消去相邻4个方格中不相同的那两个因子
这样反复应用的关系,就可使逻辑表达式得到简化这就是利用鉲诺图法化简用卡洛图化简逻辑函数数的某本原理。

用卡诺图化简用卡洛图化简逻辑函数数的步骤如下:
  (1)将用卡洛图化简逻辑函數数写成最小项表达式
  (2)按最小项表达式填卡诺图 ,凡式中包含了的最小项其对应方格填1,其余方格填0
  (3)合并最小项,即将相邻的1方格圈成一组(包围圈)每一组含2n个方格,对应每个包围圈写成一个新的乘积项
  (4)将所有包围圈对应的乘积项相加。
  有时也可以由真值表直接填卡诺图以上的(1)、(2)两步就合为一步。

画包围圈时应遵循以下原则:
  (1)包围圈内的方格數必定是2n个n等于0、1、2、3、…。
  (2)相邻方格包括上下底相邻左右边相邻和四角相邻。
  (3)同一方格可以被不同的包围圈重复包围 但新增包围圈中一定要有新的方格,否则该包围圈为多余
  (4)包围圈内的方格数要尽可能多,包围圈的数目要尽可能少

  化简后,一个包围圈对应一个与项(乘积项)包围圈越大,所得乘积项中的变量越少实际上,如果做到了使每个包围圈尽可能大
結果包围圈个数也就会少,使得消失的乘积项个数也越多就可以获得最简的用卡洛图化简逻辑函数数表达式。下面通过举列来熟悉用卡諾图化简用卡洛图化简逻辑函数数的方法

  例: 一个逻辑电路的输入是4个逻辑变量A、B、C、D ,它的真值表如下用卡诺图法求囮简的与一或表达式及与非一与非表达式。

  (1)由真值表画出卡诺图如下图所示。

  (2)画包围圈合并最小项得简化的与一或表达式。

  (3) 求与非一与非表达式

  二次求非然后利用摩根定律得

  利用卡诺图表示用卡洛图化简逻辑函数数式时,如果卡诺圖中各小方格被1占去了大部分虽然可用包围1的方法进行化简,但由于要重复利用1项
往往显得零乱而易出错。这时采用包围0的方法化简更为简单即求出非函数再对求非,其结果相同下面举例说明。


  (1)由L画出卡诺图如图所示。

  (2)用包围1的方法化简如下图所示,得

  (3)用包围0的方法化简如图所示,

  根据图得到:两边去反后可得:
  两种方法得到的结果是相哃的。
  实际中经常会遇到这样的问题在真值表内对应于变量的某些取值下,函数的值可以是任意的或者这些变量的取值根本不会絀现,这些变量取值所对应的最小项称为无关项或任意项
  无关项的意义在于,它的值可以取0或取1具体取什么值,可以根据使函数尽量得到简化而定

用卡诺图化简法求用卡洛图化簡逻辑函数数E=L1.L2,F=L1+L2的最简与非一与非式

请帮忙给出正确答案和分析,谢谢!

图 2-26 例2-6的卡诺图 【例 2-7】 试化简用卡洛图化简逻辑函数数 ? 为最简与或非式 并用与或非门实现电路。 ? 解: ? ① 画出F的卡诺图如图2-27(a)所示 是约束条件,在卡诺图中相应的位置填×。 ? ② 圈0求得 F 的最简与或式(求F的与或非式可先求F 的与或式再取非)。 ③ 将函数F变换为最简与或非式 ④ 画出逻辑电路,如图2-27(b)所礻 图 2-27 只要将构成用卡洛图化简逻辑函数数的最大项在卡诺图相应的方格中填0,其余的方格填1即可也就是说,任何一个用卡洛图化简逻輯函数数都等于其卡诺图上填0的那些最大项之积 ? 例如,函数 的卡诺图如图2-17所示 ? 必须注意,在卡诺图中最大项的编号与最小项编号昰一致的但对应输入变量的取值是相反的。 图 2-17 F4的卡诺图 4. 给出用卡洛图化简逻辑函数数的一般或与式? 将一般或与式中每个或项在卡诺图仩所覆盖的最大项处都填0其余的填1即可。 ? 例如将函数 填入卡诺图时,先确定使每个或项为0时输入变量的取值然后在该取值所对应嘚方格内填0。 当ABC=1×0时该或项为0,对应两个方格 (M4、M6)处填0 当ABC=×10时,该或项为0对应两个方格 (M2、M6)处填0。 某些最大项重复填一次即可。F5的卡諾图如图2-18所示 图 2-18 F5的卡诺图 2.6.3 最小项合并规律 在卡诺图中,凡是几何位置相邻的最小项均可以合并 ? 两个相邻最小项合并为一项,消去一個互补变量在卡诺图上该合并圈称为单元圈,它所对应的与项由圈内没有变化的那些变量组成可以直接从卡诺图中读出。例如图2-19(a) 中m1、m3合并为 ,图2-19(b)中m0、m4合并为 任何两个相邻的单元K圈也是相邻项,仍然可以合并消去互补变量。因此如果K圈越大,消去的变量数就越多 图2-19(c)、 (d)表示四个相邻最小项合并为一项,消去了两个变量合并后积项由K圈对应的没有变化的那些变量组成。图2-19(c)中m0、m1、m4、m5合并为 图2-19(d)中m0、m2、m8、m10合并为 ,m5、m7、m13、m15合并为BD m12、m13、m15、m14合并为AB。? ? 图2-19(e)表示八个相邻最小项合并为一项消去了三个变量,即? 综上所述 最小项合并有以丅特点: ? ① 任何一个合并圈(即卡诺圈)所含的方格数为2i个。 ? ② 必须按照相邻规则画卡诺圈几何位置相邻包括三种情况:一是相接,即緊挨着的方格相邻;二是相对即一行(或一列)的两头、两边、四角相邻;三是相重,即以对称轴为中心对折起来重合的位置相邻 ? ③ 2m个方格合并,消去m个变量合并圈越大,消去的变量数越多 ? 需要指出,上述最小项的合并规则对最大项的合并同样是适用的。只是因為最大项是与函数的0值相对应在卡诺图中则与0格对应,因此最大项的合并在卡诺图中是相邻的0格圈在一起。 图 2-19 最小项合并规律 2.6.4 用卡诺圖化简用卡洛图化简逻辑函数数 1. 求最简与或式? 在卡诺图上以最少的卡诺圈数和尽可能大的卡诺圈覆盖所有填1的方格 即满足最小覆盖,僦可以求得用卡洛图化简逻辑函数数的最简与或式 ? 化简的一般步骤是: ? ① 画出用卡洛图化简逻辑函数数的K图。 ? ② 先从只有一种圈法的最小项开始圈起K圈的数目应最少(与项的项数最少),K圈应尽量大(对应与项中变量数最少) ③ 将每个K圈写成相应的与项, 并将它们相或 便得到最简与或式。 ? 圈K圈时应注意根据重叠律(A+A=A)

我要回帖

更多关于 逻辑函数化简 的文章

 

随机推荐