• 两岸民心相亲不可违逆(观沧海) 2019-06-24
  • 习近平新时代中国特色社会主义思想为解决人类问题贡献中国智慧 2019-06-22
  • 反击!欧盟成员国一致支持对美28亿欧元产品征收报复性关税 2019-06-22
  • 专访李毅立:走进国家 了解国情 续写中华情 2019-06-08
  • 现在,表面上看,很多城市绿树成荫,花卉草地到处都是,实际上地下空间已经掏空,建了车库、地下商城,雨水根本渗不下去。 2019-06-08
  • 你反来复去说1+1=2,真痴呆了?你应该讲点其他的吧,譬如,1+1=2,是客观事实还是规律,是真理还是谬误。 2019-06-05
  • 蜈蚣精的出游必备战靴 旅行路上皆战场 2019-06-05
  • 《法医秦明2》“长腿CP”最萌身高差吸睛 剧情高能 2019-06-04
  • 【春到渭南】随手拍渭南各地区春景,一贴看尽渭南春色! 2019-06-04
  • 如何像皇帝、老佛爷那样避个暑? 2019-05-30
  • 印度总理寓所附近现UFO?网友:外星人也想看莫迪 2019-05-21
  • 人民网评:建设一支生态环境保护铁军 2019-05-21
  • 这三个史无前例,让美国有点懵了 2019-05-18
  • 唐嫣蜡像入驻上海杜莎夫人蜡像馆--旅游频道 2019-05-18
  • 生活调查:过午不食可以养生减肥是真的吗? 2019-05-18
  • 冰壶的规则:

    北京 切换校区

    全国24小时免费热线

    400-009-1906

    张大胖的加法器

    时间:2019-01-09   来源:尚学堂   阅读:398

      加法器

      热爱编程的张大胖在大学时最烦的一门课之一就是《数字电路》,他一直觉得和编程没什么关系。

      有一次课程设计是实现一个加法器,大胖使用逻辑电路,费了九牛二虎之力才实现了4位的加法。

      这4个二进制位能表达的数有16个,从0到15:

      大胖用他的加法器计算了一下8+3:

      8+3=1000+0011=1011=11

      还不错,再计算一下9+7:

      9+8=1001+1000=0001

      怎么变成了1?奥,我这儿只有4位,能支持的最大数字就是15,而9+8的结果是10001(十进制16),计算结果溢出,最高位的1被丢弃了!

      其实这也符合要求,大胖顺利的交了作业。

     

      用加法来表示减法

      可是下一次课还是课程设计,老师竟然要求在这个加法器上实现减法,这可把大胖给难住了,在加法器上实现减法,真是个变态的需求。

      遇到了问题,张大胖自然会“跪求”好基友,电脑高手Bill。

      Bill说:“这个要求一点都不变态,用加法器同时实现加法和减法,能极大的节省CPU的电路设计?!?/span>

      “你就说该怎么实现吧”

      Bill说:“我先给你说一下原理,在你定义的4位二进制中,一共可以表达16个数,我们引入一个‘补数'的概念,例如3的补数是13,4的补数是12,5的补数是11,当你计算7减去3的时候,可以变成7加上3的补数,即7+13”

      “可是7+13是20,但是7-3等于4啊”

      “20其实已经超出你4位二进制能表达的16个数了,已经溢出了,对吧,所以20还得减去16,就是4了。你用二进制算一下?!?/span>

      7-3=0111-0011=0111+1101(二进制13)=10100

      10101已经溢出了,去掉最高位是0100,就是十进制4了。

      “果然不错”张大胖说“这让我想到了钟表,现在是7点,我想让它回到4点,有两种办法,一种方法是让时针后退3格,另外一种方法是让时针前进9格,前进到12点的时候,其实就相当于溢出了,舍弃掉。"

      Bill说,"看来你已经Get了,数学上有个词叫做求模,说的就是这个运算,还以时钟为例"

      向后退3格:7-3=4

      向前进9格:(7+9)mod12=4

      向前进21格:(7+9+12)mod12=4

      向前进33格:(7+9+12+12)mod12=4

      .....

      “这是一种以进为退的策略”Bill接着说"用这种办法就把减法变成了加法"

      “但是我怎么得到所谓的补数呢?从3怎么得到13呢”

      “这很简单,对于二进制,前辈们想出了一个异常简单,又特别适合计算机的算法,对二进制数的所有位取反,然后加1”

      “神奇啊,前辈们竟能想出这么巧妙的办法!”

      “这就是所谓的补码了”Bill总结道

     

      负数的表示

      Bill问道:“刚才咱们说的都是整数的加减法,负数你考虑了没有???大胖?”

      “我也刚刚想到,现在我知道7-3可以换算成7+13了,如果是3-7呢?”

      “负数一引入,系统就变得更复杂了,首先你得用一个标志位来表示整数还是负数吧:”

    (表格1)

      张大胖说:“明白了,最高位的0表示正数,1表示负数,真正有效的数字只剩下3位了,正数的范围是从1到7,负数的范围从-1到-7,不过这里出现了两个零!一个正0,一个负0,这不妥吧?!?/span>

      “先别急,之前说到减法可以变成加法,秘密就是用补码,例如8-3相当于8+(-3)的补码,那我们完全可以把表格1中的负数用补码表示,然后把那个负0特别当做-8来处理:”

      Bill接着说:“按照上面的表格,现在我们来计算一下7-4,7是0111,-4是1100,注意我们把符号位也算进去了,两者相加:

      “让我试试4-7,”张大胖说,4是0100,-7是1001,两者相加:

      “妙啊”张大胖不禁赞叹起来,“把负数用补码表示,不但减法变加法,连符号位都可以参与运算了!”

      “是啊,我们通过补码能极大的简化电路的设计,你一定要记住,在计算机内部,是使用补码来表示二进制数,如果是一个正数,补码就是它本身,如果是个负数,需要把除了符号位之外的二进制数进行取反加一的操作"

      "此外,我想你也能总结出来,你这个4位的系统如果只表示无符号数(没有负数的话),它的范围是[0,2^4],即[0,16];

      如果要想表达有符号数(负数和整数),它的范围就是[-2^3,2^3-1],即[-8,7]。在高级编程语言像C,Java,你经?;峥词堇嘈偷娜≈捣段?,你应该明白其中的原理了?!?/span>

     ?。ㄍ辏?/span>

    相关资讯

    • 北京校区
    • 山西校区
    • 郑州校区
    • 武汉校区
    • 四川校区
    • 长沙校区
    • 深圳校区
    • 上海校区
    • 广州校区
    • 保定招生办

    北京海淀区校区(总部):北京市海淀区西三旗街道建材城西路中腾建华商务大厦东侧二层尚学堂
    北京京南校区:北京亦庄经济开发区科创十四街6号院1号楼 赛蒂国际工业园
    咨询电话:400-009-1906 / 010-56233821
    面授课程:?JavaEE+微服务+大数据? ???大数据+机器学习+平台架构?????Python+数据分析+机器学习??人工智能+模式识别+强化学习???WEB前端+移动端+服务端渲染

     

    山西学区地址:山西省晋中市榆次区大学城大学生活广场万科商业A1座702

    郑州学区地址:河南电子商务产业园6号楼4层407
    咨询电话:0371-55177956

    武汉学区地址:武汉市东湖高新区光谷金融港B22栋11楼
    咨询电话:027-87989193

    四川学区地址:成都市高新区锦晖西一街99号布鲁明顿大厦2栋1003室
    咨询电话:028-65176856 / 13880900114

    网址://www.cssxt.com/
    咨询电话:0731-83072091

    深圳校区地址:深圳市宝安区航城街道航城大道航城创新创业园A4栋210(固戍地铁站C出口)
    咨询电话:0755-23061965 / 18898413781

    上海尚学堂松江校区地址:上海市松江区荣乐东路2369弄45号绿地伯顿大厦2层
    咨询电话:021-67690939

    广州校区地址:广州市天河区元岗横路31号慧通产业广场B区B1栋6楼尚学堂(地铁3号线或6号线到“天河客运站”D出口,右拐直走约800米)
    咨询电话:020-2989 6995

    保定招生办公室

    地址:河北省保定市竞秀区朝阳南大街777号鸿悦国际1101室

    电话:15132423123

    Copyright 2006-2019 北京尚学堂科技有限公司  京ICP备13018289号-19  京公网安备11010802015183  
    媒体联系:18610174079 闫老师  

    Java基础班,免费试学三周

  • 两岸民心相亲不可违逆(观沧海) 2019-06-24
  • 习近平新时代中国特色社会主义思想为解决人类问题贡献中国智慧 2019-06-22
  • 反击!欧盟成员国一致支持对美28亿欧元产品征收报复性关税 2019-06-22
  • 专访李毅立:走进国家 了解国情 续写中华情 2019-06-08
  • 现在,表面上看,很多城市绿树成荫,花卉草地到处都是,实际上地下空间已经掏空,建了车库、地下商城,雨水根本渗不下去。 2019-06-08
  • 你反来复去说1+1=2,真痴呆了?你应该讲点其他的吧,譬如,1+1=2,是客观事实还是规律,是真理还是谬误。 2019-06-05
  • 蜈蚣精的出游必备战靴 旅行路上皆战场 2019-06-05
  • 《法医秦明2》“长腿CP”最萌身高差吸睛 剧情高能 2019-06-04
  • 【春到渭南】随手拍渭南各地区春景,一贴看尽渭南春色! 2019-06-04
  • 如何像皇帝、老佛爷那样避个暑? 2019-05-30
  • 印度总理寓所附近现UFO?网友:外星人也想看莫迪 2019-05-21
  • 人民网评:建设一支生态环境保护铁军 2019-05-21
  • 这三个史无前例,让美国有点懵了 2019-05-18
  • 唐嫣蜡像入驻上海杜莎夫人蜡像馆--旅游频道 2019-05-18
  • 生活调查:过午不食可以养生减肥是真的吗? 2019-05-18
  • 第五人格官网下载 十一运夺金任8 山西11选5的开奖结果走势图 海底总动员观后感 刀塔自走棋地图岛名 皇室战争a4卡组 福彩3d正版藏机图 天天飞车2018停服 韩国大邱逛街地方 香港六合彩图纸 滚球总进球数是全场吗 网易彩票开奖直播下载 赛马会cc之六肖 和平精英陀螺仪是什么 天龙八部手游苹果礼包app 21点