2024年程序猿必备的数电知识之(逻辑代数基础后半篇)(2),2024年最新搜狐新媒体运营面试

在这里插入图片描述

感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的:

① 2000多本Python电子书(主流和经典的书籍应该都有了)

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

⑤ Python学习路线图(告别不入流的学习)

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

若两个最小项只有一个因子不同,则称这两个最小项具有相邻性。

例如:A’BC’和ABC’两个最小项仅第一个因子不同,所以他们具有相邻性。这两个最小项相加时定能合并成一项并将一对不同的因子消去:

A’BC’ + ABC’ = (A’ + A)BC’ = BC’

2.最大项

在n变量逻辑函数中,若M为n个变量之和,而且这n个变量均以原变量或反变量的形式在M中出现一次,则称M为该组变量的最大项。

例如:三变量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)共八个(即23个)。对于n个变量则有2n个最大项。可知:n变量的最大项数目和最小项数目是相等的。

在这里插入图片描述

根据最大项的定义同样也可以得到它的主要性质:

①在输入变量的任何取值下必有一个最大项,而且只有一个最大项的值为0。

②全体最大项的乘积为0。

③任意两个最大项之和为1。

④只有一个比那里不同的两个最大项的乘积等于各相同变量之和。

如果将最大项和最小项的两张表对比,可以发现最小项和最大项存在如下关系:

例如:m0 = A’B’C’,则m0’=(A’B’C’)’ = A+B+C =M0

3.逻辑函数的最小项之和形式

首先,将给定的逻辑函数式化为若干乘积项之和的形式,亦称“积之和”形式。然后,再利用基本公式A+A’=1将每个乘积项中缺少的因子补全,这样就可以将与或的形式化为最小项之和的标准形式。

在这里插入图片描述

(4)逻辑函数的最大项之积形式

利用逻辑代数的基本公式和定理,首先我们一定能把任何一个逻辑函数式化成若干多项式相乘的或与形式(也称“和之积”形式)。然后再利用基本公式AA’=0将每个多项式中缺少的变量补齐,就可以将函数式的或与形式化成最大项之积的形式了。

在这里插入图片描述

2.6逻辑函数的化简方法

==========================================================================

**函数式中相加的乘积项不能再减少,而且每项中相乘的因子不能再减少时,则函数式为最简形式。

化简逻辑函数的目的就是要消去多余的乘积项和每个乘积项中多余的因子,以得到逻辑函数式的最简形式。常用的化简方法有公式化简法,卡诺图化简法以及适用于编制计算机辅助分析程序的Q-M法等。**

1.公式化简法


公式化简法的原理就是反复使用逻辑代数的基本公式和常用公式消去函数式中多余的乘积项和多余的因子,以求得函数式的最简形式。

(1)并项法

利用公式AB+AB’=A可以将两项合并为一项,并消去B和B’这一对因子,而且,根据代入定理可知,A和B均可以是任何复杂的逻辑式。

在这里插入图片描述

(2)吸收法

利用公式A+AB=A可将AB项消去。A和B同样也可以是任何一个复杂的逻辑式。

在这里插入图片描述

(3)消项法

利用公式AB+A’C+BC=AB+A’C及AB+A’C+BCD=AB+A’C将BC或BCD项消去。其中A,B,C,D均可以是任何复杂的逻辑式。

在这里插入图片描述

(4)消因子法

利用公式A+A’B=A+B可将A’B中的A’消去。A,B均可以是任何复杂的逻辑式。

在这里插入图片描述

(5)配项法

①根据基本公式中的A+A=A可以在逻辑函数式中重复写入某一项,有时能获得更加简单的化简方法。

在这里插入图片描述②根据基本公式中的A+A’=1可以在函数式中的某一项上乘以(A+A’),然后拆分为两项分别与其他项合并,有时能得到更加简单的化简结果。

在这里插入图片描述两者合起来综合使用:

在这里插入图片描述

2.卡诺图化简法


思路:既然对任何逻辑函数都可以展开为最小项之和的形式,那么采用合并最小项的方法化简逻辑函数,就是一种对任何逻辑函数都适用的,而且具有固定操作步骤和方法的化简方法。

卡诺图化简法就是一种基于合并最小项的化简方法!!!

(1)卡诺图介绍:

定义:将n变量的全部最小项各用一个小方块表示,并使具有逻辑相邻性的最小项在几何位置上也相邻地排列起来,所得到的图形称为n变量最小项的卡诺图。

