Skip to the content.
计组知识
概论
分类
- 体系结构:单指令单数据流、单指令多数据流、多指令单数据流(少)、多指令多数据流
- 用途:通用计算机、专用计算机
- 使用方式:桌上型计算机、服务器型计算机、嵌入式计算机
- 规模:巨型、大/中型、小型、微型
计算机系统的基本组成
冯诺依曼计算机设计基本思想
- 内部以二进制数表示指令和数据;指令由操作码和地址码组成。
- 采用“存储程序”和“程序控制”的概念。
- 指令的执行是顺序的,分支由转移指令实现。
- 计算机硬件系统由运算器、控制器、存储器、输入设备和输出设备五个基本部件组成。
- 以运算器为中心,输入输出设备与储存器之间的数据传送通过运算器完成。
计算机系统的层次结构
- 微程序设计级:微程序设计方式、硬布线设计方式。
- 机器指令系统级:计算机软硬件的分界。
- 操作系统级/虚拟机。
- 语言处理程序及其他系统软件。
- 应用程序级。
信息编码与数据表示
不同数制之间的转换
- 十进制转二进制:整数除(以)2取余,小数乘2取整
- 二进制转十进制:略
定点机器数
- 原码:-2^n+1 ~ 2^n-1,最高位为符号位,其它位数为值的绝对值
- 反码:正数的反码等于原码,负数的反码等于最高位为1不变,其余位按位取反
- 补码:正数的补码等于原码,负数等于反码+1;一个补码的相反数的补码,是包括符号位每一位都取反再加1
- 移码:补码符号位取反,一般用作浮点数的阶码,目的是保证浮点数机器零全为0;双符号位的补码高位置0,如果为1则溢出;用移码进行两个数加减,是一个数的移码加另一个数的补码
浮点机器数
- 规格化:原码的最高有效位(小数点后第一位)是1;补码的符号位和最高有效位相异;优点:提高浮点数精度、方便程序交换、运算简化
- IEEE标准:尾数用原码且隐藏最高位的1,阶码用移码
汉字编码
- 输入码:拼音、字形等
- 交换码:区位码、国标码
- 内码:唯一
- 字形码:点阵
校验码
- 奇数码距:发现d-1位错误,纠正(d-1)/2位错误
- 偶数码距:发现d/2位错误,纠正(d/2)-1位错误
- 奇偶校验码:加一位校验码。奇校验位应使整个奇校验码的1的个数为奇数,偶校验位应使整个偶校验码的1的个数为偶数
- 海明校验码(汉明码)
- 循环冗余校验码
运算方法
定点数加减法
定点数乘法
- 原码一位乘法
- 补码乘法校正法
- 补码一位乘法:Booth算法
定点数除法
浮点数加减法
- 0操作数检查
- 对阶
- 尾数相加减
- 结果规格化:左规、右规(最多一位)
- 舍入
浮点数乘除法
- 0操作数检查
- 阶码相加减
- 尾数相乘除
- 结果规格化
- 舍入
储存体系
内存储存容量
- 字有多少二进制位称为字长,现在的是64位,也就是8字节;字长和数据线宽度和ALU宽度相等,除非复用;扩大字长叫做位扩展
- 地址线的根数决定寻址范围;字数(也叫寻址字长)=2^n;扩大字的数量叫做字扩展
- 能用的最大储存容量=字数×字长(好像有问题,难道不是字数*寻址单元大小1B?)
- 字位扩展、二进制地址码的范围选择
DRAM刷新
多体交叉存储器
Cache
- 命中率:h=Nc/(Nc+Nm)
- 平均访问时间:ta=h*tc+(1-h)*tm
- 效率:e=tc/ta
映射方式
- 内存与cache交换数据时按字块,假如一块是8B,8B×8bit/16位字长=4个字。块内偏移(块内地址)记作
2^b = 块的大小/编指大小
,块数2^m = 容量/块的大小
。
- cache的行与内存的块进行对应。总大小记作2^c×b,2^c就是行数(地址)。
- 内存根据cache的大小,分为
2^(t=m-c) = 内存大小/cache大小
个“大组”,组号记在cache里的标记。
- 访问的地址由2^t、2^c、2^b组成,先用2^c直接访问cache,对比两者的2^t,如果相同就是命中。
- 组的路数记作2^r,t+r是大组号,c-r是组地址,两组时r=1,四组r=2。
- 字节地址=字地址+字内地址=数据总线位数。
指令系统
- 指令格式
- 寻址方式:立即寻址、直接寻址、间接寻址、寄存器寻址、变址寻址、基址寻址、相对寻址
- RISC、CISC:后者指令系统复杂,数目多,寻址方式多;多用微程序控制器,专用寄存器多,通用寄存器少;不利于流水线
控制器
- 硬布线控制器
- 微程序控制器:微指令、微命令,微操作
- R型指令、I型指令、J型指令
- 数据通路、控制信号