美文网首页
01.对程序员来说CPU是什么

01.对程序员来说CPU是什么

作者: decoding | 来源:发表于2017-01-21 22:04 被阅读0次

    1. 程序是什么?
      指示计算机每一步动作的一组指令

    2. 程序是由什么组成的?
      数据 + 指令
      数据 + 操作
      数据结构 + 算法
      对象 + 接口
      都一个意思,描述越来越抽象而已。

    3. 什么是机器语言?
      CPU可以直接识别并使用的语言,C、C++、Java高级语言经过编译后最终都会转换为机器语言然后运行。

    4. 正在运行的程序存储在什么位置?
      内存

    5. 什么是内存地址?
      内存中用来表示命令和数据存储位置的数值

    6. 计算机构成元件中,负责程序解释和运行的是哪个?
      CPU

    CPU构成

    CPU (Central Processing Unit)中央处理器,由数百万至数亿个晶体管构成。

    功能器件 作用
    寄存器 暂存指令、数据等处理对象
    控制器 负责装载指令、数据入寄存器,并根据指令执行结果进行下一步动作
    运算器 负责运算寄存器中的数据
    时钟 发出CPU开始计时的时钟信号,越快CPU运算越快

    内存,指计算机的主存储器(Main Memory),通过控制芯片与CPU相连,主要负责存储指令和数据。由可读写元素构成,其每个字节都带有一个地址编号,CPU通过该地址读取内存中的指令和数据。掉电后其中的指令、数据会被清除。

    在程序员眼中,CPU是寄存器的集合体。因为所有代码最终到汇编层次都会变为对寄存器的操作。

    决定程序流程的程序计数器

    程序计数器,存储下一条指令所在的内存地址

    所以,只要我们改变程序计数器的值,其下一条执行的指令就会跳到我们改的那个值去执行指令。

    当程序顺序执行的时候,CPU每执行一条指令后就会将程序计数器的值+1,使其继续运行下去。

    当有分支跳转时,指令直接改变程序计数器的值后则会跳转到新的地址去取指令执行。

    当进行函数调用时,CALL指令会将当前地址进行压栈,跳转到新地址执行完毕,return指令再出栈,回到调用的地址进行执行。

    相关文章

      网友评论

          本文标题:01.对程序员来说CPU是什么

          本文链接:https://www.haomeiwen.com/subject/ntrnbttx.html