如下图:为二到五变量最小项的卡诺图。图形两侧标注的0和1表示使对应小方格内的最小项为1的变量取值。同时,这些0和1组成的二进制数所对应的十进制数大小也就是对应的最小项的编号。

在这里插入图片描述

为了保证图中几何位置相邻的最小项在逻辑上也具有相邻性,这些数码不能按自然二进制数从小到大地顺序排列,而必须按照图中的方式排列,以确保相邻的两个最小项仅有一个变量是不同的。

从图中还可以看出,处在任何一行或一列两端的最小项也仅有一个变量不同,所以它们也具有逻辑相邻性。因此,从几何位置上应当将卡诺图看成是上下,左右闭合的图形。

在变量>=5以后,仅用几何图形在两维空间的相邻性来表示逻辑相邻性已经不够了。比如:图中d所示的五变量最小项的卡诺图中,除了几何位置相邻的最小线具有逻辑相邻性以外,以图中双竖线为轴左右对称位置上的两个最小项也具有逻辑相邻性。

既然任何一个逻辑函数都能表示为若干最小项之和的形式,那么自然也就可以设法用卡诺图来表示任意一个逻辑函数。具体的方法是:首先将逻辑函数化为最小项之和的形式,然后在卡诺图上与这些最小项对应的位置上填入1,在其余的位置上填入0,就得到了表示该逻辑函数的卡诺图。也就是说,任何一个逻辑函数都等于它的卡诺图中填入1的那些最小项之和。

在这里插入图片描述

(2)用卡诺图化简逻辑函数

利用卡诺图化简逻辑函数的方法称为卡诺图化简法或图形化简法。化简时依据的基本原理就是具有相邻性的最小项可以合并,并消去不同的因子。由于在卡诺图上几何位置相邻与逻辑上的相邻性是一致的,因而从卡诺图上能直观的找出那些具有相邻性的最小项并将其合并化简。

1.合并最小项的原则

若两个最小项相邻,则可合并为一项并消去一对因子。合并后的结果中只剩下公共因子。。

图中(a)和(b)中画出了两个最小项相邻的几种可能情况。例如:图(a)中A’BC(m1)和ABC(m7)相邻,故可合并为;

A’BC+ABC=(A’+A)BC=BC

合并后将A和A’一对因子消掉了,只剩下公共因子B和C。

在这里插入图片描述若四个最小项相邻并排列成一个矩形组,则可合并为一项并消去两对因子。合并后的结果中只包含公共因子。

例如:图(d)中,A’BC’D(m5),A’BCD(m7),ABC’D(m13)和ABCD(m15)相邻,故可合并。合并后得到:

A’BC’D+A’BCD+ABC’D+ABCD

=A’BD(C+C’)+ABD(C+C’)

=BD(A+A’)=BD

可见,合并后消去了A,A’和C,C’两对因子,只剩下四个最小项的公共因子B和D。

总结:

合并最小项的一般规则:如果有2**n个最小项相邻(n=1,2,…)并排列成一个矩形组,则它们可以合并为一项,并消去n个因子。合并后的结果中仅包含这些最小项的公共因子。

2.卡诺图化简法的步骤:

(1)将函数化为最小项之和的形式

(2)画出表示该逻辑函数的卡诺图

(3)找出可以合并的最小项

(4)选取化简后的乘积项。选取的原则:

①这些乘积项应包含函数式中所有的最小项(应覆盖卡诺图中所有的1)

②所用的乘积项数目最少。也就是可合并的最小项组成的矩形组数目最少。

③每个乘积项包含的因子最少。也就是每个可合并的最小项矩形组中应包含尽量多的最小项。

在这里插入图片描述

在这里插入图片描述

3.具有无关项的逻辑函数及其化简


(1)约束项,任意项和逻辑函数式中的无关项

约束项:

第一种特殊情况输入变量的取值不是任意的,对输入变量取值的限制称为约束。我们把具有这种特点的逻辑函数称为具有约束的逻辑函数,同时把这一组输入变量称为具有约束的一组逻辑变量。

任意项:

第二种特殊情况是在输入变量的某些取值下函数值是1还是0皆可,并不影响电路的功能。在这些变量取值下,其值等于1的那些最小项称为任意项。存在任意项的逻辑函数也叫做不完全定义的逻辑函数。

注意:因为使约束项的取值等于1的输入变量取值是不允许出现的,所以约束项的值始终为0,;

而任意项则不同,在函数的运行过程中,有可能出现使任意项取值为1的输入变量取值。

逻辑函数式中的无关项:

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、全套PDF电子书

书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

四、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 8
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值