0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

电路如何进行逻辑运算

CHANBAEK 来源:数壳智学 作者:赤灵 2023-10-30 15:47 次阅读

2.1. 数字逻辑

布尔对传统逻辑学进行数字化,创立一门新的学科:逻辑代数(人们习惯成为布尔代数)。在布尔代数里,用字母来表示一个命题,用1代表命题为真,0代表命题为假。如果A命题是真的,则

A = 1

否则

A = 0

在逻辑学中,如果各个支命题是并列关系,称为“联言命题”,通常用“而且”来连接。为了表示这种逻辑关系,布尔代数使用“×”这个符号。这样,一个联言命题可以表示成:

A × B

为了方便也写成 A • B 或者简化成 AB。

如果支命题都为假,推理结果是假,表示为: A × B = 0 × 0 = 0

如果支命题不全为假,推理结果是假,表示为:A × B = 0 × 1 = 1 × 0 = 0

如果支命题都真,推理结果为真,表示为:A × B = 1 × 1 = 1

表 2-1 联言命题的真值表

ABA × B
000
010
100
111

在逻辑学中,如果各个支命题用“或者”“要么”来连接一种选择关系,称为“选言命题”。为了表示这种逻辑关系,布尔代数使用“+”这个符号。这样,一个联言命题可以表示成:

A + B

如果支命题都为假,推理结果是假,表示为: A + B = 0 + 0 = 0

如果支命题不全为假,推理结果是真,表示为:A + B = 0 + 1 = 1 + 0 = 1

如果支命题都真,推理结果为真,表示为A + B = 1 + 1 = 1

表 2-2 选言命题的真值表

ABA + B
000
011
101
111

除此之外的第三种逻辑关系是“非”,任何命题,比如命题A,不管是真是假,它的对立面是“非A”,可以表示成 。显然, 如果,则;如果,则。

2.2. 逻辑电路

香农在1936年在其论文《继电器和开关电路的符号化分析》中系统化的阐述了逻辑系统和电路通断之间的关系。如果用X代表一个普通开关组成的电路,那么,X=1就表示开关合上;X=0表示开关打开,如图 2-1(a)。

联言命题演算相当于两个开关X和Y的串联,如图 2-1(b)所示,只有当两个开关都接通的时候,整个电路才是通的;两个都断开,或者其中任何一个断开,整个电路是断开的。选言命题演算相当于两个开关的并联,如图 2-1(c)所示,两个开关只要任何一个接通,或者两个同时接通,整个电路就被接通;只有两个开关同时断开,整个电路才是断开的。

图片

图 2-1 命题演算和现实的开关组合具有一致性

按照这种观点,布尔代数公式也有了新的解释,见表 2-3。

布尔代数对应的开关电路
0 · 0 = 0一个断开的开关和另一个断开的开关串联,整个电路还是断开的
0 + 0 = 0一个断开的开关和另一个断开的开关并联,整个电路是断开的
1 · 1 = 1一个闭合的开关和另一个闭合的开关串联,整个电路是连通的
1 + 1 = 1一个闭合的开关和另一个闭合的开关并联,整个电路是连通的
1 + 0 = 0 + 1 = 1一个闭合的开关和另一个断开的开关无论以什么顺序并联,整个电路都是连通的
1 ·0 = 0·1 = 0一个闭合的开关和另一个断开的开关无论以什么顺序串联,整个电路都是断开的

表 2-3 布尔代数与开关电路的对应关系

2.3. 开关电路

上一节降到通过控制电路中的开关的闭合与断开,可以控制电路的状态(通电为1,不通电为0)来实现逻辑运算。但这里还有一个很大的问题,电路中的开关不能用手操作,如果用手去操作,逻辑电路就无法扩大规模和提高效率,不能实现自动化,不会有现代大规模集成电路的出现。幸好,我们找到一种用一个电路来控制另一个电路开关的方法,设计出”开关电路“。

图片

图 2-2 用开关电路组成一个报警系统

如图 2-2所示的例子中,左边是一个大型的机电设备,需要对其工作状况进行监控,如果设备运行遇到故障,则及时报警。机电设备电路和报警器是两个独立的电路,可能两个电路的运行电压都不相同,开关电路盒子里面的设计需要做到左边机电设备电路能控制右边报警电路。

为了实现这样的功能,我们在开关电路中引入“继电器”。如图 2-3是一个简单的继电器的例子,图中开关、电源和被电线围绕的电磁铁组成电路A,当电路通电时,金属柱具有磁吸功能,吸引“街铁臂”向电磁铁靠拢。可以想象,如果“街铁臂”是另一个电路B中的开关触头的话,只要位置设计合理,可以达到电路B中的开关被闭合的效果。图中电路A就是一个继电器的原理图。

图片

图 2-3继电器的例子——摩尔斯电报示意图

