一个故事讲完 CPU 的工作原理

a80d5e5ea31cde8d3df1976cc865d7c2.png

来自:知乎   

作者:柳两丛 

www.zhihu.com/question/40571490/answer/718942643

上二年级的小明正坐在教室里。现在是数学课,下午第一节,窗外的蝉鸣、缓缓旋转的吊扇让同学们昏昏欲睡。此时,刘老师在黑板上写下一个问题:

6324 + 244675 = ?

小明抬头看了一眼,觉得这两个数字挺眼熟。他昨天翘课去网吧了,因此错过了刘老师讲的竖式计算加法。

“同学们算一算这道题。”刘老师和蔼可亲地说道。

小明盯着黑板懵逼。

小学二年级的他面对这样一道世界级难题,束手无策。小明伸出了自己的左手,打算用一个古老而深邃的方法--掰手指--尝试一下。

小明发现他的每只手只能输入0-5中的正整数,和的范围仅限于0-10,离6324还十分遥远。

“慢着!”小明看向了自己的左手。他发现,事情有一点不对劲。

我们也来看看小明的左手。这只左手有5根手指,我们把5根手指都伸开来记为11111,5根手指握拳记为00000,手背面向我们,左手小指是第一个1/0。

小明紧紧地握拳,然后伸出大拇指,此时的左手为00001。“如果,”小明想,“这样是1”。

他缩回拇指,伸出食指,此时的左手为00010;“这样是2”。

他又伸出拇指,此时的左手为00011;“那么这样是3”。

他缩回拇指和食指,伸出中指,此时的左手为对着自己竖中指00100;“这样就是4!”

.....小明的左手飞速运动着,直到五根手指都伸直,像是钢铁侠射了一发掌心炮11111;“这样就是31!一只手可以表示0-31中的任意正整数!”

小明为自己的发现感到激动。可他不知道怎么表示加法。

小明的同桌,英语课代表小红,看他摆弄了半天左手,忍不住问他在干什么。小明解释了他的发现。小红听了小明的一番高论,若有所思,提笔在数学书的封底画了一个表格:

e7c537ff0063a1a781d7bdcb646533b4.png

小红画的表格

“如果我们能造一个机器,给它三个输入,它能返回两个结果,那我们就能算出这道题!”小红激动地说。

“啥叫进位啊美女?”小明问道。

“就是你列竖式的时候画的一小撇”,小红回答。

“猎术士是什么,我知道猎魔人和古尔丹。”

小红于是讲解了一下怎么列竖式计算十进制加法。“我懂了。”

小明说着,拿过小红的数学书,补全了表格:

2271684485d4260977acd01079adeac0.png小明试着补全表格

“是这样吗?”小明问小红。

小红拿过来看了看,说:“最后一行写错了,输出结果应该是1。你想啊,1+1+1应该等于11,左边这一位是输出进位,右边这一位是输出结果,都是1,所以输出结果应该是1。”

“噢。”小明又拿过书来,拿起橡皮铅笔改正:

cfa1212d127f7a740d3981ff8cabe1a2.png小明改好了

“那为什么这个机器能算加法?我还是不懂。”小明问。

“假设我们已经造出来了这么个机器,长这样”小红继续在封底上画着:

7cee323e9d5e737806c7c51775fd1bee.png

小红画的机器

“等会等会,怎么变成英文了,我英语不好。”小明叫道。

“hmmm看来你没读双语幼儿园。左边这三个是输入,右边是输出,C是进位,C-in是输入进位,C-out是输出进位,Sum是和的意思,明白了么?”小红解释道。

“噢好。”

“假设我们已经造出来了这么个机器,造了好几个,我们这么连起来...诶纸不够大,我写不下了。”

小明一听,赶紧从书桌膛里翻出来一本草稿纸,生怕同桌变成费马。

“谢谢。先这么连起来:”

a9b7795673b31ae0da677af50f9fd811.png

小红画图中

“哦哦哦我懂了,A和B就是两只手,最右边这个one-bit-adder计算的是最小位数的和!”小明说道。

“正确!”

“你这样连的话,是说最小位的输出进位就是下一位的输入进位,下一位的输出又是下下一位的输入!天啊,这跟列竖式好像。”小明惊叫。

