本章小结
虚拟机的概念有助于我们正确理解计算机的实质和计算机运算的实现途径,从而更好地进行计算机语言的研究和应用,包括了从基础的硬件层到应用层的不同层次结构的虚拟机。
计算机能直接执行用机器语言所编的程序。机器语言是由二进制代码表示的计算机器指令和数据组合而成。指令是用来指定计算机实现某种控制或执行某个运算的操作命令代码。一台计算机全部指令的集合,称为指令系统。不同的计算机有不同的指令系统。
从高级语言转换到真正可执行的机器语言有两类方法:编译和解释。这两种方式都能够将高级语言编写的源程序转换成机器可执行的二进制机器代码。编译运行效率较高,解释运行比较灵活。
体系结构的概念是从软件设计者的角度对计算机硬件系统的观察和分析。结构是指各部分之间的关系。通过分析系统的组成和结构,可以更好地进行软件设计。
冯?诺依曼结构是典型的顺序执行结构,采用“存储程序控制原理”。其基本要点是:采用二进制工作;指令和数据都以二进制代码形式存放在存储器中;计算机由五大部分组成:运算器、控制器、存储器、输入设备、输出设备;采用顺序型算法;使用程序存储控制方式。
哈佛结构与冯?诺依曼结构的主要区别在于其将指令和数据分别进行存储管理,而其基本组成是相同的。由于结构上的区别,哈佛结构在并行性上要优于冯?诺依曼结构,但其实现相对复杂,在早期应用较少。
处理器是计算机系统的能力核心,其结构决定了整个系统的结构和能力。本章按指令系统结构分别介绍了CISC和RISC两种处理器结构。
CISC结构指令丰富,寻址方式多样,曾经是处理器发展的重要方向,但其结构复杂,大量指令使用率低。RISC则以硬件实现最常用到的指令,而大量复杂的、使用率低的指令由软件实现,在同等条件下,提高了硬件的效率。CISC和RISC的主要区别实际上是在软件和硬件的划分界面上。
流水线技术是提高处理器性能的最重要设计之一,是现代计算机系统结构中普遍使用的一种提高处理器性能的方式。
并行计算机是由一组处理单元组成的。这组处理单元通过相互之间的通信与协作,以更快的速度共同完成一项大规模的计算任务。
按照著名的弗林计算机分类模型,根据计算机的指令和数据流的并行性,可以把所有的计算机分为4类:SISD?、SIMD、MISD和MIMD。
计算机软件可分为系统软件和应用软件两大类。操作系统是一类特殊的系统软件,其直接作用于硬件,是人们与计算机打交道的第一个层次,其他软件都工作在操作系统的基础上。系统软件主要是为应用提供通用的、公共的基础,大多是系统运行的支持和开发工具,应用软件根据应用的不同,形式非常丰富,是人们最常使用的一部分。
软件从表现形式上看是由能够完成预定功能和性能的一组计算机指令(计算机程序)、描述程序的设计和使用的文档三部分组成。在本质上,软件是控制计算机硬件运行,解决实际问题的逻辑方法。软件伴随着计算机硬件的产生而出现,并随着其发展而逐步发展。随着计算机科学的发展,软件的地位不断上升。
在计算机系统中,软件是逻辑部件,而硬件是物理部件。软件相对硬件而言有许多不同特点。软件是一种逻辑实体,具有很强的抽象性。软件可以记录在介质上,或在系统上运行。软件是一个逻辑上复杂而规模上庞大的系统,涉及技术、管理等多方面的问题。
软件在社会形态上可分为以商业软件为代表的闭源软件和以自由软件为代表的开源软件两大类。另外,软件还可以细分为其他若干形态。