01_CPU(计算机科学)

2017-11-08  本文已影响0人  yishurensheng

带着问题学习(程序与CPU)

CPU是什么?

       中央处理器(Central Processing Unit,CPU)是一块超大规模的集成电路,是一台计算机的运算核心和控制核心。它的功能主要是解释计算机指令以及处理计算机软件中的数据。
       中央处理器主要包括运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)和高速缓冲寄存器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。它与内部存储器(Memory)和输入输出(I/O)设备合称为电子计算机三大核心部件。
参考于百度百科
参考于搜狗百科

CPU主要包括以下几大组成部分:

程序与CPU

image.png
       这里我们需要先了解两个概念,高级语言和低级语言。
高级语言:简单来说,就是人类能够看懂的语言,包括C/C++、Java、Python等编程语言。
参考于搜狗百科
低级语言:CPU能够看得懂的语言,也就是机器语言(接近于汇编语言)。
参考于搜狗百科
感兴趣的朋友可以参考《Intel白皮书》,里面讲述了Intel CPU所有的汇编指令。

CPU中主要的寄存器

       我们可以把寄存器当成CPU中的内存,那么为什么要这样做呢?原因很简单,寄存器的读写速度比内存条中的读取速度快很多,几十倍甚至上百倍。

程序计数器
       当程序是顺序执行的时候,程序计数器基本上没有什么作用。然而,基本上没有任何一个程序是顺序执行的,否则这个程序就没什么意义了。尤其是程序中使用了较多的if else、switch case、while、for等语句,使得程序的逻辑变得较为复杂,从而也导致了程序的非顺序执行,此时程序计数器的作用就体现出来了。
       在执行分支语句时,程序计数器和标志寄存器共同决定程序运行的下一条指令。
标志寄存器
       标志寄存器是一个32bit的数,它的每一个bit标志一种状态,其中有一个bit是标志是否为0。比如判断3是否等于3,它首先会去取3-3的结果,如果3-3等于0,那么这个bit就为1,如果不等于0,那么这个bit就为0。还有其它很多bit所代表的意义,我们这里就不一一解释了。
一条跳转语句,包括了一下三个步骤:
1.计算结果;
2.标志寄存器进行置位;
3.根据标志位来相应的改写程序计数器中的值从而达到跳转的效果。

上一篇 下一篇

猜你喜欢

热点阅读