在明白了继电器的原理之后,我们把图 2-2中的开关电路部分的电路示意图绘制出来(如图 2-4)。通过一个继电器装置,使得机电设备的电路A能够非接触的控制报警电路B。

图片

图 2-4开关电路的内部逻辑——继电器的应用

继电器的引入实现开关电路的意义非常重大,从这以后,我们就能实现用一个电路控制另一个电路,“大规模集成电路群”也变得可能,这是现代化电子计算机出现的基础。

2.4. 逻辑电路实现

在介绍完开关电路等知识的基础上,我们终于可以介绍用电路实现“非”、“而且”、“或者”的逻辑运算。

2.4.1. 非门的实现

首先我们进一步把图 2-4的图简化成示意图(图 2-5)。图中当A电路中开关闭合(机电设备正常工作)的时候,继电器J吸引F电路的开关打开,F电路的负载(喇叭)不工作;当A电路开关打开(机电设备异常造成电路无电流),继电器J失去磁性,F电路的开关在弹簧装置的作用下闭合,F电路复杂(喇叭)工作,发出警报。

图片

图 2-5用继电器控制电路的示意图

在这个例子中,F电路是输出,A电路是输入,发现F的状态与A的状态完全相反,这个电路设计实现了逻辑学中的“非”操作,这个电路逻辑用公式描述是:。

我们对电路的表现方式做进一步的简化,使得在后面进一步解释的时候更加简介明了。

图片

图 2-6各个电路共用电源

图片

图 2-7 为了少绘制连线,使用“接地”符号

如果我们把图 2-7中的阴影部分独立出来,就是一个具有逻辑“非”操作的电子元件,成为“非门”。图画成图 2-8:

图片

图 2-8非门的构造

在绘制电路图的时候,非门用更简单的符号表示(图 2-9):

图片

图 2-9 非门的符号

非门实现了逻辑否定,即逻辑非:

图片

2.4.2. 与门的实现

有了上面的基础,我们可以很容易的看懂“与门”的电路结构图(图 2-10),输出电路F有两个开关分别对应A、B两个输入电路的继电器J1、J2,当A电路通电时,J1对应的开关闭合,当B电路通电时,J2对应的开关闭合。因为F电路的两个开关是串联,所以只有当A、B电路同时通电(输入1)的时候,F电路通电(输出1)。发现F和A、B的逻辑关系如表 2-4。表达式是:F = A • B

表 2-4 与门的输入、输出逻辑关系

ABF
断开 (0)断开 (0)断开 (0)
断开 (0)通电(1)断开 (0)
通电(1)断开 (0)断开 (0)
通电(1)通电(1)通电(1)

图片

图 2-10 与门的简化电路图

与门在电路图中简化的画法是:

图片

图 2-11 与门的符号

2.4.3. 或门的实现

“或门”的电路结构图(图 2-12),F电路是一个并联电路,两个开关处于并联电路的两个支路上,也就是说这两个开关,至少有一个闭合,F电路就是通路。同上节所述,两个开关分别由A、B电路的继电器J1、J2控制,则,F和A、B的逻辑关系如表 2-5。表达式是:F = A + B 。

表 2-5 或门的逻辑输入、输出逻辑关系表

ABF
断开 (0)断开 (0)断开 (0)
断开 (0)通电(1)通电(1)
通电(1)断开 (0)通电(1)
通电(1)通电(1)通电(1)

图片

图 2-12 或门的简化电路图

或门在电路图中简化的画法是:

图片

图 2-13 或门的符号

2.5. 常用逻辑芯片介绍

2.5.1. 非门芯片XL74LS04

图片

图 2-14六路非门芯片针脚原理图

2.5.2. 与门芯片XL74LS11

图片

图 2-15三路3输入与门芯片针脚原理图

2.5.3. 或门芯片CD7042BM96

图片

图 2-16二路4输入或门芯片针脚原理图

2.6. 小节

本章主要介绍了电路如何进行逻辑运算,从数字逻辑的布尔代数讲到用电路如何实现简单的逻辑运算,并最终阐述了“非”、“与”、“或”、“异或”四个基础逻辑运算,设计了非门、与门、或门、异或门四个基础电路。在此预告这几个门的重要性,后面复杂的集成电路或者芯片的设计,几乎都是由此类简单的门电路来实现。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 继电器
    +关注

    关注

    131

    文章

    5027

    浏览量

    146114
  • 电路图
    +关注

    关注

    10222

    文章

    10645

    浏览量

    511607
  • 开关电路
    +关注

    关注

    58

    文章

    540

    浏览量

    65510
  • 逻辑电路
    +关注

    关注

    13

    文章

    471

    浏览量

    42218
  • 非门
    +关注

    关注

    1

    文章

    29

    浏览量

    33757
