体系结构复习笔记 第二弹
# 数据表示
# 浮点数的表示
计算机中的浮点数可以表示编码形式为 的有理数。 是隐含的底,一般情况下 . 都是有符号定点数,其中 称为阶码, 称为尾数。下图展示了一种阶码和尾数的具体存储形式。
浮点数的存储要求:
- 非负阶
- 规格化
- 正尾数
需要注意,浮点数的存储形式不是唯一的。尾数和阶码可以采用原码、移码或补码表示。在不同的情况下,浮点数的表示范围不同。
# 尾数下溢处理方法
常见尾数下溢处理方法如下:
- 截断法:将尾数超出机器字长的部分截去。优点是实现简单,不增加硬件,不需要处理时间;缺点是平均误差较大且无法调节。
- 舍入法:在机器运算的规定字长之外增设一位附加位,存放溢出部分的最高位,每当进行尾数下溢处理时,将附加位加一。优点是实现简单,增加硬件很少,最大误差小,平均误差接近于零;缺点是处理速度慢,需要花费在附加位上加一以及因此产生的进位时间
- 恒置 法:把有效字长的最低一位置成 . 优点是实现简单,不需要增加硬件和处理时间,平均误差接近 ; 缺点是最大误差较大。
- 查表舍入法:用 ROM 或者 PLA 存放下溢处理表。优点是速度快,平均误差可以调节到 ; 缺点是硬件量大。
# 寻址技术
# 编址方式
# 大小端问题
大端:高字节保存在低地址中
小端:高字节包括在高地址中
- x86 是小端模式
# 并行存储器的编址技术
- 高位交叉编址:主要用来提高存储器容量
- 低位交叉编址:主要用来提高存储器速度
# 寻址方式
- 立即数寻址
- 面向寄存器寻址
- 面向主存寻址
- 面向堆栈寻址
# 指令系统的优化设计
# 操作码优化表示
# Huffman 编码
采用 Huffman 压缩可以显著降低操作码平均长度。
操作码的最短平均长度为其熵
位定长操作码的信息冗余量为
# 扩展编码法
主要考虑编码的可行性。