CPU是如何运行程序的?

CPU是如何运行程序的?

pu是如何工作的?一条计算机指令是如何被执行的?a=1+2是如何执行的?

图灵机的工作方式

要想知道程序执行的原理,我们可以先从「图灵机」说起,图灵的基本思想是用机器来模拟人们用纸笔进行数学运算的过程,而且还定义了计算机由哪些部分组成,程序又是如何执行的。 图灵机长什么样子呢?你从下图可以看到图灵机的实际样子:

图灵机的基本组成如下:

有一条「纸带」,纸带由一个个连续的格子组成,每个格子可以写入字符,纸带就好比内存,而纸带上的格子的字符就好比内存中的数据或程序;

有一个「读写头」,读写头可以读取纸带上任意格子的字符,也可以把字符写入到纸带的格子;

读写头上有一些部件,比如存储单元、控制单元以及运算单元: 1、存储单元用于存放数据; 2、控制单元用于识别字符是数据还是指令,以及控制程序的流程等; 3、运算单元用于执行运算指令; 知道了图灵机的组成后,我们以简单数学运算的 1 + 2 作为例子,来看看它是怎么执行这行代码的。

首先,用读写头把 「1、2、+」这 3 个字符分别写入到纸带上的 3 个格子,然后读写头先停在 1 字符对应的格子上;

接着,读写头读入 1 到存储设备中

然后读写头向右移动一个格,用同样的方式把 2 读入到图灵机的状态,于是现在图灵机的状态中存储着两个连续的数字, 1 和 2;

读写头再往右移动一个格,就会碰到 + 号,读写头读到 + 号后,将 + 号传输给「控制单元」,控制单元发现是一个 + 号而不是数字,所以没有存入到状态中,因为 + 号是运算符指令,作用是加和目前的状态,于是通知「运算单元」工作。运算单元收到要加和状态中的值的通知后,就会把状态中的 1 和 2 读入并计算,再将计算的结果 3 存放到状态中;

最后,运算单元将结果返回给控制单元,控制单元将结果传输给读写头,读写头向右移动,把结果 3 写入到纸带的格子中;

通过上面的图灵机计算 1 + 2 的过程,可以发现图灵机主要功能就是读取纸带格子中的内容,然后交给控制单元识别字符是数字还是运算符指令,如果是数字则存入到图灵机状态中,如果是运算符,则通知运算符单元读取状态中的数值进行计算,计算结果最终返回给读写头,读写头把结果写入到纸带的格子中。

冯诺依曼模型

1945 年冯诺依曼和其他计算机科学家们提出了计算机具体实现的报告,其遵循了图灵机的设计,而且还提出用电子元件构造计算机,并约定了用二进制进行计算和存储,还定义计算机基本结构为 5 个部分,分别是中央处理器(CPU)、内存、输入设备、输出设备、总

相关推荐

win10专业版自动关机设置
谁有365比分链接

win10专业版自动关机设置

07-04 👁️ 3370
场效应管所有厂家的中英文对照表
365国际网站

场效应管所有厂家的中英文对照表

07-26 👁️ 8806
日本YouTube頻道訂閱人數排行榜
谁有365比分链接

日本YouTube頻道訂閱人數排行榜

08-24 👁️ 3338
i厦门官方app下载
谁有365比分链接

i厦门官方app下载

08-05 👁️ 6053