目录
1 三种基本逻辑运算
1.1 与(AND)
1.2 或(OR)
1.3 非(NOT)
2 由基本门电路组成的其他门电路
2.1 异或
2.2. 同或
2.3 与非
2.4 或非
用于分析数字电路中逻辑功能的数学方法——逻辑代数(或者称为布尔代数)。
广义上,逻辑泛指规律,分为思维逻辑和数理逻辑。数理逻辑,是用数学方法研究逻辑或形式逻辑的学科,属逻辑形式上符号化、数学化的逻辑。而逻辑代数和数理逻辑有巨大的联系,可以相互联系相互促进,代数可以帮助解决数理逻辑中的一些问题,而数理逻辑又可以帮助解决代数问题。
逻辑代数的基本运算包括与(AND)、或(OR)、非(NOT)三种。
1 三种基本逻辑运算
1.1 与(AND)
如果有两个操作数A和B,必须A和B的条件都满足,结果才为真,其他情况结果为假,那么就是逻辑与,可以写为:
上面公式是最常用的方式,同时也可以写成Y=A & B=A AND B。
在逻辑运算中,用“.”表示逻辑与运算,用“+”表示逻辑或运算,右上角“ ' ”表示逻辑非运算。
写成真值表为:
A | B | Y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
逻辑与的符号形式:
或
逻辑与的电路图为
在上面电路中,当A=1表示开关闭合,A=0表示开关断开,Y=1表示灯亮,Y=0表示灯灭。当A和B均闭合时,灯泡Y亮,当A和B有一个是断开状态时,灯泡Y灭。两个条件必须全部具备,为真的结果才会发生。
使用Digital软件绘制逻辑与的电路图如下所示:
在上图中,开关处是一个继电器,继电器是一种自动控制电路的子开关。当A和B均为0的时候,可以看到Y为0。
当A为0,B为1时:
可以看到Y输出为0。
当A为1,B为0的情况如下图所示:
当A为1,B为0时,Y的输出为0。
当A和B都为1时:
当A和B都为1时,那么此时Y输出为1。
通过对比各种输入情况下的输出情况,可以得到这是逻辑与的电路图,可将其进行保存,这里推荐保存在Digital文件夹中的lib位置:
为什么要保存在lib文件夹中呢?因为如果我们以后想使用这个文件的功能,直接在组件中选用即可。如下所示:
直接调用之前做的逻辑与的组件示意图如下所示:
或者可以直接使用软件中逻辑与的符号:
1.2 或(OR)
如果有两个操作数A和B,A和B中有一个条件满足,那么结果就为真,如果A和B两个条件均不满足,结果为假,这就是逻辑或,可以写为:
上面公式是最常用的公式,除此之外还有Y=A|B=A OR B。
写成真值表的形式为:
A | B | Y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
逻辑或的符号形式:
或
逻辑或的电路是:
在上面的电路中,A和B有一个处于闭合状态,那么灯泡就亮,如果A和B都处在断开状态,那么灯泡Y灭。
使用Digital软件绘制的电路图如下所示:
当A和B均为0,此时Y的输出结果为0。
当A和B其中有1个不为0时,例如当A为1,B为0时,此时电路如下所示:
由上图结果可知,当A和B有一个为1时,那么Y的输出为1。
当A和B均为1时,电路图如下所示:
可以看到,当A和B均为1时,此时Y的输出为1。从输出结果来看,可以看到符合真值表结果。
将逻辑或文件其保存在lib文件夹中:
同时也可以直接应用软件中的逻辑或组件:
1.3 非(NOT)
如果有一个操作数A,如果输入A为真,那么结果为假,如果输入A为假,那么结果为真。可以写为:
或者写成Y=NOT A。
写成真值表的形式为:
A | Y |
0 | 1 |
1 | 0 |
逻辑非的符号形式为:
或
逻辑非运算的电路图为:
使用Digtial软件进行绘图如下所示:
需要说明的是,继电器这里初始状态下要选择闭合继电器:
运行电路可以看到:
当A为0时,Y的输出为1。
当A输入为1时:
当输入1时,此时继电器处于打开状态,此时Y的输出为0。
设计电路的时候,可以直接利用软件分析的方式对于结果进行比较,使用Digital软件中最上面的一行的分析栏下面的分析键(或者直接使用F9键)可以出现相关电路的真值表(注意这里使用分析键之前每个输入输出必须有自己的标签,例如上面输入组件的标签分别为A,输出的组件为Y),可以看到:
符合逻辑非运算的结果。
将其逻辑非的文件保存到lib的文件架中:
或者直接使用软件中的逻辑非组件:
2 由基本门电路组成的其他门电路
与、或、非三种电路一般称为基础门电路,而其他门电路可以用这三种门电路来组合。
2.1 异或
如果有两个操作数A和B条件相同(都满足或者都不满足),那么结果为假,如果操作数A和B条件不同,那么结果为真。可以写成为:
或者写成Y=A'.B+A.B'。
真值表的形式为:
A | B | Y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
当A和B的值不相同时(即一个为1另一个为0时),结果为真,当A和B的值相同时(A和B的值同时为0或者同时为1),结果为假。
逻辑异或的符号形式为:
或
直接使用Digital软件画其电路图得:
该电路的真值表如下所示:
将其异或电路图文件保存到lib文件夹中得:
2.2. 同或
如果有两个操作数A和B条件相同(都满足或者都不满足),那么结果为真,如果两个操作数A和B条件不同,那么结果为假。可以写成:
或者写成Y=AB+A'B'或者Y=(A+B')(A'+B)。
真值表的形式为:
A | B | Y |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
当A和B的值相同时(即均为1或者均为0时),那么结果Y为1;如果A和B的值不相同(即一个为0,一个为1时),那么结果Y为0。
逻辑同或的符号为:
或
需要说明的是,同或的电路图有两种画法,一种方法是AB+A'B'的电路接法,另一种是(A+B')(A'+B)的电路接法。
首先是AB+A'B‘电路的接法:
真值表为:
同时也可以绘制另一种形式Y=(A+B')(A'+B)。
分析这个电路的真值表可得:
通过真值表的比较可以看到结果同或的结果相同,因此此电路图正确。将其电路图文件保存在lib文件夹中得:
2.3 与非
如果两个操作数A和B,首先进行与操作,再取非操作,最终得到与非操作。可以写成:
同时也可以写成Y=A’+B‘。
真值表的形式为:
A | B | Y |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
逻辑与非的符号形式为:
或
使用Digital软件画相关电路图如下所示:
当A和B输入均为1时,此时Y的输出才为0:
或者连接成Y=A'+B'的形式:
此电路的真值表如下图所示:
将文件进行保存到lib文件夹如下所示:
或者直接在Digital软件中直接使用与非的组件:
2.4 或非
对于两个操作数A和B,首先进行逻辑或操作,再取逻辑非操作,就是或非。
可以写成:
也可以写成:Y=A‘B'。
真值表的形式为:
A | B | Y |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
逻辑或非得的符号形式为:
或
利用Digital软件画或非的电路图如下所示:
当A和B其中一个为1,Y的输出为0:
另一种画法就是画一个Y=A’B'的电路图,如下所示:
电路图的真值表为:
通过比较真值表的结果,符合或非的输出结果。
将文件保存在lib文件夹中:
或者直接使用Digital软件中或非组件: