计算机系统概论ppt课件
每个存储单元赋予一个地址号
按地址寻访
.
31
(2)存储器的基本组成
存储体
MAR MDR
主存储器
MAR
存储器地址寄存器:存放欲访问的 存储单元的地址,其位数反映存储 单元的个数
MDR
存储器数据寄存器:用来存放从 存储体某单元取出的代码或者准 备存入某存储单元的代码,其位 数与存储字长相等。
设 MAR = 4 位
例2 用数字代码表示字符
A 表示为01000001 B 表示为01000010
例3 用数字代码表示命令,状态
启动
表示为00
停止
表示为01
正在工作
表示为10
工作结束
表示为11
.
13
2 在物理机制上用数字信号表示数字代码
数字
型电
信号
例1 用电平信号表示数字代码 高电平 低电平
例2 用脉冲信号表示数字代码 有脉冲 无脉冲
语言处理程序
软
操作系统 服务性程序
件
数据库管理系统
网络软件
应用软件
用户按任务需要编制成的各种
程序(科学计算程序,数据处理程序,
过程控制程序,事务管理程序等)
.
8
例:下面不属于系统程序的是?
A. 数据库系统
✔
B. 操作系统
C. 编译程序
D. 汇编程序
例:下面属于应用软件的是?
A. 操作系统
B. 编译程序
• 分析指令 OP(IR) CU
• 执行指令 Ad(IR) MAR M MDR ACC
…
• 打印结果
• 停机
.
38
1.3 计算机硬件的主要技术指标
1.机器字长 CPU 一次能处理数据的位数
与 CPU 中的 寄存器位数 有关
2.运算速度
主频
n
吉普森法 TM = i =1 fi ti MIPS 每秒执行百万条指令
主存储器 8
I/O
36
以加法ADD M(M为主存地址)为例,写出完成该指 令的信息流程(从取指令开始)
分析:在运算器中ACC存放被加数,X存放加数,求和 结果放在ACC中,ADD M 是指将地址为M的存储单元 中的加数取出并送至运算器中,然后和存放在运算器 中被加数通过ALU相加,结果仍放在运算器中。
.
5
本章的重点:计算机的工作过程
本章的难点:理解计算机如何区分同样以 0,1代码的形式存储在存储器中的指令和数 据。
.
6
1.1 计算机系统简介
一、 计算机软件、硬件的概念
1. 计算机系统
计 算
硬件
机
系 统 软件
计算机的实体 如主机、外设等
由具有各类特殊功能 的信息(程序)组成
.
7
系统软件 用来管理整个计算机系统
CU
一条 分析指令 IR 指令 执行指令 CU
取指 访存 执行 访存
IR PC
PC 存放当前欲执行指令的地址 具有计数功能(PC)+ 1 PC
IR 存放当前欲执行的指令
.
34
(4)主机完成一条指令的过程
以取数指令为例 取指令地址码指示的存储单元中的操 作数X到ACC中
U
ACC MQ ALU
…5
ACC MQ ALU
X
运算器
指令
减
初态 ACC [M]
[ACC]-[X]
M 被减数 X ACC
.
28
③ 乘法操作过程
AC0 C MQ
AALUU
X
运算器
指令
乘
M
初态 ACC [M]
[ACC]
0
[X]×[MQ]
.
被乘数 MQ X
ACC
ACC∥MQ
乘积的高位 积的低位
29
④ 除法操作过程
ACC MQ ALU
计算机组成原理
Computer Organization
.
1
为什么要学习计算机组成原理?
✓ 一门专业基础课程 ✓ 计算机专业(硬件OR软件方向)终生要
与计算机系统打交道 ✓ 后续多门课程的基础(系统结构,操作系
统,编译原理,高级语言程序设计,计算 机网络,数据库)
.
2
本课程的任务
讨论单机系统范围内计算各部件和系统 的组成以及内部工作机制。
+
x9 9!
-
…
√x =
1 2
(
yn +
x yn
)
(
n
=
0,
1,
2,
…)
• 编制解题程序
程序 — 运算的 全部步骤
指令 — 每 一个步骤
.
19
编程举例
计算 ax2 + bx + c = (ax + b)x + c
取x 至运算器中 乘以x 在运算器中
乘以a 在运算器中
存ax2 在存储器中
取b 至运算器中
1
0
1
.
14
1.2 计算机的基本组成
一、冯·诺依曼计算机的特点
1. 计算机由五大部件组成
2. 指令和数据以同等地位存于存储器 可按地址寻访
3. 指令和数据用二进制表示
4. 指令由操作码和地址码组成
5. 指令在存储器内按顺序存放。
6. 机器以运算器为中心,I/O设备与存储器
间的数据传送通过运. 算器完成
程序
存储器
计算 输出设备
结果
运算器
.
17
二.现代计算机硬件框图
运算器 ALU
CPU
控制器 CU
主机
存储器
主存 辅存
输入设备
I/O
输出设备
主机
CPU
主
ALU
存
CU
.
硬件
I/O
18
三、计算机的工作步骤
1.上机前的准备
• 建立数学模型
• 确定计算方法
sin x = x -
x3 3!
+
x5 5!
-
x7 7!
取x 至运算器中
乘以a 在运算器中 加b 在运算器中
乘以x 在运算器中
加c 在运算器中
乘以x 在运算器中
加ax2 在运算器中
加c 在运算器中 .
20
指令格式举例
操作码 地址码
地址码表示参加运算的 数在存储器内的位置
取数 000001 存数 加 乘 打印 停机
α 0000001000 β γ δ
[α]
[ACC] [ACC]+[γ] [ACC]×[δ]
[ ]
.
ACC
β ACC ACC 打印机
21
计算 ax2 + bx + c 程序清单
指令和数据存于 主存单元的地址
0 1 2 3 4 5 6 7 8 9 10 11 12
指令 操作码 地址码 000001 0000001000 000100 0000001001 000011 0000001010 000100 0000001000 000011 0000001011 000010 0000001100 000101 0000001100 000110
通常完成一条指令可分为取指阶段和执行阶段。在取 指阶段通过访问存储器可将指令取出;在执行阶段通过访 问存储器可将操作数取出。这样,虽然指令和数据都是以 0,1代码形式存在存储器中,但CPU可以判断出在取指阶段 访问存储器取出的0,1代码是指令;在执行杰顿防存取出 的0,1代码是数据。可见,CPU就是根据取指阶段和执行阶 段的防存性质不同来区分指令和数据的。
通常用字节数表示辅存容量
.
40
练习
1. 存放预执行指令的寄存器是?
IR 2. 在CPU中跟踪指令后继地址的寄存器是?
PC 3. 一般8为的微型机系统以16位来表示地址,则该计算机系
统有多少个地址空间?
65536
4. 一片1MB的磁盘能存储多少数据?
220字节
.
41
问题??
指令和数据都存于存储器中,计算机如何区 分它们?
解:取指令 PC
MAR
M
MDR
IR
分析指令 OP(IR) CU
执行指令 Ad(IR)
MAR
M
MDR X
ACC ALU ,同时 X
ALU
ALU
ACC
.
37
(5) ax2 + bx + c 程序的运行过程
• 将程序通过输入设备送至计算机
• 程序首地址
PC
• 启动程序运行
• 取指令 PC MAR M MDR IR ,(PC )+ 1 PC
.
42
2. 执行最快的语言?
机器语言
3. 计算机中负责指令译码的是?
控制单元
4. 计算机存储数据的基本单位?
比特(bit)
5. 32位的个人计算机,一个字节有几位组成?
.
23
8
.
24
.
25
2.计算机的解题过程
(1)运算器的基本组成及操作过程
ACC MQ ALU
X
运算器
寄存器 ACC
MQ
加法 被加数 和
高级语言:C,FORTRAN,BASIC,PASCAL等,机器也不直接识别高级语 言,必须先将高级语言翻译成汇编语言,然后再将其翻 译成机器语言程序
.
11
信息的数字化表示 1 在计算机中用数字代码表示各种信息
二进制 代码
例1 用数字代码表示数据 6 表示为 0 110
-7 表示为 1 111