码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2014-11-26 18:31:44      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   ar   color   sp   strong   数据   on   

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

 

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

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

 

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

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

 

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

 

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

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

 

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

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

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

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

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

 

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

 

 

bubuko.com,布布扣

 

 

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

 

 

bubuko.com,布布扣

 

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

 

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

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

 

 

 

     

bubuko.com,布布扣


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

 

bubuko.com,布布扣

 

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

       

bubuko.com,布布扣

 

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

 

bubuko.com,布布扣

 

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

      

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

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

标签:style   blog   http   ar   color   sp   strong   数据   on   

原文地址:http://www.cnblogs.com/snowhumen/p/4123577.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!