计组 第一章
概论
分类
- 数字计算机
- 专用计算机
- 通用计算机
- 模拟计算机
发展简史
五代变化
- 电子管计算机(1946—1957 年):数据处理
- 晶体管计算机(1958—1964 年):工业控制
- 中小规模集成电路计算机(1965—1971 年):小型计算机
- 大规模和超大规模集成电路计算机(1972—1990 年):微型计算机
- 巨大规模集成电路计算机(1991 年开始):单片机
性能指标
吞吐量
表征一台计算机在某一时间间隔内能够处理的信息量,单位是字节/秒(B/S)。
响应时间
表征从输入有效到系统产生响应之间的时间度量,用时间单位来度量,例如微秒(10-6S)、纳秒(10-9S)。
利用率
给定的时间间隔内,系统被实际使用的时间所占的比率,一般用百分比表示。
处理机字长
指处理机运算器中一次能够完成二进制数运算的位数。当前处理机的字长有 8 位、16 位、32 位、64 位。字长越长,表示计算的精度越高
总线宽度
CPU 中运算器与存储器之间进行互连的内部总线二进制位数。
存储器容量
存储器中所有存储单元的总数目,通常用 KB、MB、GB、TB 来表示。
存储器带宽
存储器的速度指标,单位时间内从存储器读出的二进制数信息量,一般用字节数/秒表示。
主频/时钟周期
CPU 的工作节拍受主时钟控制,主时钟不断产生固定频率的时钟,主时钟的频率(f)叫 CPU 的主频。度量单位是 MHz(兆赫兹)、GHz(吉赫兹)。例如 Pentium 系列机为 60MHz~266MHz,而 Pentium 4 升至 3.6GHz。
CPU 时钟周期(T)
主频的倒数,即 T=1/f,度量单位是微秒、纳秒。
CPU 执行时间
CPU 执行一段程序所占用的 CPU 时间。CPU 执行时间 = CPU 时钟周期数 × CPU 时钟周长
CPI
每条指令周期数,即执行一条指令所需的平均时钟周期数。 CPI = 执行程序所需的 CPU 时钟周期数/该程序包含的指令条数
MIPS
每秒百万条指令数。MIPS = 指令条数/程序执行时间 Te × 10 的 6 次方 = 时钟频率/CPI × 10 的 6 次方。MIPS 是单位时间内的执行指令数,所以 MIPS 值越高说明机器速度越快。
MFLOPS
每秒百万次浮点操作次数。MFLOPS = 程序中的浮点操作数/程序执行时间 Te × 10 的 6 次方。 MFLOPS 是基于操作而非指令的,只能用来衡量机器浮点操作的性能,而不能体现机器的整体性能。
TFLOPS
每秒万亿次浮点操作次数,该技术指标一般在超级计算机中使用。
硬件
- 控制器:人的大脑的操作控制功能
- 运算器:人的大脑的计算功能
- 存储器:人的大脑记忆功能
- 输入设备:交互接口,笔
- 输出设备:交互接口,纸
运算器
算术运算和逻辑运算
在计算机中参与运算的数是二进制的
运算器的长度一般是 8、16、32 或 64 位
存储器
存储数据和程序(指令)
容量(存储单元、存储单元地址、容量单位)
分类内存(ROM、RAM)、外存
存储器单位: $1KB = 2^{10}B \ 1MB = 2^{20}B \ 1GB = 2^{30}B \ 1TB = 2^{40}B $
控制器
指令和程序:指令的形式(操作和地址码、存储程序的概念、指令中程序和数据的存放、指令系统)
指令和数据存储
控制器的基本任务:按照一定的顺序一条接着一条取指令、指令译码、执行指令。取指周期和执行周期
适配器与I/O设备
输入设备:把人们所熟悉的某种信息形式变换为机器内部所能接收和识别的二进制信息形式
输出设备:把计算机处理的结果变换为人或其他机器设备所能接收和识别的信息形式
适配器:它使得被连接的外围设备通过系统总线与主机进行联系,以便使主机和外围设备并行协调地工作
总线:构成计算机系统的骨架,是多个系统部件之间进行数据传送的公共通路
软件
分类
- 系统软件
- 各种服务性程序,如诊断程序、排错程序、练习程序等
- 语言程序,如汇编程序、编译程序、解释程序等
- 操作系统
- 数据库管理系统
- 应用软件
发展演变
编程语言的发展
- 手编程序:机器语言程序,手工编译二进制码
- 汇编程序:符号语言程序,汇编程序汇编
- 高级程序:算法语言/高级语言,机器编译程序/解释程序
系统软件的发展
- 手编程序:机器语言程序,手工编译二进制码
- 汇编程序:符号语言程序,汇编程序汇编
- 高级程序:算法语言/高级语言,机器编译程序/解释程序
多级计算机系统
微程序设计级,这是一个实在的硬件级,它由机器硬件直接执行微指令。如果某一个应用程序直接用微指令来编写,那么可在这一级上运行应用程序。
一般机器级,也称为机器语言级,它由微程序解释机器指令系统。这一级也是硬件级。
操作系统级,它由操作系统程序实现。这些操作系统由机器指令和广义指令组成,广义指令是操作系统定义和解释的软件指令,所以这一级也称为混合级。
汇编语言级,它给程序人员提供一种符号形式语言,以减少程序编写的复杂性。这一级由汇编程序支持和执行。如果应用程序采用汇编语言编写时,则机器必须要有这一级的功能;如果应用程序不采用汇编语言编写,则这一级可以不要。
高级语言级,它是面向用户的,为方便用户编写应用程序而设置的。这一级由各种高级语言编译程序支持和执行