“Absolutely!”小红回答道。

小明又拿过草稿纸,接着画起来:

747e60f35459d3d588c0e91982503f82.png

小明画图中

“把对应的每一位连到每一个adder里...”小明念念有词,“...再汇总一下输出”:

9a91d75a8b9e859b965071b3fa28c8aa.png

小明画的加法器

“成了!这个东西可以算两只手加法的结果!”小明高兴极了。

“可是离6324和244675还是太远了,输入5位远远不够呀。”小红皱了皱眉头。

“不不不!你在掰手指的时候有没有发现,每多一根指头,能表示的数就会多出来一大堆,我觉得只要加那么十几个就够了!1根指头能表示2个数(0,1),2根指头四个数(0,1,2,3),3根8个...”

“是2的倍数!”小红接道,“小明,我觉得你的这个记数方法很有意思,要不叫小明式吧!”小红凝望小明的目光中有了一丝羞涩。

“二进制。”

身后忽然传来低沉的声音。两人同时回头,发现数学课代表小刚正直勾勾地盯着那张草稿纸。他好像已聆听多时了。

“叫二进制吧,我看蓝猫淘气三千问讲过这个,一模一样,蓝猫说这是二进制。”小刚补充道。

小刚的数学成绩是班里最好的,一进学而思就上的超常班。小红只能上尖子班,小明一般去网吧。

“那就叫二进制吧。”小明说。

他和小红转过身来,老师让小组讨论的时候他们就这么坐。

小刚又道:“可是,怎么造出这个one-bit-adder呢?”他的眉头皱成一团,眼镜片看起来更厚了。

小明和小红也陷入了沉默,三人一筹莫展,陷入僵局。这时,小刚的同桌,物理课代表小兰入局。

她忽然说道:“我听物理办公室的陈老师吹牛,他当年在大学里读电子工程,GPA一直是4.3,用实验室的导线开关和小灯泡就能造一个32位的加法器,不知道是怎么做到的。他还说什么与门是and,或门是or,再加一个非门not,用它们表示逻辑,就能造出世间千千万万的计算机。”

小明听迷糊了,“等会等会,什么门?金拱门?”另两人也露出迷茫的表情。

小兰从桌子里掏出一个黑盒子。“这是下节课要用的教具,陈老师让我先拿着。”

她打开盒子,取出三个零件和一个说明书。

“喏,你们看看这个”,她拿起第一个零件,“这个叫与门,有两个输入和一个输出。如果我们把输出连上小灯泡,接上电源,两个输入分别连上开关,那么是这么个情况:”

ae5b2dccd8e356e17b53911e9316ae03.png

小兰画的表格

“就是说,只有两个开关都闭合了,小灯泡才亮,有点像串联电路。”小兰补充道。

“诶,有意思了...”小刚扶了扶眼镜,似乎打算说什么,大家都看向他。

“没,没什么,我还在想,小兰你接着说。”

“那好。”小兰接着拿起第二块零件。“这个叫或门,有一个开关开着灯泡就会亮...”

“等下!”小刚忽然打断,拿起笔在自己的白纸上画起来:

ef21957f63c8932dcfa7495369cb976a.png

小刚画的表格

“是不是这样!”小刚激动地说,“如果0是关1是开,0是灭1是亮的话,或门的输入输出是不是这样?”

小兰看了看道:“正是”。

她拿起第三个零件,“最后这个叫非门,只有一个输入,一个输出。它会输出一个相反的结果:输入有电流,输出就没有;输入没有电流,输出就有电流。用小刚的话来说,输入0输出则为1,输入1输出则为0。太简单了,懒得画表了。”

小兰把非门放在桌上。小刚说道:“这三个门可以表示三种逻辑。如果A、B是输入,  A or B 就是经过或门的结果,  A and B就是经过与门的结果,  not A 则是A经过非门的结果。”

三人纷纷点头。“可是,这和加法有什么关系呢?”小明问道。

四人再度陷入沉默。

沉默。

忽然,小明拿起笔,一边画一边说道:“如果我们回去看小红画的表格,”

6e5799416db4e16874b4cdb4c62cd14a.png

左三列是输入,右二列是输出

