1 计算机系统
计算机系统包括硬件和软件两部分:
- 硬件:计算机的实体,如主机、外设等
- 软件:由具有各类特殊功能的信息(程序)组成
软件又分为系统软件和应用软件两部分:
- 系统软件:用来管理整个计算机系统,例如:语言处理程序、操作系统、服务性程序、数据库管理系统、网络软件等
- 应用软件:按任务需要编制成的各种程序
2 简单的层次结构
以软件和硬件进行划分之后,再深入谈谈每一层的具体实现
计算机组成和计算机体系结构从研究内容上来说,区别如下:
定义(内容) | 包括 | |
---|---|---|
计算机体系结构 | 程序员所见到的计算机系统的属性概念性的结构与功能特性 | 指令系统、数据类型、寻址技术、I/O 机理 |
计算机组成 | 实现计算机体系结构所体现的属性 | 具体指令的实现 |
- 计算机由五大部件组成:运算器、控制器、存储器、输入设备和输出设备
- 指令和数据以同等地位存于存储器,可按地址寻访
- 指令和数据用二进制表示
- 指令由操作码和地址码组成
- 存储程序(最重要)
- 以运算器为中心
冯 · 诺依曼计算机硬件框图
冯 · 诺依曼计算机以运算器为中心。
五部件的作用如下:
- 存储器:存放数据和程序
- 运算器:算术运算和逻辑运算
- 控制器:指挥程序运行
- 输入设备:将信息转换成机器能识别的形式
- 输出设备:将结果转换成人们熟悉的形式
1 以存储器为中心的计算机硬件框图
注:以存储器为中心,要考虑如何提高性能!
2 现代计算机硬件框图
说明:
- ALU:算逻运算单元(能够完成算术运算和逻辑运算)
- CU:控制单元
- CPU = 运算器 + 控制器
- 主机 = 运算器 + 控制器 + 主存
- I/O 设备 = 输入设备 + 输出设备 + 辅存
- 硬件 = 主机 + I/O 设备
1 上机前的准备
-
(1)建立数学模型(根据任务的要求建立数学模型)
-
(2)确定计算方法
-
sinx = x - x^3/3! + x^5/5! - ...
-
-
编制解题程序
- 程序 —— 运算的全部步骤
- 指令 —— 每一个步骤
编程举例:
计算 a x ^ 2 + b x + c
- 取 x 至运算器中
- 乘以 x 在运算器中
- 乘以 a 在运算器中
- 存 a x ^ 2 在存储器中
- 取 b 至运算器中
- 乘以 x 在运算器中
- 加上 a x ^ 2 在运算器中
- 加上 c 在运算器中
需要 8 条指令
那么换种方式计算 a x ^ 2 + b x + c = (a x + b) x + c
- 取 x 至运算器中
- 乘以 a 在运算器中
- 加 b 在运算器中
- 乘以 x 在运算器中
- 加 c 在运算器中
则需要 5 条指令,节省了时间
将动作变成指令:
指令格式举例:
说明:
ACC(Accumulator):累加器,累加器是寄存器之一。是一个比较特殊的寄存器。
2 计算机的解题过程
(1)存储器的基本组成
存储体 —— 存储单元 —— 存储元件(0/1)
eg.(类比)大楼 —— 房间 —— 床位(无人/有人)
存储单元:存放一串二进制代码
存储字:存储单元中二进制代码的组合
存储字长:存储单元中二进制代码的位数,每个存储单元赋予一个地址号
按地址寻址
MAR:存储器地址寄存器,反映存储单元的个数
MDR:存储器数据寄存器反映存储字长
设 MAR = 4 位,MDR = 8 位,则存储单元个数为 16 个,存储字长为 8
(2)运算器的基本组成及操作过程
① 加法操作过程
② 减法操作过程
③ 乘法操作过程
④ 除法操作过程
(3)控制器的基本组成
完成一条指令(或者说:解释一条指令)步骤:
- 取指令 PC
- 分析指令 IR
- 执行指令 CU
说明:
- PC:程序寄存器的缩写,存放当前欲执行指令的地址,具有计数功能(PC)+ 1 --> PC
- IR:指令寄存器的缩写,存放当前欲执行的指令
- CU:控制单元
(4)主机完成一条指令的过程
- 以取数指令为例
- 以存数指令为例
(5)a x ^ 2 + b x + c 程序的运行过程
- 将程序通过输入设备送至计算机
- 程序首地址 --> PC
- 启动程序运行
- 取指令 PC --> MAR --> M --> MDR --> IR, (PC) + 1 --> PC
- 分析指令 OP(IR) --> CU
- 执行指令 Ad(IR --> MAR --> M --> MDR --> ACC)
- ...
- 打印结果
- 停机
例题 1.1
例题 1.2
例题 1.3