文章目录
课程笔记导览
计算机组成原理学习笔记(1):概述
计算机组成原理学习笔记(2):发展
计算机组成原理学习笔记(3):总线
计算机组成原理学习笔记(4):存储器
计算机组成原理学习笔记(5):I/O
计算机组成原理学习笔记(6):数字
计算机组成原理学习笔记(7):指令系统
计算机组成原理学习笔记(8):CPU的结构和功能
计算机组成原理学习笔记(9):控制单元的功能
计算机组成原理学习笔记(10):控制单元的设计
附录:英语解释
CPU——Central Processing Unit,中央处理机(器)
PC——Program Counter,程序计数器,存放当前欲执行指令的地址,并可自动计数形成下一条指令地址的计数器
IR——Instruction Register,指令寄存器,存放当前正在执行的指令的寄存器
CU——Control Unit,控制单元(部件),控制器中产生微操作命令序列的部件,为控制器的核心部件
ALU——Arithmetic Logic Unit,算术逻辑运算单元,运算器中完成算术逻辑运算的逻辑部件
ACC——Accumulator,累加器,运算器中运算前存放操作数、运算后存放运算结果的寄存器
MQ——Multiplier-Quotient Register,乘商寄存器,乘法运算时存放乘数、除法时存放商的寄存器
X——此字母没有专指的缩写含义,可以用作任一部件名,在此表示操作数寄存器,即运算器中工作寄存器之一,用来存放操作数
MAR——Memory Address Register,存储器地址寄存器,内存中用来存放欲访问存储单元地址的寄存器
MDR——Memory Data Register,存储器数据缓冲寄存器,主存中用来存放从某单元读出、或写入某存储单元数据的寄存器
I/O——Input/Output equipment,输入/输出设备,为输入设备和输出设备的总称,用于计算机内部和外界信息的转换与传送
MIPS——Million Instruction Per Second,每秒执行百万条指令数,为计算机运算速度指标的一种计量单位
第六章 数字
6.1 无符号数和有符号数
6.1.1无符号数
寄存器的位数反应无符号数的表示范围
![]()
6.1.2 有符号数
包含数值部分和符号部分
机器数与真值
原码表示法
简单直观,但是使用原码计算的时候会出现一些问题(加法减法有两种运算,可否归一化)
整数定义
小数定义
补码表示法
补的概念
一个负数加上“模”即得该负数的补数
一个正数和一个负数互为补数时它们绝对值之和即为模数
同时补码还有一个好处正0和负0的补码一样都是0
![]()
定义
整数
小数
求补码的快捷方式
![]()
![]()
补码最大的好处就是把减法变成加法
反码表示法
定义
整数
小数
三种机器数的小结
![]()
![]()
移码表示法
定义
只有整数的定义没有小数定义
通常用来比较浮点型数据表示下的阶码
6.2 数的定点表示和浮点表示(上)
![]()
![]()
![]()
6.2 数的定点表示和浮点表示
6.2.1 定点表示
定义:小数点按照约定方式标出(硬件和软件都已固定)
两种表示方式:![]()
表示范围:![]()
6.2.2 浮点表示
引入浮点表示的原因
编程困难,程序员要调节小数点的位置;
不够灵活,数的表示范围小,为了能表示两个大小相差很大的数据,需要很长的机器字长;
数据存储单元的利用率往往很低,有大量的无用数据。
浮点数的表示形式
浮点数的表示范围
浮点数的规格化形式
目的:尽可能地保证数据精度
![]()
浮点数的规格化
![]()
![]()
6.2.3 举例
![]()
![]()
6.2.4 IEEE754标准
![]()
6.3 定点运算
6.3.1 移位运算
移位的意义
均表示相对于小数点移动,小数点是不动的
左移绝对值扩大
右移绝对值缩小
移位操作和加减操作结合实现乘除操作
算术移位规则
算数移位的硬件实现
算术移位和逻辑移位的区别
![]()
6.3.2 加减法运算
计算公式
溢出判断
补码加减法的硬件配置
![]()
6.3.3 乘法运算
实现方式
![]()
![]()
硬件配置
![]()
6.3.4 除法运算
恢复余数法
![]()
![]()
不恢复余数法(加减交替法)
![]()
![]()
![]()
![]()
6.4 浮点四则运算
浮点加减运算![]()
对阶
求阶差后对齐
对阶原则:小阶向大阶看齐
规格化(位数运算后进行规格化)
规格化的意义:
为了尽可能的提高浮点数表示精度使得计算机资源尽可能有效地利用起来
规格化数的定义:
规格化数的判断:
- 原码:不论正数、负数,第一数位为1
- 补码:符号位和第一数位不同
特例:
左规:
尾数左移一位,阶码减1,直到数符和第一数位不同为止
右规:
溢出是因为大小限制出现了进位
舍入
在对阶和右规过程中,可能出现尾数末位右移,引起误差,需考虑舍入
方法一:截断法
方法二:0舍1入法
方法三:恒置1法
![]()
溢出判断
![]()
6.5 算术逻辑单元
6.5.1 ALU电路
![]()
6.5.2 快速进位链
并行加法器
![]()
串行进位链
![]()
并行进位链
![]()
单重分组跳跃进位链
![]()
双重分组跳跃进位链
![]()
![]()
![]()
评论记录:
回复评论: