冯·诺依曼原理
美籍匈牙利科学家冯·诺依曼被人美称为“现代电子计算机之父”,他提出了“程序存储和程序控制”的计算机体系设计思想,该思想主要内容包括一下三个方面:
1、计算机硬件设备由运算器、控制器、输入设备和输出设备五部分组成;
2、计算机内部采用二进制、
3、程序存储和程序控制
数据或指令通过输入设备输入计算机,存储在存储器中。在计算机运行过程中,数据从存储器读入运算器进行运算,中间结果也要存入存储器中,最终将结果经输出设备输出程序,即人们用机器自身所具有的指令编排的指令序列,也是以数据的形式由存储器送入控制器,再由控制器向机器的各个部分发出相应的控制新号。
除数据或指令外,计算机中还有一种控制信息,它由控制器发出,用来控制机器的各部件执行指令规定的各种操作。
冯·诺依曼计算机的结构如图:
计算机的工作过程
计算机工作的原理也同处理人们日常问题时的常用规则和方法相同。
这种方法是把整个过程按照一定的规则一步一步地分解。这些分解就是一些基本的操作,然后按照一定的顺序这行这些基本的操作就可以完成整个操作。
而计算机完成某个操作的所发出的命令就成为指令。使用者根据解决某一问题的步骤,一条条的指令进行有序的排列。计算机这行了这一指令序列,便可以完成预定的任务。这一指令序列就成为程序。
比如,从输入设备输入两个数2和8,要求计算机进行相加处理,并将结果10在屏幕上显示出来。
微型计算机工作过程如下:
1、CPU访问输入/输出接口(I/O接口):
在微机存储器(只读存储器ROM或可擦可编程只读存储器EPROM)中已经存储了控制程序,它能够指挥计算机正常工作。开机后,CPU自动从ROM中取出已存入的指令,进行扫描键盘、访问I/O接口等工作。
2、读入数据并运行:
CPU扫描键盘,查询有无键按下时,如果按下2和8键,则CPU就将键入的两个数2和8经数据总线送到运算器中,并根据键入的“相加”要求,完成2+8=10的运算,得到结果10。
3、暂存结果:
将两数之和10暂存在CPU中的寄存器,也可以转存在计算机内存储器中。
4、输出结果:
CPU根据预先编制好的程序,将结果10送出,经过译码,把二进制数10转换成ASCII码。控制器根据指令,指挥有关部件将10的字形码信息送至显示器,最后就在显示器上显示结果10。
中央处理器
中央处理器的英文缩写是CPU(Central Processing Unit),是一块体积不大而集成度非常高、功能非常强大的芯片,在微型计算机中也称为微处理器。它主要由控制器、运算器和寄存器组成。
CPU是计算机的大脑,计算机的运算、控制都是由它来完成的,所以它的性能直接影像了整个计算机的性能
运算器
运算器是负责对数据进行算术运算和逻辑运算部件。
运算器由算术逻辑部件(ALU)、累加器、状态寄存器、通用寄存器组等组成。
算术逻辑部件是用于完成加、减、乘、除等算术运算,与、或、非等逻辑运算,以及移位,求补等操作的部件。
算术逻辑部件有两个输入口:其中一个输入口和累加器链接,另一个输入口和通用寄存器连接。
算术逻辑部件有两个输出端:一个输出运算结果并送到累加器或指定不见,另一个输出表示运算结果的状态标志位输送到状态寄存器。
累加器用于暂存被操作的数和中间运算结果。
通用寄存器组一组寄存器,运算时用于暂存操作数和数据地址。
状态寄存器也称标志寄存器,它用于存放运算中产生的状态信息。
从运算器的组成我们可以知道它的功能:
1、视线对数据的算术和洛基运算;
2、暂时存放参与运算的数据和某些中间运算结果;
3、挑选参加运算的数据,选中被执行的运算功能,并把运算结果输送到所要求的部件中。
控制器
控制器是计算机的控制中心,用来实现计算机本身运算过程的自动化,其作用是控制整个计算机的工作。
它指挥计算机各部件按照指令功能的要求进行所需要的操作,它从存储器中取出指令,分析指令,产生一系列的控制信号,去控制计算机各部件协调地工作,并控制程序的执行顺序。
因此说控制器是计算机指令的执行部件,其空座是取指令、解释指令以及完成指令的执行。
控制器由指令指针寄存器、指令寄存器、控制逻辑电路和时钟控制电路等组成。
指令指针寄存器用于产生及存放下一条待取指令的地址。
指令寄存器用于存放产生正在执行的指令,指令从内存取出后放入指令寄存器,在指令执行完成前指令寄存器中一直保存着该指令。
控制逻辑电路用于产生微操所需要的控制信号。
时钟控制电路用于产生指令执行过程中所需要的时间控制信号。时钟控制电路要与控制逻辑电路配合才能使指令正确执行。
寄存器
寄存器是CPU的一个重要组成部分,它是CPU内部的临时存储单元,用于存储运算中的数据、中间结果、地址和状态信息等。
CPU中寄存器数量对CPU运行速度有一定影响,寄存器数量增多可以使CPU执行程序时把较多的数据存放在寄存器,从而减少访问存储器的次数,提高CPU的运行速度。
但是寄存器的数量不能太多,寄存器数量太多会使寄存器地址编码位数增加,使指令长度增加。
寄存器的位数一般和算术逻辑部件、数据总线的位宽是一致的。CPU中的寄存器通常分为数据寄存器、存放地址的寄存器、存放控制信息的寄存器、存放状态信息的寄存器和其他寄存器。