跟我到CPU内部去看1+1=2是如何运行的!(2) 【转载】

在上文中你知道1+1=2是如何在cpu中运作的么?----跟我到cpu内部去看看吧!(1) 我们通过旅游的视角已经的揭开了CPU的一角面纱,到现在为止我们可以清楚一下两件事情.

1  晶体管是CPU中的核心部件.

2 可以通过控制晶体管并对其进行逻辑组合便可以计算.

那么1+1=2是如何通过晶体管来进行呢?

要知道1+1=2如何运作,首先需要知道1和2 在计算机中如何通过晶体管来表示呢?

在上文中我们已经提到,一个小灯泡的状态可以通过两个晶体管(开关)进行逻辑组合来控制.现在你可以这样理解:

        一个小灯泡的状态代表着计算机中的两个数值:亮着表示1 关闭表示0

        现在我们可以拿出四个小灯泡,并且把四个小灯泡排成一排,如果你稍微懂一些二进制的话,现在已经很清楚了.我们可以通过这四个小灯泡的开关组合最多能够表示我们常用数制即十进制的16个数字(也就是2的4次方).

现在就会有一下情况出现:

1 四个小灯泡全部熄灭:                           二进制:0000   十进制:0

2 从右面数第一个小灯泡打开,其他关闭:   二进制:0001      十进制:1

3 从右面数第二个小灯泡打开,其他关闭:  二进制:0010   十进制:2

依次类推,直到全部的四个小灯泡都打开:   二进制:1111   十进制15

以上过程可以通过下图来进行概括:

那么1+1=2如果用上图进行表示的话可以得到下面的示例图:

好了,至此为止我们已经知道1 和 2 还有其他的数值是如何在计算机中通过晶体管来表示,但具体"+"的这个过程是如何运行呢?

现在我们开始进行下一步的理解.

把一个晶体管抽象成一个开关,一个开关可以表示数字1和0,我们可以通过连接两个开关和两个灯泡通过一定的结构,开关用来表示输入0或者1 而两个灯泡表示通过特殊结构的处理所得到的结果,这个特殊结构便是"加法器".加法器里面都是有各种逻辑门来构成的.这些逻辑门包括:"与"门,"或"门,""与非"门 ,两个开关通过加法器相连的逻辑图如下

上图只是一个两个开关的相加,但是计算机要处理的是庞大的数据,这就需要将一个个的开关进行逻辑的相连接,变形成了下面的图,通过下图的方式将一个个的开关和灯泡进行相连.

如果有两排八个开关通过加法器相连,没有一个开关的话.从宏观的角度来看的话,便是下图所示:

而我们此次的主角:1+1=2的运作流程便是下图所示

此篇博客解决在准备软件设计师的过程中的疑惑.通过对CPU运作原理的探索,再一次理解了大道至简的道理,我们看似复杂的CPU,看似复杂的很多事物,归根到底都是一些特别简单的元素,而也就是这些"元素"通过各种组合,变换,便形成了复杂的运算,解决各种复杂的问题.

想起了老子<<道德经>>里的一段话:“道生一,一生二,二生三,三生万物,万物负阴而抱阳,冲气以为和。”

时间: 2024-10-12 13:28:04

跟我到CPU内部去看1+1=2是如何运行的!(2) 【转载】的相关文章

你知道1+1=2是如何在cpu中运作的么?----跟我到cpu内部去看看吧!(1) 【转载】

1+1=2 好吧,我承认这是小学生也会做的题目,但是作为一个程序员,或者是软件设计师,你知道1+1=2如何在计算机内部表示并执行的么? 在复习软件设计师中的计算机组成原理的时候这个问题一直在困扰着我,因为这里的内容涉及到了cpu运行原理.而对我们大多数人而言,cpu只不过是一个"黑盒子",具体里面是如何构造的我们并不是很清楚. 为了搞清楚,自己在这方面花费了一些功夫,查阅了相关的书籍和一些资料,逐渐的解开了cpu的内部的面纱,接下来我将通过图片来和大家一起到cpu的内部观察它是如何运作

整数运算:CPU内部只有加法运算

学汇编的一边儿去.我这里讲的是CPU进行计算的原理.首先我这里用MC的红石电路模拟了一个加法器:http://www.0xaa55.com/thread-313-1-1.htm首先加法器是怎么实现的呢?是用了非门电路.首先来看看二进制的加法:0+0=00+1=11+0=11+1=10首先来看规律.只看最低位,如果左边的“被加数”和“加数”都一样的话,结果的最低位是0,否则是1.而如果“被加数”和“加数”都是1,那么就会有进位.总结出来的规律是:运算结果最低位=被加数 逻辑非 加数运算结果的进位=

