第一章 绪论
计算机的性能指标
- 吞吐量
- 相应时间
- 利用率
- 处理机字长
- 总线宽度
- 存储器容量
- 存储器带宽
- 主频
第二章 计算机中数据信息表示法
数值转换
数的编码表示
- 原码:符号位数值化,数值位不变
(1) 零的原码表示不唯一(有+0和-0)
(2) 原码的表示范围:
1) 整数范围:-127<=x<=127
2) 小数范围:-(1-2-7 )<= x <=1-2-7
- 补码:
(1) 正数:原反补表示相同
(2) 负数:对原码,符号位不变,其余各位取反,末位加1
零的补码表示唯一(0000000)。
(3) 表示范围:
1)-127 <=x<=127(整数范围)
2)-1<x<1-2-7 (小数范围)
(4)[X]补= 模+X (X<0)
- 反码:
(1) 正数:原码反码补码表示都相同
(2) 负数:对原码,符号位保持不变,其余各位取反
(3) 零的反码表示不唯一
- 移码
(1)x>0, 符号为1; x<0, 符号为0。
(2)移码表示与补码表示一一对应
(3)移码只用于表示浮点数的阶码,所以只用于整数。
PS:正数的原码、反码、补码表示都相同
负数的原码、反码、补码表示不同
数的小数点表示
- 定点表示
(1) 定点小数:小数点位置隐含的固定
(2)
(3)
- 浮点表示
(1) 基本格式:
(2) 浮点数的规格化:
通过左移尾数同时修改阶码使其变成规格化的浮点数
(3) 原码表示:尾数最高位为1,即 尾数.尾数值 = 0.1 或1.1
(4) 补码表示:
1) 正数:尾数最高位为1 即尾数.尾数值 =0.1
2) 负数,尾数的最高位0 即尾数.尾数值 = 1.0
(5)表示范围:
- IEEE754浮点数表示
(1)格式:1位符号位 +8位移阶码 +23位尾数(隐藏位1)
第三章 运算方法和运算器
移位运算:
逻辑移位:
寄存器中整组数据进行移位,空位补0,只有数字位置的变换,无数量的变化
算数移位:
寄存器中带符号数的移位,移位时,符号位保持不变,仅数量变化
算数移位规则
正数:左移、右移都补零
负数:
- 原码:移位补零
- 反码:移位补1
- 补码:左移补零,右移补1
- 恒舍:多余的部分全部舍去
- 冯诺依曼射入法:末位恒置1
- 0舍1入
- ROM舍入法:查表法
- 同号:仅数值部分相加,结果的符号去被加数或者加数的符号
- 异号:数值部分相减,结果的符号去绝对值大的数的符号
舍入操作
原码的加减法
补码的加减法
运算规则
1.[X+Y]补= [X]补+[Y]补
2.[X-Y]补= [X]补+[-Y]补 (mod 4,二位符号位)
3.符号位一起参加运算,将符号位向前的进位丢掉即可
溢出判断
- 正溢:01
- 负溢 :10
- 部分积初始化
- 部分积+乘数B的最后一位*被乘数C
- 部分积向右移一位
- 重复2 3 直到结束
- 结果的符号是乘数与被乘数的符号异或
定点乘法
原码乘法:
原码的一位乘
补码乘法
被乘数x, [x]补=xs.x1…xn
乘数y, [y]补=ys.y1…yn=y0.y1…yn
⑴ x任意,y>0时,---同原码乘法
[x.y]补 =[x]补.[y]补
⑵ x任意,y<0时,---校正法
[x.y]补 =[x]补.(0.y1…yn )+[-x]补
⑶ x,y都任意---比较法(Booth算法)
定点除法
原码除法
恢复余数法
规则:左移时符号位包括在内
- 将被除数-除数
- 结果大于0,商1,余数左移一位
- 结果小于0 ,商0,恢复余数,余数左移一位
- 重复1,2,3 直至商的精度满足要求
Ps:结果要加精度 左移几次就加2的负几次方
加减交替法
规则:(加减交替左移不移动符号位)
- 被除数-除数,得余数:
- 余数为正数,上商1,余数左移一位,减除数
- 余数为负数,上商0,余数左移一位,加除数
- 重复上述操作 直至商的精度满足要求
- 最后一次余数为负数时,要恢复余数,直至余数为正
规格化浮点补码加减法
- 对阶 –小阶向大阶看齐(尾数右移 )
- 尾数求和
- 规格化:补码正数满足00.1 补码负数满足11.0
- 舍入
- 溢出处理(阶码溢出即溢出)
- 乘法:尾数相乘,阶码相加
- 除法:尾数相除,阶码相减
规格化浮点补码乘数运算
步骤:
- 阶码运算:阶码求和(乘法)阶码求差(除法)
- 浮点除的尾数处理:浮点数中尾数惩处法运算结果,要进行舍入处理
逻辑运算
- 逻辑非:按位取反
- 逻辑加:逻辑或,按位求或
- 逻辑乘:逻辑与,按位求与
- 逻辑异:按位进行异或
- 逻辑运算都是按位进行的,无进位和借位关系
加减法运算器
全加器---基本的算逻运算部件
输入端3个:
Ai,Bi —本位操作数
Ci-1 — 低位来的进位
输出端两个:
Si ——本位和
Ci ——本位向高位的进位
并行加减法 运算器
串行加法器中,进位串行,在并行加法器中,进位仍然串行
并行加法器的进位链
第四章 指令系统
概述
- 指令:引起计算机执行某种操作的最小的功能单位
- 指令系统 一台计算机中所有机器指令的集合
- 指令格式:操作码+操作数地址码
- 操作码:指明本条指令的操作功能
- 操作数地址码:指出该条指令设计的操作数的地址
- 指令字长:一个指令字中包含的二进制的尾数
- 机器字长:指计算机能直接处理的二进制数据的位数,它决定了计算机的运算精度
- 算逻运算类
- 数据传送类
- 指令控制类
- I/O类
- 其他
指令系统的分类
指令格式
- 不同计算机,其操作码的编码和位数不同
定长操作码
每条指令的操作码长度都相同
优点:简化了计算机的硬件设计提高了指令译码和识别速度。
变长操作码
指令操作码的长度不尽相同
优点:在比较短的指令字中,既能表示处比较多的指令条数,又能尽量满足操作数地址的要求。
缺点:增加了硬件设计的复杂性
适用于字长较短的计算机系统
操作码与操作数地址有所交叉
优点 在短的指令字中,既能表示处比较多的指令条数,又能尽量满足操作数地址的要求
缺点 硬件设计复杂
地址码的设计安排
计算机操作数的来源、去处
来源:
- CPU内部的通用寄存器(最快)
- 内存的一个单元
- 外设接口中的寄存器
- 立即数
去处:
- CPU内部的通用寄存器
- 内存的一个单元
- 外设接口中的寄存器