minecraft吧 关注:2,548,927贴子:31,869,125

#大触公开课#简明教程——拆解全加器

只看楼主收藏回复



如题,我尽可能写一个简单清楚的教程。内容就是对上图的全加器的解析。同时,为了简单,我尽可能不用术语。图中这个全加器是我一个下午的原创作品,属于普通的全加器,没有进一步化简也没有进一步加速,同时也没有增加更多功能,因此比较适合教学使用。


IP属地:天津1楼2016-07-31 17:22回复
    这个帖子的内容会这样安排:
    1、简单介绍全加器的原理
    2、拆解这个全加器


    IP属地:天津2楼2016-07-31 17:25
    回复
      在数字电路中,全加器是十分重要的,它是基于二进制运行的,目的是把二进制数相加


      IP属地:天津4楼2016-07-31 17:29
      回复
        感受直播了


        来自iPhone客户端5楼2016-07-31 17:29
        回复
          已收藏 催更


          IP属地:广东来自Android客户端6楼2016-07-31 17:32
          回复
            全加器 有什么用


            来自iPhone客户端8楼2016-07-31 17:33
            收起回复
              学习学习抢个前


              IP属地:重庆来自iPhone客户端9楼2016-07-31 17:33
              回复


                来自Android客户端11楼2016-07-31 17:35
                回复
                  二进制数的加法规则是十分简单的,我们只有0和1两个数——0+1=1,1+0=1,0+0=1,1+1=10,这就是我们需要了解的主要内容了,更多位的二进制数的相加,诸如10+11=101,只是以上规则的延伸罢了。(在本贴中,我假设读者已经了解基本的二进制知识,同时了解简单的逻辑门)


                  IP属地:天津12楼2016-07-31 17:36
                  收起回复
                    我们的目的是在数字电路中(本贴中亦指红石电路)实现二进制数的加法。
                    我们已知,任何位的二进制数加法,都是两个1位二进制数加法的延伸,可以猜想,如果实现了两个1位二进制数相加,那么更多位的二进制数的相加是易于实现的
                    因此,现在我们来考察一下在数字电路中如何实现两个1位二进制数相加


                    IP属地:天津13楼2016-07-31 17:39
                    回复
                      首先,我们观察一下两个一位二进制数相加的全部可能出现的情况:
                      0+1=1,1+0=1,0+0=1,1+1=10
                      可以发现,前三种情况,相加之和是一位二进制数,第四种情况,相加之和是两位二进制数


                      IP属地:天津14楼2016-07-31 17:42
                      收起回复
                        接下来,我们引入数字电路。
                        我们知道,数字电路是关于0与1的,一个输出端输出的信号可以是0或1,但是不能是10(提示:把“10”读为一零可以防止与十进制的“10”相混淆)
                        因此,我们可以看出,假设我们要在数字电路中实现两个一位二进制数相加,我们需要两个输出端


                        IP属地:天津15楼2016-07-31 17:45
                        收起回复
                          接下来,我们观察“10”这个数,我们会发现,这个数左边那个“1”是进位得出的,为了便利,我们将那个1所在的位称为进位位,同时,将0所在的位称为加法位
                          我们可以通过补零使所有情况下的合都符合“进位位 加法位”的格式,如下所示
                          0+1=01
                          1+0=01
                          0+0=00
                          1+1=10


                          IP属地:天津16楼2016-07-31 17:49
                          回复
                            如上,我们得到了一个很整齐的格式,两个一位的加数,一个二位的结果
                            如果在数字电路中实现,即为两个输入端,两个输出端


                            IP属地:天津17楼2016-07-31 17:51
                            回复
                              那么,具体应该如何实现呢?


                              IP属地:天津18楼2016-07-31 17:52
                              回复