HDFS、Hive、MySQL、Sqoop之间的数据导入导出(强烈建议去看)

Hive总结(七)Hive四种数据导入方式 (强烈建议去看) Hive几种数据导出方式 https://www.iteblog.com/archives/955 (强烈建议去看) 把MySQL里的数据导入到HDFS 1.使用MySQL工具手工导入 把MySQL的导出数据导入到HDFS的最简单方法就是,使用命令行工具和MySQL语句. 为了导出整个数据表或整个数据库的内容,MySQL提供了mysqldump工具. 比如 SELECT  col1,col2 FORM TABLE INTO OUTFI

《明明白白去看牙》:北大口腔医院的一群中青年医生写的牙的保健与治疗的科普,五星推荐

本书作者是北京大学口腔医院的一群中青年医生.涉及到牙齿的保健与治疗.作者们每天面对病人,还是比较清楚普通大众最关心哪些牙齿知识. 鉴于作者们所供职的机构的权威性,我比较相信这本书. 书中关于牙的保健,涉及到牙的生理结构,如何刷牙,选择牙膏,常见牙齿不适的处置方法(大部分需要去看牙医). 书中讲到的牙病,包括牙周病.牙冠.拔牙.镶牙.种牙.美牙.正畸等.

创业者应该怎么去看投资人的优劣

因为工作的原因,见过的创业者或者说企业家没有几千个,也应该有上百个了.如何判断一个好的值得投资的行业,以及在这个好的行业里面挑选出一个好的创业者,是我之前每天必须要做的功课.投资一个项目经历的周期可能会很长,先看行业,业务模式,然后找其中好的企业和人,这是做完一个投资项目的标准顺序.那么反过来看,创业家如何去找到好的投资人,也可以从这个顺序来考察. 选择一个好的投资人,我认为唯一的标准,就是选择那些投过比较多这个行业项目的基金或者投资人. 社会发展到目前这个阶段,专业化分工不但体现在企业,投资行

HTML5-陪你去看流星雨

在上一篇的基础上 1.新增流星雨对象 //流星 var MeteorRain = function(){ this.x = -1; this.y = -1; this.length = -1;//长度 this.angle = 30; //倾斜角度 this.width = -1;//宽度 this.height = -1;//高度 this.speed = 1;//速度 this.offset_x = -1;//横轴移动偏移量 this.offset_y = -1;//纵轴移动偏移量 this

她去看演唱会了,他去唱K了,他们去开房了.都和我无关...因为我要学习。

寂寞. 一个人早起晚睡不难,但在一群晚起早睡的人中早起晚睡不简单. 没人陪你占座,没人陪你背书,没人陪你写作.学习就是孤独的. 食堂,寝室,教室,你就只能去这三个地方 厕所你都要算好时间再去 没人经常短信你,没人经常鼓励你,没人一直关注你 不管是打雷下雨下雹子还是刀子.都要早起前行去学习,你的伙伴会贪睡不去,但不可以是你. 你的同桌室友饭友学友各种友都可以中途打断他们的计划,你不可以!你要学习 你一个人背着书包跑来跑去,你以为很傻很土很幼稚吗? 别人笑,是羡慕,你笑,是自信. 欲望. 想睡懒觉,

codevs——1570 去看电影

1570 去看电影 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 农夫约翰带着他的一些奶牛去看电影.而他的卡车最多只能载重C(100<=C<=5000)公斤,总体上来说,他想在不超过限制的前提下尽可能多地带走牛. 给出N (1 <= N <= 16)头奶牛的体重W_i,计算约翰可以带去看电影的奶牛的最大重量. 输入描述 Input Description * 第 1 行: 2个用空格隔开的整数 C , N

Codevs 1570 去看电影

1570 去看电影 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description 农夫约翰带着他的一些奶牛去看电影.而他的卡车最多只能载重C(100<=C<=5000)公斤,总体上来说,他想在不超过限制的前提下尽可能多地带走牛. 给出N (1 <= N <= 16)头奶牛的体重W_i,计算约翰可以带去看电影的奶牛的最大重量. 输入描述 Input Description * 第 1 行: 2个用空格隔开的整数