“Sum可以写成A、B、Cin的逻辑关系!”

2a4c38a7c550c67494d23d3ed10b6d63.png

“你们看,把 A and B 记作 AB,A or B 记作 A + B,not A 记作 A 上面画个横线。Sum 输出为1只出现在表格的2、3、5、8行,也就是三个输入中1的个数为奇数的时候。我们把这4种情况记下来,那么这个式子...”

“可以拿逻辑门实现!!!”四人异口同声的叫道。

小红抢过草稿纸,又看了看物理教具的说明书,边画边说了起来:“说明书上写,这个火车头形状的符号表示 and gate;这个B2轰炸机形状的是or gate;这个小人形状的是not gate...”

90f5da73579a5b017de46add1937f74f.png

小红画的与门,或门,非门

她又看了一眼小明的式子,说道:“这个式子的第一项可以这样...”

a01e28ff8b429cc1e985bbf465e7690f.png

小红画的输出和的第一项

"你们看你们看,这个不就是

ab3687b47451a596f06048c69f22677e.png

嘛!"小红自豪地说。

小明补全了电路:

ab007d4595fc81e66c58feda75d79bd1.png

“先把与门都画了”

a7c503bced9db32c727e2dc28d0ed461.png

“再把或门都加上,搞定。这东西可以算出Sum了,接下来用一样的办法把C-out弄出来。”小明准备继续画。

“你们看,这里还有几个零件。”小兰指着说明书说道:

e74706890098c2c58c22c7d16b7e54fe.png

与非,或非,异或,同或

“与非门:一个与门的输出和一个非门相连,英文是not and,NAND gate。那个小圈圈代表一个非门。

或非门是或门 + 非门,not or,NOR gate。

第三个叫异或门,只有两个输入中一个为1一个不为1时,才会输出1,exclusive-or,XOR gate。

第四个是同或门,也就是一个异或门加上一个非门。”

“啊哈!”小刚灵机一动,抓起笔来道:“我有一个绝妙的点子。”

0bd3352aa921dec7cfe92dc43d87fd9b.png

小刚简化后的电路

“小明的方案,要用17个门。我只要2个异或门就搞定了,牛逼吧?”

三人瞪大了眼睛,仔细思考后纷纷点头道:“牛逼,牛逼。”

小刚随即画出了完整的one-bit-adder电路:

1f20923b75d4b1ea39d186e83d2d4afb.png

小刚的one-bit-adder

小明从从教具盒里拿出电源、小灯泡、开关和逻辑门,按照设计图制作出了全加器:

看到小刚的设计被完整的实现,小明欣喜:“啊哈哈哈,吾有上将小刚,则霸业可成,汉室可兴啊!”

他把黑盒子里的零件全拿了出来,四人忙碌地工作着。很快,他们拥有了5个全加器,基于小红的设计连了起来:

ed55b785484a9f368562e1c96ed20a76.png

小红设计实现

“二进制的01100等于十进制的12,01010等于10,12+10=22,等于16+4+2,也就是二进制的10110...”

四人人往代表输出结果的5个小灯泡望去:亮,灭,亮,亮,灭;正是10110!

“成了!!!”

大家激动的拍打课桌为了计算黑板上那道题,四人一共制作了32个一位全加器,将它们连接后,一个三十二位加法器便诞生了。

他们历经艰辛,踩着自然规律和人类智慧的肩膀,把自己从枯燥的加法计算中解放出来!

窗外的蝉鸣渐渐平息,头顶的吊扇不再转动。

“刘老师,答案是250999!”小明站了起来,声若洪钟大吕,震慑天地。

他和小红、小刚、小兰分别对视了一眼,收获了坚定的目光。

这目光,连同面前的32位加法器,如同新的转机和闪闪星斗,正在缀满没有遮拦的天空。

刘老师点了点头,欣慰的说道:“很好,看来四位同学对这部分知识掌握的不错!我们再来看几道题!”

他转过身,拿起板擦,把黑板擦了个精光,又从黑板槽里拾起半截粉笔,写了起来: 

1. 244675 - 6324 = ? 

2. 3.14159 + 5.535897 = ? 

3. 17 * 45 = ? 

4. 3 / 2 = ?

