计算机系统概述
一、计算机系统简介
1. 计算机系统分类:
- 硬件 :计算机实体
- 软件 :由具有各类特殊功能的信息(程序)组成
- 系统软件:管理整个计算机系统 —— 语言处理程序、操作系统、服务性程序、数据库管理系统、网络软件
- 应用软件:按任务编制成的各种程序
2. 层次结构
3. 计算机体系结构和计算机组成
- 计算机体系结构:机器语言程序员所见到的计算机系统属性(能在计算机硬件系统上正确执行的程序)(指令系统、寻址技术、数据类型、I/O机理)——概念性的结构与功能特性 有无乘法指令
- 计算机组成:实现计算机体系结构所体现的属性(具体指令的实现)如何实现乘法指令
计算机体系结构关注计算机如何工作,包括处理器、存储器、输入/输出等组件之间的交互方式和连接方式。计算机组成则关注这些组件的具体实现细节,如处理器内部的寄存器、运算单元等。
二、计算机基本组成
1. 冯·诺依曼计算机特点:
- 计算机五大部分组成:运算器、控制器、存储器、输入输出设备
- 指令和数据以同等地位存于存储器,按地址寻访
- 指令和数据用二进制表示
- 指令由操作码和地址码组成
- 指令存放在存储器中
- 以运算器为中心
- 运算器用来完成算术运算和逻辑运算,并将运算的中间结果暂存在运算器内。
- 存储器用来存放数据和程序。
- 控制器用来控制、指挥程序和数据的输入、运行以及处理运算结果。
- 输人设备用来将人们熟悉的信息形式转换为机器能识别的信息形式。
- 输出设备可将机器运算结果转换为人们熟悉的信息形式。
2. 计算机硬件框图 - 冯诺依曼改进
3. 再改进
算术逻辑单元(Arithmetic Logic Unit,ALU)
控制单元(Control Unit,CU)
4. 系统复杂性管理方法 - 第二种方法(3‘Y)
- 层次化(Hierarchy):将被设计的系统划分为多个模块或子模块
- 模块化(Modularity):有明确定义的功能和接口
- 规则性(Regularity):满足工业或国际标准 - 模块更容易被重用
5. 计算机工作步骤
上机前准备
- 建立数学模型
- 确定计算方法
- 编制解题程序
计算机解题过程
取数指令过程: 要执行的指令地址存放在PC中,指令存放在存储体中
【1~4】取指令、【5】分析指令、【6~9】执行指令
- PC把指令的地址送给MAR
- 由MAR将地址送给存储体
- 在控制器的控制下,存储体把指定存储单元当中保存的指令取出,送到MDR
- 由MDR将指令送到IR
- IR中指令的操作码部分送给CU,CU分析指令
- 在控制器的控制下,IR中指令的操作数地址码部分送给MAR
- 由MAR将地址送给存储体
- 将操作数从存储体送到MDR
- 由MDR送到ACC
存数指令过程:
- PC把指令的地址送给MAR
- 由MAR将地址送给存储体
- 在控制器的控制下,存储体把指定存储单元当中保存的指令取出,送到MDR
- 由MDR将指令送到IR
- IR中指令的操作码OP(IR)部分送给CU,CU分析指令
- 在控制器的控制下,IR中指令的操作数地址码Ad(IR)部分送给MAR
- 由MAR将地址送给存储体
- 由ACC送到MDR
- 将操作数从MDR送到存储体
- 存储器的基本组成
**存储体 存储单元 (地址) 存储元件**(0/1) 大楼 房间(房间编号) 床位(无/有人) 一个存储单元存放一串二进制代码,这串二进制代码就是一个存储字,这串二进制代码的位数就是存储字长,每个存储单元都有一个地址,按地址寻访
MAR、MDR
MAR(Memory Address Register):存储器地址寄存器 , 存储了存储单元的地址,反映存储单元的个数
MDR(Memory Data Register):存储器地址寄存器 ,存储了要保存到存储体的数据或者是刚从存储体取出的数据,反应存储字长
- 运算器的基本组成
算术逻辑单元(ALU)、ACC(Accumulator)为累加器、MQ(Multiplier-Quotient Register)为乘商寄存器、X为操作数寄存器。
ACC MQ X 加法 被加数
和加数 减法 被减数
差减数 乘法 乘积高位 乘数
乘积低位被乘数 除法 被除数
余数商 除数
- 控制器的基本组成
- PC 存放当前欲执行指令的地址,具有计数功能(PC)+1 ——> PC
- IR 存放当前欲执行的指令
三、 计算机硬件主要技术指标
1. 机器字长:
CPU一次能处理数据的位数、与CPU中寄存器位数有关 —— 字长越长、数的表示范围越大,精度越高
2. 运算速度:
主频:
核数、每个核支持的线程数
吉普森法:TM为机器运行速度; fi为第i种指令占全部操作的百分比数; ti为第i种指令的执行时间
CPI(Cycle Per Instruction) 执行一条指令所需时钟周期(机器主频倒数)数
IPC 一个时钟周期可以完成多少指令
MIPS(Million Instruction Per Second) 每秒执行百万条指令
FLOPS(Floating Point Operation Per Second) 每秒浮点运算次数
3. 存储容量:存放二进制信息的总位数
主存容量
存储单元个数 x 存储字长
MAR = 10, MDR=8 容量= 210 x 8位 = 1K x 8位
MAR = 16, MDR=32 容量= 216 x 32位 = 64K x 32位
字节数 (1B = 8b=23b) (1KB = 210B)
1KB = 213b
256KB = 221b
辅存容量 - 字节数
参考:
教材:计算机组成原理 (唐朔飞).pdf
视频:https://www.bilibili.com/video/BV1t4411e7LH?p=1&vd_source=a89593e8d33b31a56b894ca9cad33d33