(⼀)计算机发展历程
(二)计算机系统层次结构
1.计算机系统的基本组成
2.计算机硬件的基本组成
3.计算机软件和硬件的关系
4.计算机的工作过程
(三)计算机性能指标
吞吐量、响应时间;CPU时钟周期、主频、CPI、CPU执行时间;MIPS、MFLOPS 、GFLOPS、TFLOPS、PFLOPS、EFLOPS、ZFLOPS。
目前的发展趋势:
一极是微型计算机向更微型化、网络化、高性能、多用途方向发展。
另一极是巨型机向更巨型化、超高速、并行处理、智能化方向发展。
(1)机器语言:计算机能够直接识别并执行的语言。机器语言程序由0、1代码表示的指令序列组成。
(2)汇编语言:用便于记忆的符号(助记符)表示机器指令。机器语言指令与汇编语言指令一一对应。
(3)高级语言:接近于自然语言,用约定的符号和规则编写程序
(4)编译程序:将高级语言程序翻译成机器语言目标代码的系统软件
(5)汇编程序:将汇编语言程序翻译成机器语言目标代码的系统软件。
(6)字长:运算器能够并行参与运算的数据的位数,一般取决于CPU内部寄存器的数据宽度。
(7)系列机:指一个厂家生产的具有相同的系统结构,但具有不同组成和实现的一系列不同型号的机器。
(8)软件兼容:指现有软件可以在以后升级换代后的新型号机器上使用。
(9)虚拟机器:站在使用者的角度把整个计算机系统看作是在实际机器(硬件)之上的一台虚拟机器,称它为虚拟机器的原因是,它依靠了软件才存在,即软件发展导致系统功能的扩充。
(10)二进制位(bit):是数字计算机中信息的最小单位。
(11)字节(Byte):将每8位二进制数称为一个字节。通常计算机系统的存储器按字节编址
(12)内存地址:为了能访问存储器指定位置的数据,给每个存储单元编上一个号码,该号码称为内存地址。
(1)输入设备:用来输入原始数据和程序,如键盘、鼠标。
(2)存储器:用以存放原始数据、程序、中间运算结果、最后的处理结果。存储器又有主存储器和辅助存储器之分。CPU可以直接访问的程序和数据存放在主存储器中。
(3)输出设备:用来输出计算机的处理结果,如显示器和打印机。
(4)运算器:传统运算器的核心是一个算术及逻辑运算部件(ALU),完成对信息或数据的处理和运算,例如加、减、乘、除、比较大小、移位、逻辑乘、逻辑加等,是计算机的执行部件。
(5)控制器:控制器是整个计算机的指挥中心,产生指令执行过程中指挥各部件协同工作的各个控制信号。
1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理。后来,人们把利用这种概念和原理设计的电子计算机系统称为“冯·诺依曼型”计算机。
冯·诺依曼计算机的核心思想是“存储程序工作方式”。它具有以下特点:
(1)计算机由运算器、控制器、存储器、输入设备和输出设备五部分组成。
(2)采用存储程序的方式,程序和数据都放在存储器中。
(3)数据和指令以二进制码表示。
(4)指令由操作码和地址码组成。
(5)指今在存储器中按执行顺序存放,机器在指令驱动下自动执行。
(6)以运算器为中心。
计算机软件分系统软件和应用软件。
(1)系统软件用来简化程序设计,简化机器使用,提高计算机的使用效率,扩充机器功能。
(2)应用软件是用户为了解决某一类问题而编写的程序。
(1)系统软件:系统诊断程序、汇编程序、编译程序、操作系统、数据库管理系统。
(2)应用软件:Office系列软件、浏览器、用户编写的解题算法。
(1)机器语言:代码效率高,执行速度快,硬件可以直接执行,但是可读性差,不易编程,不易维护。
(2)汇编语言:可读性较好,便于出错检查和修改,用它编写的程序紧凑,占内存小,执行速度较快,但是可移植性差,对程序员的要求很高,程序员必须十分熟悉计算机硬件结构和配置、指令系统和寻址方式。
(3)高级语言:接近于自然语言,容易理解和掌握,与硬件无关、编程无须考虑机器的硬件结构,但是执行效率较低,执行速度慢,不能用来编写需访问机器硬件资源的系统软件或设备控制软件。
软件和硬件是一个完整的计算机系统中互相依存的两大部分,其中硬件是软件赖以工作的物质基础,软件是硬件发挥作用的途径。计算机系统必须配备完善的软件系统才能正常工作,才能充分发挥硬
件的各种功能。
软件和硬件具有逻辑等价性,即软件能完成的工作硬件能完成、硬件能完成的工作软件大多也能完
成,不同的是,用软件完成速度较慢,可复制;用硬件完成速度较快。
一条指令的执行过程分为取指令、分析指令、执行指令阶段。
根据程序员与计算机系统对话中所采用的语言不同和所实现的功能,把计算机系统看成是由多个机器级构成的层次结构。一般划分为以下七个层次:
第0级机器:硬联逻辑级,由门电路、触发器等逻辑电路构成。
第1级机器:微程序级,根据各种指令操作所需要的控制时序,利用微指令编写微程序,控制信息在各部件之间传送。
第2级机器:是传统机器语言机器。机器语言程序员用这级指令系统编写的程序由第1级的微程序进行解释或者由第0级机器直接实现。
第3级机器:操作系统机器。提供具有人机交互功能的用户界面和底层系统调用服务例程,这级语言中的多数指令是传统机器的指令,此外还提供操作系统级指令,例如打开文件、读/写文件、关闭文件等指令。
第4级机器:是汇编语言机器。用汇编语言编写的程序首先翻译成第3级或第2级语言,然后再由相应的机器进行解释。完成翻译的程序称为汇编程序。
第5级机器:是高级语言机器。用高级语言所编写的程序一般是由编译程序翻译为第4级或第3级上的语言,个别的高级语言也用解释的方法实现。
第6级机器:是应用语言机器。这种语言使非计算机专业人员也能直接使用计算机、只需在用户终端用键盘或其他方式发出服务请求就能进人第6级的信息处理系统。
注意:在特定的计算机系统中,有些级别可能不存在。
便于分开研究层次结构中每个层次利层次间关系,便于优化系统结构,便于理解计算机系统软硬件的逻辑等价性,即软件的功能可以由硬件实现,硬件的功能也可用软件实现。
在硬件之上由于软件的发展而导致计算机系统功能的扩展,使不同语言用户面对的是不同层次的虚拟机器。
将高级语言编写的程序翻译成机器语言程序,通常有解释和编译两种方式。
用专门的解释器将源程序逐行翻译成特定平台的机器代码并立即执行,不形成目标程序,每次执行解释型语言的程序都需要进行一次翻译,程序运行效率较低,而且不能脱离解释器独立运行。优势是可以方便地实现源程序级的跨平台移植,只需提供特定平台的解释器即可。
用专门的编译器,将高级语言源程序一次性翻译成可以在特定硬件上执行的机器语言程序,编译生成的可执行程序可以脱离开发环境独立运行。翻译方式会生成一个可以反复使用的目标文件,通常运行效率较高。但编译生成的是特定平台上的机器码,如果需要移植到其他平台上运行,则需要采用特定平台上的编译器重新编译。
注意:大多数的编译程序直接产生机器语言的目标文件,但也有的编译程序先产生汇编语言一级的符号代码文件,然后再调用汇编程序进行处理,最后产生可执行的机器语言目标文件。
存储容量和速度是衡量计算机性能的两类重要指标。
其中,表示速度的指标主要包括机器字长、CPU主额和时钟周期、CPI、CPU执行时间、MIPS、MFLOPS。
另外,还包括吞吐量、响应时间、存储器带宽、总线带宽等。