软件设计师 王寄清 第一章(用于自己)

目录

数据的表示

进制

二进制的原码、反码、补码、移码

浮点数

表示

运算过程

特点

规格化

工业标准IEEE754

运算器控制器

运算器

控制器

Flynn分类法

寻址方式 

立即寻址方式

直接寻址方式

间接寻址方式

寄存器寻址方式

寄存器间接寻址方式

CISC和RISC

流水线技术

流水线执行时间计算

流水线周期

计算公式

超标量流水线

流水线吞吐率

最基本的公式

流水线最大吞吐率(看最后的等于)

存储系统

CPU

Cache

内存(主存)

外存(硬盘)

总线系统

数据总线(DB)

地址总线(AB)

控制总线(CB)

可靠性(R)

串联

并联系统

校验码

码距

奇偶校验码

循环校验码(CRC)

海明校验码


数据的表示

进制

进制有二进制、八进制、十进制、十六进制

二进制是Binary,简写为B
八进制是Octal,简写为O
十进制为Decimal,简写为D
十六进制为Hexadecimal,简写为H

二进制转八进制为三位二进制数为一位八进制数,因为三位二进制由大到小为0-7;同理,二进制转十六进制为四位二进制数为一位八进制数。

一般在进制转换中,先把十进制转为二进制再转为其他进制。

二进制的原码、反码、补码、移码

所有码中,除了移码以外其他码正数的符号位都为0,负数为1;移码则反过来了。在补码中0有唯一编码:[+0]补 = 00000000。

原码:数字转换成二进制

反码:正数补码和源码完全相等;负数反码:符号位1不变,后面的位置在原码基础上取反

补码:正数补码和原码、反码一样;负数的补码:在负数反码的基础上加1

移码:移码是对补码的符号位取反

注:[[x]补]补 = [x]原

码制定点整数(以8位为例)定点小数(以8位为例)
原码-127~127-(1-1/127)~(1-1/127)
反码-127~127-(1-1/127)~(1-1/127)
补码-128~127-(1-1/128)~(1-1/128)
移码-128~127-(1-1/128)~(1-1/128)

浮点数

表示

阶符阶码数符尾数

运算过程

对接>尾数计算>结果格式化

特点

  1. 一般尾数用补码,阶码用移码
  2. 阶码的位数决定数的表示范围,位数越多范围越大
  3. 尾数的位数决定数的有效精度,位数越多精度越高
  4. 对阶时,小数向大数看齐
  5. 对阶是通过较小数的尾数右移实现的

规格化

若尾数M>=0,则其规格化的尾数形式为M=0.1XXXX,其中,X可为0,也可为1,即将尾数限定在区间[0.5,1]。

若尾数M<0,则其规格化的尾数形式为M=1.0XXXX,其中,X可为0,也可为1,即将尾数限定在区间[-1,-0.5]。

工业标准IEEE754

是由IEEE制定的有关浮点数的工业标准。

运算器控制器

运算器

  • 算术逻辑单元ALU : 数据的算术运算和逻辑运算
  • 累加寄存器AC :通用寄存器, 为ALU 提供一个工作区, 用在暂存数据
  • 缓冲寄存器DR : 写内存时, 暂存指令或数据
  • 状态条件寄存器PSW : 存状态标志与控制标志( 争议: 也有将其归为控制器的)

控制器

  • 程序计数器PC : 存储下一要执行指令的地址
  • 指令寄存器IR : 存储即执行的指令
  • 指令译码器ID: 对指令中操作码字段进行分析解释
  • 时序部件:提供时序控制信号

Flynn分类法

体系结构类型结构关键特性代表
单指令流单数据流 SISD

控制部分:一个

处 理 器 :一个

主存模块:一个

单处理器系统
单指令流多数据流 SIMD

控制部分:一个

处 理 器 :多个

主存模块:多个

各处理器以异步的形式执行同一条指令

并行处理机

阵列处理机

超级向量处理机

多指令流单数据流 MISD

控制部分:多个

处 理 器 :一个

主存模块:多个

被证明是不可能的,至少是不实际的目前没有,有文献称流水线计算机为此类
多指令流多数据流 MIMD

控制部分:多个

处 理 器 :多个

主存模块:多个

能够实现作业、任务、指令等各级全面并行

