一,门电路
本文使用digital软件中的双掷继电器来实现以下的门电路,并结合这些门电路实现半加器与八位全加器。
与门
当输入信号A,B都置高电平时,继电器带电具有磁性,将下方双刀开关吸附,使电路导通。在输出信号前添加下拉电阻,如果没有下拉电阻的话,导线处于悬空状态,此时为高阻态,电平其实是不确定的,所以为了让信号明朗起来,我们加入下拉电阻,这样即使有外界因素介入也不会影响Y的高低电平。
-----------------------------------------------------上图为A,B高电平时---- ------------------------------------------
在数字电路中,我们描述为Y= A*B,用AND表示。
或门
或门中,只要输入信号A,B只要有一者为高电平,那么输出信号Y为高电平。
在数字电路中,Y= A+B表示或运算。
非门
非门就是将结果取反,十分好理解。
异或门
在异或门中,只有输入信号A与B不同时,输出信号Y才为高电平,其余为低电平。
在数字电路中,我们用来表示异或运算。
同或门
同或门就是异或非门,即异或门加上一个非门,记为
半加器与全加器
半加器
半加器仅仅能支持两个一位的数据加法,具有输出和进位。
对于半加器的真值表来说,A-B-SUM的的真值表等价于异或门的真值表,而A-B-Carry的真值表等价于与门的真值表,所以半加器就是一个异或门和一个与门相结合的产物。
当A为高电平时,B为低电平时,SUM为高电平,如果A,B为高电平,结果为10,有一位进位。
全加器
如果一个半加器能够接收进位,那么它就是全加器。
我们可以通过SUM和Carry的值来判断结果,因为该系统不可能进位两次,如果进位为高电平时,那么第二位一定是1,进位为低电平时,则没有第二位数。
八位二进制加法器
八位二进制加法器由一个半加器和七个全加器组成。
八位二进制加法器中,每个进位会作为输入信号参与到下一次计算中,以此类推。(从上到下为低位到高位)
其中,a0-a7为A的八位数据,b0-b7为B的八位数据,即一个字节的加法运算,这样如果A = 255时,B只要大于0,那么就会产生数据溢出,这个问题将在后续解决。
通过总线化简原理图
使用总线我们可以将a0-a7八位bit处理成一个字节,通过二进制转换为十进制,我们可以进行结果不超过255的两位数计算。