# 第一章 计算机系统概论
# 1.1 计算机的分类
# 电子模拟计算机
特点:数值由连续量来表示,运算过程也是连续的
# 电子数字计算机
特点:按位运算,并且不连续地跳动计算。
电子模拟计算机精度和解题能力有限,应用范围较小,习惯上所称的电子计算机,一般是指现在广泛应用的电子数字计算机。又分为专用计算机和通用计算机,
- 专用计算机是最有效、最经济和最快速的计算机,但其适应性很差。
- 通用计算机牺牲了效率、速度和经济性,但其适应性很大。
# 1.2 计算机发展简史 (重点)
代数 | 使用器件 | 时间 |
---|---|---|
第一代 | 电子管计算机 | 1946-1957 年 |
第二代 | 晶体管计算机 | 1958-1964 年 |
第三代 | 中小规模集成电路计算机 | 1965-1971 年 |
第四代 | 大规模和超大规模集成电路计算机 | 1972-1990 年 |
第五代 | 巨大规模集成电路计算机 | 1991 年至今 |
自 1946 年计算机诞生至今,大约每五年运算速度提高 10 倍,可靠性提高 10 倍,体积缩小 10 倍。
# 摩尔定律
1965 年,戈登・摩尔(原 Intel 董事长)提出。
晶体管表面积(即刻在集成电路板上的面积)每 18 个月就会缩小大约 50%。换言之,微处理器的性能每隔 18 个月提高一倍,而价格下降一半
# 1.3 计算机的性能指标
# 吞吐量
- 表示一台计算机在某一时间间隔内能够处理的信息量,单位是字节 / 秒(B/S)
# 响应时间
- 表征从输入有效到系统产生响应之间的时间度量,用时间单位来度量,例如微秒(10-6s)、纳秒(10-9s)。
# 利用率
- 表示在给定的时间间隔内,系统被实际使用的时间所占的比率,一般用百分比表示。
# 处理机字长
- 指处理机运算器中一次能够完成二进制数运算的位数。当前处理机的字长有 8 位、16 位、32 位、64 位。字长越长,表示计算的精度越高。
# 总线宽度
- 一般指 CPU 中运算器与存储器之间进行互连的内部总线二进制位数。
# 存储器容量
- 存储器中所有存储单元的总数目,通常用 KB、MB、GB、TB 来表示。
- 其中 1K=210B,1M=220B,1G=230B,1T=240B,1B=8bit(1 个字节)。存储器容量越大,记忆的二进制数越多。
# 存储器带宽
- 存储器的速度指标,单位时间内从存储器读出的二进制数信息量,一般用字节数 / 秒表示。
# 主频 / 时钟周期
- CPU 的工作节拍受主时钟控制,主时钟不断产生固定频率的时钟,主时钟的频率(f)叫 CPU 的主频。
- 度量单位是 MHz(兆赫兹)、GHz(吉赫兹)。 例如 Pentium 系列机为 60MHz~266MHz,而 Pentium 4 升至 3.6GHz。
- 主频的倒数称为 CPU 时钟周期(T),即 T=1/f,度量单位是微秒、纳秒。
# CPU 执行时间
- 表示 CPU 执行一段程序所占用的 CPU 时间,可用下式计算:
# CPI
- 表示每条指令周期数,即执行一条指令所需的平均时钟周期数。用下式计算
# MIPS
- 表示每秒百万条指令数,用下式计算
- MIPS 是单位时间内的执行指令数,所以 MIPS 值越高,说明机器速度越快。
程序执行时间 Te 为:
# MFLOPS / TFLOPS
- MFLOPS 表示每秒百万次浮点操作次数,用下式计算
- MFLOPS 是基于操作而非指令的,只能用来衡量机器浮点操作的性能,而不能体现机器的整体性能。TFLOPS 表示每秒万亿次浮点操作次数,该技术指标一般在超级计算机中使用。
# 1.4 冯・诺依曼体系结构(重点)
冯・诺依曼计算机基本设计思想:存储程序和程序控制!
拥有以下特点
- 由运算器、存储器、控制器、输入设备、输出设备五大部件组成计算机系统,并规定了这五部分的基本功能。
- 采用存储程序的方式,程序和数据放在同一个存储器中(哈佛结构放在不同存储器中),指令和数据都可以送到运算器运算,即由指令组成的程序是可以修改的。
- 数据以二进制数码表示。
- 指令由操作码和地址码组成。
- 指令在存储器中按顺序存放,由指令计数器(PC) 指明要执行的指令所在单元地址,一般按顺序递增,但可按运算结果或外界条件改变。
- 机器以运算器为中心,I/O 设备与存储器间数据传送都通过运算器。
# 1.5 计算机系统的层次结构
计算机不能简单地认为是一种电子设备,而是一个十分复杂的硬、软件结合而成的整体。它通常由五个以上不同的级组成,每一级都能进行程序设计。
# 层次结构的特点
- 每一级上都能进行程序设计,且得到下面各级的支持
- 第 1 级~第 3 级所用语言基本为二进制语言,机器执行和解释容易
- 第 4 级、第 5 级采用符号语言, 有利于不了解硬件的人使用计算机
- 级数越低越靠近硬件,级数越高使用计算机越方便;
# 第 1 级 微程序设计级
第 1 级是微程序设计级。这是一个实在的硬件级,它由机器硬件直接执行微指令。如果某一个应用程序直接用微指令来编写,那么可在这一级上运行应用程序。
# 第 2 级 一般机器级
第 2 级是一般机器级,也称为机器语言级,它由微程序解释机器指令系统。这一级也是硬件级。
# 第 3 级 操作系统级
第 3 级是操作系统级,它由操作系统程序实现。这些操作系统由机器指令和广叉指令组成,广义指令是操作系统定义和解释的软件指令,所以这一级也称为混合级。
# 第 4 级 汇编语言级
第 4 级是汇编语言级,它给程序人员提供一种符号形式语言,以减少程序编写的复杂性。这一级由汇编程序支持和执行。如果应用程序采用汇编语言编写时,则机器必须要有这一级的功能;如果应用程序不采用汇编语言编写,则这一级可以不要。
# 第 5 级 高级语言级
第 5 级是高级语言级,它是面向用户的,为方便用户编写应用程序而设置的。这一级由各种高级语言编译程序支持和执行。