引子
王天下有三重焉,其寡过矣乎!
上焉者虽善,无征。无征,不信。不信,民弗从。下焉者虽善,不尊。不尊,不信。不信,民弗从。
故君子之道,本诸民,徵诸庶民。考诸三王而缪,建诸天地而不悖。质诸鬼神而无疑。百世以俟圣人而不惑。
质鬼神而无疑,知天也。百世以俟圣人而不惑,知人也。
是故君子动而世为天下道,行而世为天下法,言而世为天下则。远之,则有望;近之,则不厌。
诗曰:在彼无恶,在此无射;庶几夙夜,以永终誉。君子未有不如此,而蚤有誉于天下者也。
–《中庸》
计算机系统概论
计算机系统简介
计算机 = 硬件 + 软件
- 由硬件直接执行微指令,微程序机器$M_0$,微指令系统
- 直接执行机器语言的机器称为实际机器$M_1$,最底层$M_1$,机器语言机器
- 用机器语言解释操作系统,虚拟机$M_2$,操作系统机器
- 具有翻译功能的汇编程序的计算机称为$M_2$,虚拟机$M_3$,汇编语言机器
- 将高级语言先翻译成汇编语言程序,再在$M_2$、$M_1$上执行,虚拟机$M_4$,高级语言机器
20世纪60年代出现了各种面向问题的高级语言:FORTRAN,BASIC,PASCAL,C
翻译程序有两种:编译程序,解释程序
把软件永恒地存于只读存储器中,称为固件
计算机体系结构:偏向于抽象,和高级,是指封装后的使用特性。
计算机组成:实现特性的底层技术,偏向于具体,和底层。
1945年,数学家冯·诺伊曼(von Neumann)在研究EDVAC机时提出了‘存储程序’的概念,以此概念为基础的各类计算机通称为冯·诺伊曼机。特点如下:
- 计算机由运算器、存储器、控制器、输入设备和输出设备五大部分组成
- 指令和数据以同等地位存放于存储器内,并可按地址寻访
- 指令和数据均用二进制表示
- 指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置
- 指令在存储器内按顺序存放。通常,指令是顺序执行的,在特定条件下,可根据运算结果或根据设定的条件改变执行顺序。
- 机器以运算器为中心,输入输出设备与存储器间的数据传送通过运算器完成
典型计算机各部件功能:
- 运算器用来完成算数运算和逻辑运算,并将运算的中间结果暂存在运算器内
- 存储器用来存放数据和程序
- 控制器用来控制、指挥程序和数据的输入、运行以及处理运算结果
- 输入设备用来将人们熟悉的信息形式转换为机器能识别的信息形式,常见的有键盘、鼠标等
- 输出设备可将机器运算结果转换为人们熟悉的信息形式,如打印机输出、显示器输出等。
大规模集成电路制作工艺出现后,运算器和控制器往往集成在同一芯片上,统称为CPU(Central Processing Unit)。输入和输出设备简称为I/O设备
这样,现代计算机可认为由三大部分组成:CPU、I/O设备及主存储器(Main Memory)。CPU和主存储器合称为主机,I/O设备又可称为外部设备。
算数逻辑单元(Arithmetic Logic Unit, ALU)简称算逻部件,用来完成算数逻辑运算。控制单元(Control Unit, CU)用来解释存储器中的指令,并发出各种操作命令来执行指令。ALU和CU是CPU的核心部件。
I/O设备也受CU控制,用来完成相应的输入、输出操作
计算机有条不紊的工作都是在控制器统一指挥下完成的
用计算机解决一个实际问题通常包括两个步骤:
- 上机前的准备
- 建立数学模型
- 确定计算方法
- 编制解题程序
- 计算机的工作过程
- 主存储器
- 运算器
- 控制器
- I/O
计算机主要技术指标
- 机器字长
- 存储容量
- 运算速度
计算机的发展及应用
ENIAC 1943年开始批准制造,1946年交付使用
- 第一代电子管计算机:1946
- 第二代晶体管计算机:1964
- 第三代集成电路计算机:1964 System/360
集成电路的影响是革命性的,Moore定律:微芯片上集成的晶体管数目每三年翻两番。
计算机设计者必须不断平衡处理器、主存、I/O设备和互连结构之间的数据吞吐率和数据处理的需要,使计算机性能越来越好。
21世纪初的眼光来看,微处理器的发展重点将会是以下这几个方面:
- 进一步提高复杂度来提高处理器性能
- 通过线程/进程级并行性的开发提高处理器的性能
- 将存储器集成到处理芯片内来提高处理器性能
- 发展嵌入式处理器
软件发展的特点
- 开发周期长
- 制作成本昂贵
- 检测软件产品质量的特殊性
软件是程序以及开发、使用和维护程序需要的所有文档
软件的应用
- 科学计算
- 数据处理
- 工业控制和实时控制
- 网络技术的应用