1.2.1 计算机工作原理
一个完整的计算机系统包括硬件系统和软件系统两大部分,如图1所示。硬件系统是组成计算机系统的各种物理设备的总称,是计算机系统的物质基础。软件系统是为了运行、管理和维护计算机而编写的各种程序、数据和相关文档的总称。通常将不装备任何软件的计算机称为“裸机”。计算机中的软、硬件系统相辅相成,共同完成处理任务,二者缺一不可。
图1 计算机系统的组成示意图
现在的计算机都是基于“程序存储”概念而设计制造出来的。
1. “程序存储”设计思想
1945年,冯·诺依曼提出了关于计算机组成和工作方式的基本设想,其内容可概括为以下3点。
① 计算机应包括运算器、控制器、存储器、输入设备和输出设备5大基本部件。
② 计算机内部应采用二进制来表示指令和数据。每条指令一般具有一个操作码和一个地址码。其中,操作码表示运算性质,地址码定义操作数在存储器中的地址。
③ 将编写好的程序和原始数据存入内存储器中,然后启动计算机工作,计算机应在不需操作人员干预的情况下,自动逐条取出指令和执行任务。
冯·诺依曼设计思想最重要之处在于明确地提出了“程序存储”的概念,他的全部设计思想实际上是对“程序存储”要领的具体化。
2. 计算机的工作过程
了解了“程序存储”的思想,再去理解计算机的工作过程就变得十分容易了。如果要让计算机工作,就得先把程序编写出来,然后通过输入设备传送到存储器中保存起来,接下来就是执行程序。根据冯·诺依曼的设计,计算机应该能够自动执行程序,而执行程序又归结为逐条执行指令。执行一条指令又可分为以下基本操作。
① 取出指令:从存储器某个地址中取出要执行的指令送到CPU内部的指令寄存器暂存。
② 分析指令:把保存在指令寄存器中的指令送到指令译码器,译出该指令对应的微操作。
③ 执行指令:根据指令译码,向各个部件发出相应控制信号,完成指令规定的各种操作。
④ 最后,计算机为执行下一条指令做好准备,即取出下一条指令地址。