计算机组成原理 第 1 章

计算机组成原理

基础的,重要的

计算机课程中唯一一门讲授计算机硬件的逻辑实现的课程

  • 讲授内容
    • 基本不见的结构和组织方式
    • 基本运算的操作原理
    • 基本部件和单元的设计思想
  • 特色
    • 计算机组成的一般原理,不以具体机型为依托
    • 采用自顶向下的方式、层层细化

本课程在课程体系中的地位

计算机系统结构:

​ 1、分析+评测–知其所以然

​ 2、并行计算机系统结构入门

计算机组成原理

  • 如何实现
  • 具体实现
  • 一一知其然

课程内容的组织

第 1 篇 概论

第 2 篇 计算机系统的硬件结构

第 3 篇 CPU

第 4 篇 CU

在这里插入图片描述

第 1 章 计算机系统概论

1.1计算机系统简介

计算机的系统:
  • 硬件

  • 软件:

    • 系统软件
    • 应用程序
计算机系统的层次结构

软件

  • 虚拟机器M4----用汇编程序翻译成汇编语言程序
  • 虚拟机器M3----用汇编程序翻译成机器语言程序
  • 虚拟机器M2----用机器语言解释操作系统

硬件

  • 实际机器M1----用伪指令解释机器指令
  • 微程序机器M0----有硬件直接执行微指令
计算机体系结构

​ 程序员缩减到的计算机系统的属性,概念性的结构与功能特性

​ (指令系统.数据类型,寻址技术.I/O机理)

计算机组成

​ 实现计算机体系结构所体现的属性

​ (具体指令的实现)

1.2 计算机的基本组成

一丶冯诺依曼计算机的特点

1–计算机有五大部分组成

2–指令和数据以同等地位存于存储器,可按地址寻访

3–指令和地址用二进制表示

4–指令由操作码和地址码组成

5–存储程序

(具有存储程序的这些特称的机器都被称为冯诺依曼机)

6–以运算器为中心

(数据的输出和存储都需经过运算器,进行算数运算和逻辑运算)

冯诺依曼机的硬件框图

在这里插入图片描述

  • 存储器
  • 运算器
  • 控制器
  • 输入设备
  • 输出设备
二丶计算机硬件框图
1–以存储器为中心的计算机的硬件框图

在这里插入图片描述

2–现代计算机的硬件框图

在这里插入图片描述
在这里插入图片描述

系统复杂性管理的方法(3Y)
  • 层次化(Hierarchy) : 将被设计的系统划分为多个模块或子模块
  • 模块化(Modularity) : 有明确定义的功能和接口
  • 规则性(regularity) : 模块更容易被重用
三丶计算机的工作步骤
1–上机前的准备
  • 建立数学模型
  • 确定计算方法
  • 编制解题程序

计算ax^2+b x+c 程序清单
在这里插入图片描述

2–计算机的解题过程
(1)存储器的基本组成

主存储器{

存储体;

MAR; 存储器地址寄存器,反应存储单元的个数(单元个数为2^n,例如 n=4, 可以从 0000 --> 1111 )

MDR; 存储器数据寄存器,反应存储字长

}

例如 MAR=4位,MDR=8位

​ 则:存储单元 2^4=16

​ 存储字长8

存储体----存储单元----存储元件(0/1)

大楼 ----房间 ----床位(有人/无人

存储单元 存放遗传二进制代码

存储子 存储单元中二进制代码的组合

存储字长 存储单元中二进制代码的位数,每个存储单元赋予一个地址

按地址寻访

运算器的结构,功能,工作原理

(2)运算器的基本组成及操作过程

在这里插入图片描述

ACC MQ X
加法 被加数/和 加数
减法 被减数/差 减数
乘法 乘积高位 乘数/乘积低位 被乘数
除法 被除数/余数 被减数

乘除法,改变位数

乘除法,可以根据加减法,类似

MQ乘数存储器,乘和商的缩写

指令 M M M M
初态 ACC 被加数 ACC 被减数 ACC 被减数 ACC 被减数
[M]–>X [M] - - >X [M] - - > MQ [M] - - > X
[ACC]+[X]->ACC [ACC] - [X] - - >ACC [ACC]–>X [ACC] ÷ [X] - - >MQ
0–>ACC 余数保存在ACC中
[X] X [MQ] -->ACC//MQ
[ACC] - [X] - - >ACC

​ 乘法中 : 只有ACC中传给X后,才能清0

(3)控制器的基本组成

控制器的基本结构

控制器的功能

  • 解释指令
  • 保证指令的按序执行

完成一条指令{

​ 取指令 PC

​ 分析指令 IR

​ 执行指令 CU

}

PC存放到当前与执行指令的地址

​ 具有计数功能 (PC) + 1 --> PC

IR存放当前欲执行的指令

(4)主机完成一条指令的过程 , 以取数指令为例

在这里插入图片描述

取指令:PC–>MAR–>存储体–>MDR–>IR

分析指令:IR–>CU控制单元

执行指令:CU–>执行部件

取数指令的功能:

​ 把保存在内存单元M中的数据取到ACC中

IR–>MAR–>存储体–>MDR–>ACC

以存数指令为例

取指令:PC–>MAR–>存储体–>MDR–>IR

分析指令:IR–>MAR–>存储体;ACC–MDR;MDR–>存储体

执行指令:CU–>执行部件

(5)ax^2+b x+c程序的运行过程
  • 将程序通过输入设备送至计算机
  • 成俗首地址–>PC
  • 启动程序运行
  • 取指令:PC–>MAR–>M–>MDR–>IR , (PC) + 1 -->PC
  • 分析指令OP(IR)–>CU
  • 执行指令Ad(IR)–>MAR–>M–>MDR–>ACC
  • 打印结果
  • 停机

1.3 计算机硬件的主要技术指标

1、机器字长

​ CPU一次能处理数据的位数
​ 与CPU中的寄存器位数有关
一般来说,机器的字长越长,机器的性能越好

2、运行速度{

​ 主频
​ 核数,每个核数支持的线程数
​ 吉普森法
​ CPI 执行一条指令所需的时钟周期
​ (IPC 一个时钟周期能完成的多少指令)
​ MIPS 每秒执行百万条指令
​ FLOPS 每秒浮点运算次数
}

3、存储容量

存放二进制信息的总位数
{
主存量{
存储单元个数 X 存储字长
MAR X MDR

​ 字节数

​ }
​ 辅存容量

1、机器字长

​ CPU一次能处理数据的位数
​ 与CPU中的寄存器位数有关
一般来说,机器的字长越长,机器的性能越好

2、运行速度{

​ 主频
​ 核数,每个核数支持的线程数
​ 吉普森法
​ CPI 执行一条指令所需的时钟周期
​ (IPC 一个时钟周期能完成的多少指令)
​ MIPS 每秒执行百万条指令
​ FLOPS 每秒浮点运算次数
}

3、存储容量

存放二进制信息的总位数
{
主存量{
存储单元个数 X 存储字长
MAR X MDR

​ 字节数

​ }
​ 辅存容量

}

猜你喜欢

转载自blog.csdn.net/lmhnba/article/details/108538124