多处理机系统

多计算机

寻址方式 

立即寻址方式

操作数就在指令中,速度快,灵活性差

 

直接寻址方式

指令中存放的是指令的地址

间接寻址方式

 指令中存放了一个地址,这个地址对应的内容是操作数的地址 

寄存器寻址方式

寄存器存放操作数

寄存器间接寻址方式

寄存器存放的是操作数的地址

CISC和RISC

指令系统类型指令寻址方式实现方式其他
CISC(复杂)数量多,使用频率差别大,可变长格式支持多种微程序控制技术(微码)研制周期长
RISC(精简)数量少,使用频率接近,定长格式,大部分为单周期指令,操作寄存器,只有Load/Store操作内存支持方式少增加了通用寄存器;硬布线逻辑控制为主适合采用流水线优化编译,有效支持高级语言

流水线技术

执行一条指令的过程:取指 分析 执行

流水线执行时间计算

流水线周期

为执行过程中时间最长的一段

计算公式

第一条指令执行时间 + (指令条数 - 1)* 流水线周期

  • 理论公式:(t1+t2+...+tk)+(n - 1) * \Deltat
  • 实践公式:k * \Deltat + (n - 1) * \Deltat

超标量流水线

如果超标二倍,即 取指取指 分析分析 执行执行,这样执行,如果要执行10条指令,那么时间为常规执行5条指令的时间。

流水线吞吐率

单位时间内流水线所完成的任务数量或输出的结果数量

最基本的公式

\frac{}{}TP=指令条数/流水线执行时间

流水线最大吞吐率(看最后的等于)

TP_{max}=\lim_{n\rightarrow \infty }\frac{n}{(k+n-1)\Delta t}=\frac{1}{\Delta t}

存储系统

按速度快慢排序,快为先:CPU>Cache>内存(主存)>外存(硬盘)

CPU

寄存器:寄存器,最快,但容量小,成本高

Cache

按内容存取

以h代表对Cache的访问命中率,t1表示Cache的周期时间,t2表示主存储器周期时间,以读操作为例,使用“Cache+主存储器”的系统的平均周期为t3,则:

t3 = h * t2 + (1 - h) * t2

其中,(1-h)又称失败率(未命中率)。

地址映像

直接相联映像:硬件电路较简单,但冲突率很高。

全相联映像:电路难于设计和实现,只适用于小容量的cache,冲突率比较低。Cache中的页可以随意放置,没有分组的束缚。

组相联映像:直接相联与全相联的折中。

地址映像是将主存与Cache的存储空间划分为若干大小相同的页(或称为块)

内存(主存)

分两类:随机存储器(RAM)、只读存储器(ROM)

外存(硬盘)

硬盘、u盘、光盘等

总线系统

一条总线同一时刻仅允许一个设备发送,但允许多个设备接收

数据总线(DB)

在CPU与RAM之间来回传送需要处理或是需要储存的数据

地址总线(AB)

用来指定在RAM中储存数据的地址

控制总线(CB)

将微处理器控制单元的信号,传送到周边设备,一般常见的为USB Bus和1394 Bus

可靠性(R)

串联

R = R1 * R2 * ...  * Rn;

并联系统

R = 1 - (1 - R1) * (1 - R2) * ... * (1 - Rn)

校验码

码距

任何一种编码都由许多码字构成,任意两码字之间最少变化的二进制位数就称为数据校验码的码距

如,用4位二进制表示16种状态,则有16个不同的码字,此时的码距为1,如0000和0001

码距=2具有检错能力

>=3有可能有纠错能力

奇偶校验码

由若干位有效信息(如一个字节),再加上一个二进制位(校验位)组成校验码。

奇校验:整个校验码(有效信息位和校验位)中“1”的个数为奇数

偶校验:整个校验码(有效信息位和校验位)中“1”的个数为偶数

可检查一位错误,但不可纠错,码距为2

循环校验码(CRC)

模2除法,相同为0,不同为1

若生成的多项式为:x_{}^{4}+x_{}^{3}+x+1

则再原始报文末尾加四个0后用11011除以。最后留下的余数即为结果。

海明校验码

利用了奇偶校验并在其基础上升级,可检错,可纠错

其中,m为数据位(有效信息位),r为校验位

2^{r}\geq m+r+1

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值