目录
一、数值与编码
1.数制
所谓数制就是计数的方法。在日常生活中,常用的为十进制,而在数字电路中,通常采用二进制,还有八进制、十六进制。下面介绍数字电路中常用的二进制和十六进制。
1.1 二进制
二进制有两个数码0和1,它们与电路的两个状态(开和关、高电平和低点平等)直接对应,使用比较方便。
二进制的进位规则是逢二进一,即1+1=10,可写成。也就是说,二进制以2为基数,如:
1.2 十六进制
十六进制有0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F十六个编码,其中A~F分别代表十进制的10~15.与十进制区别,规定十六进制数注有下标16或H。十六进制是逢十六进一,即F+1=10,可写成,其基数为16,如
1.3 数制之间的转换
1.3.1 十进制转换为二进制
由上式可见:
1.3.2 十进制转换为十六进制
可以先转换为二进制,再由二进制转换为十六进制数。因为每一个十六进制数码都可以用4位二进制数来表示,表示十六进制的B;
表示十六进制的5等。故可将二进制从低位开始,每4位为一组写出其值,从高位到低位读写,就是十六进制。如
下面比较一下上面3种数制的数码,其关系如下:
十进制 | 二进制 | 十六进制 | 十进制 | 二进制 | 十六进制 |
0 | 000 | 0 | 8 | 1000 | 8 |
1 | 001 | 1 | 9 | 1001 | 9 |
2 | 010 | 2 | 10 | 1010 | A |
3 | 011 | 3 | 11 | 1011 | B |
4 | 100 | 4 | 12 | 1100 | C |
5 | 101 | 5 | 13 | 1101 | D |
6 | 110 | 6 | 14 | 1110 | E |
7 | 111 | 7 | 15 | 1111 | F |
2.编码
所谓编码,就是用数字或某种文字和符号来表示某一对象或信号的过程。十进制编码或某种文字,和符号的编码难以用电路来实现,在数字电路中一般采用二进制数。用二进制数表示十进制数的编码,方法称为二一十进制编码,如BCD码。常用的BCD码有8421码、5421码、2421码等编码方式。,以8421码为例,8421分别代表对应二进制位的权,即当那一位二进制位为1时代表10进制的数为,相应的权数。看一看与十进制码的对照关系:
二、逻辑代数及应用
1.逻辑代数及其基本运算
逻辑代数也称为布尔代数,它是分析和设计逻辑电路的一种数学工具,用来描述数字电路和数字,系统的结构和特性。,
逻辑代数有“1”和“0”两种逻辑值,它们并不表示数量的大小,而是表示两种对立的逻辑状态,如电平的高低、晶体管的导通和截止、脉冲信号的有无、事物的是非等。所以,逻辑1和逻辑0与自然数的1和0有本质的区别。
在逻辑代数中,输出逻辑变量和输入逻辑变量的关系,称为逻辑函数,可表示为
F=f(A、B、C....)
其中A、B、C....为输入逻辑变量,F为输出逻辑变量。下面介绍基本逻辑运算。
1.1 逻辑乘
逻辑乘是描述与逻辑关系的,又称与运算。逻辑表达式为
F=AB
其意义是仅当决定事件发生的所有条件A、B均具备时,事件才能发生。例如,把两个开关和一,盏电灯串联接到电源上,只有当两个开关均闭合时灯才能亮。两个开关中有一个不闭合,灯就不能亮。,在A和B分别取0或1值时,F的逻辑状态列于表,称为真值表。
1.2 逻辑加
逻辑加是描述或逻辑关系的,也称或运算。逻辑表达式为
F=A+B
其意义是当决定事件发生的各种条件A、B中,只要有一个或一个以上的条件具备,事件F就发生。仍以上述灯的情况为例,把两个开关并联与一盏电灯串联接到电源上,当两个开关中有一个或一个以上闭,合时灯均能亮。只有两个开关全断开灯才不亮。当A和B分别取0或1值时,F的逻辑状态列于表.
1.3 逻辑非
逻辑非是对一个逻辑变量的否定,也称非运算。逻辑表达式为
其意义是当条件A为真,事件发生出现的结果必然是这种条件相反的结果。仍以灯的情况为例,一,个在面板上标有“开”和“关”字样的开关与一盏电灯串联接到电源上,但由于安装这个开关的电工粗心,,当开关打向“开”时灯灭,而打向“关”时灯亮。当A取0或1值时,F的逻辑状态列于表。
2.逻辑代数的运算法则
2.1 基本运算法则
2.2 交换律
2.3 结合律
2.4 分配律
2.5 吸收律
2.6 反演律(摩根定律)
三、基本逻辑门电路
基本逻辑门电路有三种,分别是与门电路、或门电路和非门电路。这些基本逻辑门电路在数字电路中起着至关重要的作用,它们分别实现与、或、非三种基本的逻辑关系。
1.逻辑门电路
1.1 与门
与门(英语:AND gate)又称“与电路”。是执行“与”运算的基本逻辑门电路。有多个输入端,一个输出端。当所有的输入同时为高电平(逻辑1)时,输出才为高电平,否则输出为低电平(逻辑0)。
逻辑式:
逻辑符号:
真值表:
1.2 或门
或门(英文:Or gate)又称或电路。如果几个条件中,只要有一个条件得到满足,某事件就会发生,这种关系叫做“或”逻辑关系。具有“或”逻辑关系的电路叫做或门。或门有多个输入端,一个输出端,多输入或门可由多个2输入或门构成。只要输入中有一个为高电平时(逻辑1),输出就为高电平(逻辑1);只有当所有的输入全为低电平时,输出才为低电平。
逻辑式:
逻辑符号:
真值表:
1.3 非门
非门(英文:NOT gate)又称反相器,是逻辑电路的基本单元,非门有一个输入和一个输出端。逻辑符号中输出端的圆圈代表反相的意思。当其输入端为高电平(逻辑1)时输出端为低电平(逻辑0),当其输入端为低电平时输出端为高电平。也就是说,输入端和输出端的电平状态总是反相的。
逻辑符号:
真值表:
1.4 与非门
NAND也称为与非门电路,是对逻辑与(AND)电路的输出在进行非逻辑运算(NOT)的电路。这种电路的原理如上图所示:没有按下开关时,开关A和开关B均为OFF,即为0状态,且两个开关的节点都接通,所以灯泡为ON,即为1状态;而当开关A和开关B的状态分别是0、1或1、0灯泡都发光,为1的状态;只有将两个开关都按下,即都为1的状态时,由于开关的节点全部断开,灯泡熄灭,输出状态为0。即只有输入全为1时,输出才是0。
逻辑式:
逻辑符号:
真值表:
1.5 或非门
由或门和非门组合而成。
其中,非门和或非门在数字电路中较为常见。
逻辑式:
逻辑符号:
真值表:
2.复合逻辑运算
1、与非:有0出1,全1为0
2、或非:有1出0,全0为1
3、异或:相同为0,不同为1
4、同或:相同为1,不同为0
同或和异或互为取反关系,异或和同或是对于两输入变量之间的关系
对于与门、或门、非门都可以有多个输入端,而异或和同或只能有两个输入端
四、逻辑代数的基本规则
1、代入规则
用某逻辑函数替换另一等式中的某一逻辑变量,逻辑等式依然成立
2、反演规则
原变量变反变量、反变量变原变量、与变或、或变与、0变1、1变0
反演电电工地电子基础工地电子基再反演即为原式
3、对偶规则
变量不变、与变或、或变与、0变1、1变0、对偶表达式与原式没有逻辑关系
两式的对偶式具有相等关系,则原式的相等关系也成立
对偶再对偶即为原式
五、逻辑函数的化简方法
1、代数法
灵活运用常见的公式:并项、吸收、消去、配项
2、卡诺图法(常用)
2.1 卡诺图的特点
n变量有个小方格包括了所有的最小项、变量取值按照格雷码的顺序排放,保证了在卡诺图任意位置几何相邻的两项都为逻辑相邻项
相邻:最小项中只有一个变量取值不一样 ,上下左右是循环相邻
2.2 卡诺图的缺点
不太能用于6变量以上的逻辑函数化简,变量个数越多越复杂
2.3 卡诺图的填写方法
通过配项得到最小项或者最大项表达式
将逻辑函数写成最小项表达式,在对应位置填1
将逻辑函数写成最大项表达式,在对应位置填0
2.4 卡诺图的化简
利用圈0或者圈1的方式消除相邻项中的某些变量
2个相邻消去1个变量
4个相邻消去2个变量
8个相邻消去3个变量
化简原则:
(1)画圈个数尽量的少,包括的最小项的个数尽量的多
(2)可以重复画圈,但是两个圈中需要有至少有一个最小项不同
(3)四个角是相邻的,可以画圈
(4)先画唯一可能的圈、避免重复的画圈
(5)无关项即可以看成0,也可以看成1,一切以化简为目的,但每个1都要被圈到
(6)最后的化简结果可能不唯一、但是项数是一样的
以上就是对电子电工技术基础—逻辑门电路中一些相关知识的理解和介绍
六、相关基础知识
1.课程概述
百度百科链接:
【电工与电子技术】电工与电子技术期末考试速成课,不挂科!!#高数帮
2.电路的基本定律
欧姆定律:描述导体中的电流与电压和电阻的关系。公式:I=U/R,其中I是电流,U是电压,R是电阻。掌握电流、电压和电阻之间的关系,理解欧姆定律的应用。例如,欧姆定律计算器的Python
def ohm_law_calculator(voltage, resistance):
current = voltage / resistance
return current
voltage = float(input("输入电压 (V): "))
resistance = float(input("输入电阻 (Ω): "))
current = ohm_law_calculator(voltage, resistance)
print(f"电流为: {current:.2f} A")
基尔霍夫定律:
基尔霍夫电流定律(KCL):在任一瞬时,进入某节点的电流之和等于离开该节点的电流之和。公式:∑Iin=∑Iout。学习节点电压法和回路电流法,用于复杂电路的分析。例如,基尔霍夫电压定律(KVL)的Python代码如下:
def kirchhoff_voltage_law(v1, v2, v3, i):
return abs(v1 + v2 - v3 - i * 10) < 1e-6
v1 = 12.0
v2 = 5.0
v3 = 7.0
i = 1.0
if kirchhoff_voltage_law(v1, v2, v3, i):
print("满足基尔霍夫电压定律")
else:
print("不满足基尔霍夫电压定律")