一连四道题,让四人组陷入了深思:如何让自己的机器运算减法?乘法?除法?浮点数?

刘老师并没有停下,手中的粉笔运动得越来越快:

5. Fibonacci 数列的第103项?

6. 一圈共有N个人,开始报数,报到M的人出列,然后重新开始报数,问最后出列的人是谁?.

.....

疑惑越来越多了:如何存储?怎样实现分支?保证效率?

刘老师仍未停下,黑板快被写满了:

103. 方程ζ(s)=0的所有有意义的解都在一条直线上吗?

104. 大于2的偶数都可以写成两个质数的和吗?

......

134. 生命,宇宙及所有事物的答案?

刘老师放下了粉笔,半截粉笔已经变成硬币的厚度。

“这些问题,我们能造个机器回答么?”小明撑着头,喃喃自语。

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)大脑研究计划,构建互联网(城市)大脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。每日推荐范围未来科技发展趋势的学习型文章。目前线上平台已收藏上千篇精华前沿科技文章和报告。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

7168f67134a2f6f05b2c6f60abcc48cb.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/482188.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2 计算机网络性能指标

文章目录速率带宽吞吐量时延时延带宽积往返时间网络利用率速率 连接在计算机网络上的主机在数字信道上传送数据位数的速率,也称为data rate或bit rate。 单位是b/s, kb/s, Mb/s, Gb/s. 比特(bit)是计算机中数据量的单位,也是信息论…

Anthropic 公司研究人员从简单的 AI 中获得关于 Transformer 的新理解

来源:ScienceAI编辑 :橘子皮在过去的两年里,人工智能程序的语言流畅度达到了惊人的水平。其中最大和最好的都是基于 2017 年发明的称为 Transformer 的架构。它以方程式列表的形式作为程序遵循的一种蓝图。但除了这个简单的数学大纲之外&…

3 物理层 数据通信基础知识 奈氏准则与香农定理 物理层传输介质 信道复用技术

文章目录1 物理层基本概念2 数据通信的基础知识2.1 典型的数据通信系统模型2.2 与通信相关的几个术语2.3 有关信道的几个概念2.4 基带(baseband)信号和带通(band pass)信号2.5 几种最基本的调制方法2.6 网卡传送信号时的编码格式2.7 信道的极限容量2.8 信道能够通过的频率范围2…

向真实世界应用进军:持续自监督学习的挑战

来源:图灵人工智能编译:OGAI编辑:陈彩娴在 Yann Lecun 等人的推动下,自监督学习成为了深度学习领域最受瞩目的技术之一。互联网世界源源不断产生的数据流无疑是充分发挥自监督学习能力的最佳土壤。然而,将自监督学习应…

人类“超级大脑”背后的规模法则

