单片机原理及应用/计算机的基本结构

维基教科书,自由的教学读本

世界上第一台电子数字式计算机ENIAC(The Electronic Numerical Intergrator and Computer)于1946年2月15日在美国宾夕法尼亚大学正式投入运行,它使用了17 468个真空电子管和86 000个其他电子元件,耗资100万美元以上,耗电174千瓦,占地170平方米,有两个教室那么大,重达30吨,每秒钟可进行5000次加法运算。虽然它的功能还比不上今天最普通的一台微型计算机,但在当时它已是运算速度的绝对冠军,并且其运算的精确度和准确度也是史无前例的。ENIAC奠定了电子计算机的发展基础,开辟了一个计算机科学技术的新纪元。

ENIAC诞生后,1946年6月,美籍匈牙利数学家冯·诺依曼提出了重大的改进理论,主要有两点:一是电子计算机应该以二进制为运算基础;二是电子计算机应采用“存储程序”方式工作。
冯·诺依曼体系的主要思想包括:

  • 采用二进制代码形式表示信息(数据、指令);
  • 采用存储程序工作方式(冯·诺依曼思想最核心的概念);
  • 计算机硬件系统由五大部件(运算器、控制器、存储器、输入设备和输出设备)组成。

这些思想奠定了现代计算机的基本结构,并且开创了程序设计的新时代。
冯·诺依曼对计算机界的最大贡献在于“存储程序控制”概念的提出和实现,主要包含以下三个方面的思想:

  • 根据任务编制程序:计算机对任务的处理,首先必须设计相应的算法,而算法是通过程序来实现的,程序就是一条条的指令,告诉计算机按照一定的步骤不断地去执行。程序中还应提供需要处理的数据,或者规定计算机在什么时候、什么情况下从输入设备取得数据,或向输出设备输出数据。
  • 将编制好的程序存储在计算机内部:计算机只能识别二进制文件,也就是一串0和1的组合。我们编写的程序,不管使用哪种语言,如汇编语言、C语言、JAVA等,最终都要编译成二进制代码,也就是机器语言,计算机才能够读懂和识别,才能按照一条条指令去执行。因此,编写好的程序最终将变为指令序列和原始数据,保存在存储器中,提供给计算机执行。
  • 计算机能够自动、连续地执行程序,并得到需要的结果:存储器就是一个个小房间,并且按照一定的地址进行编号,需要执行的指令和数据都以二进制代码的形式存放在存储器中。计算机开始执行程序,设置一个程序计数器PC(Program Counter)指向需要执行的指令或者代码处,每执行一个字节的指令,PC计数器自动加1,如果程序需要转移,PC指向转移地址处,按照转移地址读取后续指令。计算机就是这样能够自动地、连续不断地从存储器中逐条读取指令,并且完成相应操作,直到整个程序执行完毕。

冯·诺依曼的这些理论的提出,解决了计算机运算自动化的问题和速度配合问题,对后来计算机的发展起到了决定性的作用。直至今天,绝大部分的计算机还是采用冯·诺依曼方式工作。