zoukankan      html  css  js  c++  java
  • 跟我到CPU内部去看1+1=2是如何运行的!(2) 【转载】

     在上文中你知道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

     

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

     

     

    计算机生成了可选文字: 月.098761匀43丹乙月.0月.月.00000nU0000―丁十丰―丁十十工―丁十牛上土!1、0、1、1(,1:01:O:,,:00,:i,010:O宕10111;1:1011110;101101,};011010}00'1'1:00,O0001:'00'00';留谷曾曾

     

     

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

     

     

    计算机生成了可选文字: 月.月.J『.月.曰.〕户.妇0000月.月.月.月.J『.J飞.翻.』翻r』月.月.月.月.月.月.月.月.曰.』翻.〕月.月.月.月.0:0:11丁才不而0;0!0:10000QQ日Q月.月.月.月.00011O云000云QQQQ④日Q公

     

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

     

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

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

     

     

     

         

    计算机生成了可选文字: H日IfAddef翩O.栩一.』一.一.』口且.}一.}.一日.}一月.一


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

     

    计算机生成了可选文字: HalfAdderl泛\{朋一/一AND.,日OR长H日!fAdd6r卜‘八咤角八囚O目价目口.,日ANO〔用

     

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

           

    计算机生成了可选文字: 回回圈0。回回日。。回回圈0。回回圈0。回尚图日向U回回囚品》回回圈印。回回圃问。0『0009000二0009000

     

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

     

    计算机生成了可选文字: .曰日.10000000,回回回回回回回1D0000O01回回回回回回回}回+圈日日圈圈日瞥曾曾曾曾曾几BOO,决dd陌四.,01CO吕.栩八BC.,,0决山如dA卜10CO,u旧2200000010曾

     

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

          

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

  • 相关阅读:
    INI配置文件的格式
    UserControl图片显示报错问题
    CornerRadius圆角属性
    Stretch属性
    [WPF]The type name ‘App’ does not exist in the type '...'的问题
    [Word]解决Word中执行输入操作时后面字符自动被删除的问题
    MATLAB中的取整函数(fix、round、floor、ceil)
    [数据库][C#]几个常用的正则表达式
    [数据库][C#]提取字符串中的数字
    springmvc注解知识点汇总
  • 原文地址:https://www.cnblogs.com/snowhumen/p/4123577.html
Copyright © 2011-2022 走看看