收藏 人收藏

    评论

    相关推荐

    单片机的逻辑运算符和位运算符是什么?数字电路中的常用符号

    “真”就是其它一切“非 0 值”。然后,我们来具体分析一下几个主要的逻辑运算符。我们假定有 2 个字节变量:A 和 B,二者进行某种逻辑运算后的结果为 F。以下逻辑运算符都是按照变量整
    的头像 发表于 10-03 08:50 2.6w次阅读
    单片机的<b class='flag-5'>逻辑运算</b>符和位<b class='flag-5'>运算</b>符是什么?数字<b class='flag-5'>电路</b>中的常用符号

    逻辑运算符是什么

    逻辑运算符:与或非条件结构if -else及其嵌套循环结构whilefordo-while
    发表于 07-14 07:50

    逻辑电路逻辑运算

    一、逻辑电路逻辑运算逻辑运算符:(1)按变量整体值进行运算逻辑与(&&)逻辑或(||)
    发表于 07-16 10:51

    基本逻辑运算

    基本逻辑运算   在分析和设计数字电路时,需要使用的一个数学工具是逻辑代数。逻辑代数也称为布尔代数,由英国数学家G.Boole提出。逻辑
    发表于 04-06 23:56 2872次阅读
    基本<b class='flag-5'>逻辑运算</b>

    逻辑运算,什么是逻辑运算

    逻辑运算,什么是逻辑运算    计算机中除了进行加、减、乘、除等基本算术运算外,还可对两个或一个逻辑
    发表于 04-13 10:48 3.1w次阅读

    逻辑运算与移位指令

    逻辑运算与移位指令:8086/8088CPU的指令系统提供8位和16位的逻辑运算与移位指令有3组。 逻辑运算指令 AND/OR/XOR/NOT/TEST 移位指令 SHL/SHR/SAL/SAR 循环移位指令 ROL/ROR/R
    发表于 07-03 23:52 0次下载

    数字电路逻辑运算逻辑电路知识分享

    不管是数字电路,还是C语言,我们都会经常遇到逻辑运算逻辑电路,在这里我介绍一下,大家先简单了解一下,知道有这么回事,回头遇到了,再详细研究。 首先,在逻辑这个概念范畴内,存在真和假这
    的头像 发表于 11-15 14:54 2w次阅读
    数字<b class='flag-5'>电路</b>中<b class='flag-5'>逻辑运算</b>和<b class='flag-5'>逻辑电路</b>知识分享

    单片机的逻辑电路逻辑运算的介绍

    在数字电路,我们经常会遇到逻辑电路,而在 C 语言中,我们则经常用到逻辑运算,二者在原理上是相互关联的。辑运算
    的头像 发表于 01-29 12:52 7434次阅读
    单片机的<b class='flag-5'>逻辑电路</b>与<b class='flag-5'>逻辑运算</b>的介绍

    C语言中的逻辑运算符是怎么样的

    C语言提供了一组逻辑运算符:或(||)、且(&&)、非(!),分别对应于命题逻辑中的 OR、AND、NOT运算
    的头像 发表于 02-20 16:25 3724次阅读

    什么是逻辑运算

    逻辑运算符对其操作数求值,并返回一个值,该值指示求值结果是真还是假(true or false)。例如,运算a && b测试a和b是否都为真,如果两个操作数都为真,则运算符返回真。否则,运算
    的头像 发表于 02-09 15:55 1627次阅读
    什么是<b class='flag-5'>逻辑运算</b>符

    逻辑运算符与表达式

    逻辑运算符与位逻辑表达式可以实现位的编辑,比如位的清零、设置、取反和取补等操作。使用位逻辑运算符与位逻辑表达式可以在不使用汇编的情况下实现部分汇编的功能
    的头像 发表于 02-21 15:22 943次阅读
    位<b class='flag-5'>逻辑运算</b>符与表达式

    C语言逻辑运算符优先次序

    有3种逻辑运算符:与(AND),或(OR),非(NOT)。在basic和Pascal等语言可以在程序中直接用and,or,not作为逻辑运算符。在C语言中不能再程序中直接使用,而是用其他符号代替。
    的头像 发表于 03-09 10:49 2052次阅读

    三种基本逻辑运算介绍

     模拟电路可以利用三极管的导通 / 截止实现数字状态的切换,从而实现0和1的逻辑运算
    的头像 发表于 03-23 13:57 4908次阅读
    三种基本<b class='flag-5'>逻辑运算</b>介绍

    KUKA机器人的逻辑运算

    逻辑运算符用于布尔变量、常数和简单的、借助比较运算符构成的逻辑表达式的逻辑运算
    发表于 07-21 10:06 1492次阅读
    KUKA机器人的<b class='flag-5'>逻辑运算</b>符

    verilog的逻辑运算

    写在前面 之前曾经整理过verilog的各类运算符的表达方式,但是在学习的过程中并未深入研究关于逻辑运算符的相关知识,导致在实际使用过程中错误频出,下面是我从网络上整理的相关verilog的逻辑运算
    的头像 发表于 09-21 10:07 946次阅读
    verilog的<b class='flag-5'>逻辑运算</b>符