来源:集智俱乐部作者:郭瑞东 编辑:邓一雪摘要不同动物的大脑具有不同形状和大小。大自然赋予像人类这样脑容量大的灵长类动物比例较大的大脑皮层。然而,比较研究表明,分配给大脑白质连接(大脑区域间长距离沟…

Meta AI 宣布对人脑和语言处理进行长期研究

来源:ScienceAI编辑:绿萝人类的大脑长期以来一直是一个难题——它是如何发展的,它如何继续进化,它被开发和未开发的能力。人工智能 (AI) 和机器学习 (ML) 模型也是如此。正如人类大脑创建的 AI 和 ML 模型日益复杂一样&#xff0c…

10年100亿!“新基石研究员”项目正式发布

来源: 中国科学报文:《中国科学报》记者 赵广立4月30日,《中国科学报》获悉,一项总投入达100亿元、面向基础研究领域的社会资助项目——“新基石研究员项目”正式发布。在国家有关部门的指导下,“新基石研究员项目”由…

代表地球文明精髓的E=mc²,为什么被称为“死亡方程式”

来源:大数据文摘有这样一条方程式,原腾讯副总裁吴军博士说,如果地球毁灭,要在一张名片上写下地球文明的全部精髓,他会写下三个公式,其中就包含这个方程式;搜狐CEO张朝阳专门开了堂线下物理课&am…

北交桑基韬:“超”人的机器学习,非语义特征的得与失

来源:AI科技评论作者:桑基韬整理:维克多人工智能目前最大的“拦路虎”是不可信赖性,以深度学习为基础的算法,在实验室环境下可以达到甚至超过人类的水平,但在很多实际应用场景下的性能无法保证,…

手把手教你搭建一个中式菜谱知识图谱可视化系统

手把手教你搭建一个中式菜谱知识图谱可视化系统中式菜谱知识图谱1、系统功能2、先来看看效果实体间关联关系及实体信息显示不同类型实体开关显示搜索功能展示3、系统实现流程3.1 数据爬取3.2 D3可视化中式菜谱知识图谱 今天分享一个自己从数据爬取到d3可视化的中式菜谱知识图谱…

AI数字人未来十大展望

来源 :商汤智能产业研究院编辑 :刘振航从电影中逼真的CG人物,到能够与我们面对面进行互动的智能服务助手,数字人会经历几级进化?数字人正在从有颜无智的“CG数字模特”,进化为可提高生产力、驱动创新服务的…

知识图谱最新权威综述论文解读:开篇部分

论文地址:http://arxiv.org/abs/2002.00388 这篇综述是数据科学权威 Philip S. Yu 团队对知识图谱领域的最新综述论文,论文从知识图谱的发展历史、知识表示学习、知识获取、知识应用、未来研究方向等方面描述了知识图谱的全局。 首先,咱们先…

耗资52亿美元,历时15年,人类有史以来建造的最复杂机器

来源:世界先进制造技术论坛欧洲大型强子对撞机是现在世界上最大、能量最高的粒子加速器,是一种将质子加速对撞的高能物理设备,英文名称为LHC。LHC是人类迄今建造的最大最复杂的科学设备,它的建设历时15年,耗资52亿美元…

贝叶斯深度学习:一个统一深度学习和概率图模型的框架

来源:AI科技评论 作者:王灏整理:维克多人工智能(AI)的进展显示,通过构建多层的深度网络,利用大量数据进行学习,可以获得性能的显著提升。但这些进展基本上是发生在感知任务中&#…

知识图谱最新权威综述论文解读:知识表示学习部分

知识图谱最新权威综述论文解读:知识表示学习部分知识图谱表示学习1 表示空间1.1 Point-wise空间1.2 复数向量空间​1.3 高斯分布1.4 流形和群2 打分函数2.1 基于距离的打分函数​2.2 语义匹配模型:​3 编码模型3.1 线性/双线性模型3.2 张量分解模型3.3 神…

对知识图谱的告白:斯坦福大学CS520课程介绍

斯坦福大学CS520知识图谱系列课程,从这个课程的编号就足以看出对计算机科学的告白。 相信大家对斯坦福大学的计算机学科公开课一点也不陌生,对很多人来说,面向计算机视觉的CS231n和面向自然语言处理的CS224n几乎成为了入门人工智能领域以及C…

脑计算将何去何从?

来源:内容由半导体行业观察(ID:icbank)编译:nature.摘要类脑计算新技术有望通过完全不同的方式处理信息,能效极高,并能处理我们加速产生的大量非结构化和嘈杂的数据。为了实现这一承诺&#xff…

知识图谱最新权威综述论文解读:知识图谱补全部分

上期我们介绍了2020年知识图谱最新权威综述论文《A Survey on Knowledge Graphs: Representation, Acquisition and Applications》的知识表示学习部分,本期我们将一起学习这篇论文的知识图谱补全部分。 论文地址: https://arxiv.org/pdf/2002.00388.p…

神经元的集体行为:大尺度脑活动的动力学模型

来源:集智俱乐部(https://mp.weixin.qq.com/s/X88lG7rFhIFlpCJ2jVMLtg) 作者:彭崧峻 校对:梁金编辑:邓一雪封面:Sergey Fedotov排版:光影导语 / Introduction大脑由神经元组成&…

知识图谱最新权威综述论文解读:实体发现

上期我们介绍了2020年知识图谱最新权威综述论文《A Survey on Knowledge Graphs: Representation, Acquisition and Applications》的知识图谱补全部分,本期我们将一起学习这篇论文的实体发现部分。 论文地址: https://arxiv.org/pdf/2002.00388.pdf​…