本章为用逻辑门搭建算数运算器,主要考察组合逻辑电路的功底,难度又上升了一个台阶,废话不多说,让我们开始吧!

写在最前

在完成本章的内容时,笔者按照算数逻辑部分和储存器部分两个分开完成的,本章主要是算数逻辑部分,有关存储器这条支线将在下一章进行,为了使读者能了解本章进度,需见附图
在这里插入图片描述

成对的麻烦

根据真值图,我们可以观察出了一个规律,当输入信号有两个或两个以上的1,输出为1,否则为0,根据这个思路,我们可以尝试数1的个数,什么器件可以准确知道输入信号1的个数,您可能会想到与门或者或门,当然也可以,需要自行探索,笔者采用的是异或门,异或门输出为1时,输入信号肯定有一个1和一个0,沿着这个思路就可以把剩下的补齐,分别找出有一个1的情况,有两个1,三个1的情况。
在这里插入图片描述

奇数个信号

有了上一节的基础,依靠异或门可以数一的个数。
在这里插入图片描述

信号计数

与成对的麻烦差不多,只不过需要一定的改动,按照计数器的规则,三个输入端分别代表1,2,4,三个数值,这样有不同的1的个数的时候送到不同的位即可。
在这里插入图片描述

半加器

学过数电的读者们应该知道半加器,由半加器组成的全加器可以用在实际生活中进行计数。
半加器的核心原理其实就是计数,用异或门计1的个数,这里真值表按照二进制的方法进行运算,进位用单独的输出。
在这里插入图片描述

全加器

半加器的进位可以再进行单独的一位相加,即可得到全加器,全加器在半加器的基础上加了进位加法,这个小小的改动非常有用,它可以将全加器扩展到任意位的加法!
在这里插入图片描述

加倍

将二进制数左移一位,相当于对这个数乘2
在这里插入图片描述

1位开关

方法很多,主要思路是将输入2作为开关,开关高电平,输入1信号翻转,开关低电平,输入1信号不变

在这里插入图片描述

8位或

从这里开始,我们将输入信号从1位扩展为8位,能同时能处理8位信号的单片机,即为8位机,类似51单片机。
8位或最原始的想法的就是每位都或,这关是可行的
在这里插入图片描述

8位非

每一位都取反,即可组成8位非
在这里插入图片描述

8位加法器

本关是计数器的集大成者,通过全加器我们可以知道可以将加法位数扩展到任意位,本关则是扩展到8位。
通过将每两个单独位通过全加器相加,得到的本位运算直接输出到本位上,进位结果作为下一位运算的数值。
在这里插入图片描述

负数

这一关主要理解8位数里,负数的最高位用来表示正负,从数值上来说,最高位代表-128,即可表示-128~127之间的数
在这里插入图片描述

相反数

运用微机原理所学的知识,正数的原反补均为自身,负数原码比如-1,用原码为1000_0001,原码是方便人理解的,而对计算机这个数应该是-128+1 = -127这个值,这个叫补码,计算机里的负数都是用补码的形式存储的,也就是说,如果计算机将这个数认定为负,则按照上节每位代表的大小进行运算。所以计算是这么存-1的,将我们认为的原码,最高位不变,其余位进行取反加1,则为1111_1111,所以如何将一个正数变为负数,我们只需要按照负数原码变为补码的规则,只不过这里的原码符号位为0,就是正数,具体解法见图
在这里插入图片描述

逻辑引擎

这里的逻辑操作就简单很多,将两个字节按不同逻辑进行操作即可。
在这里插入图片描述

下一章

算数运算-2/2(存储器)

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