系统结构讲义PPT课件

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
这个定义式表明事件的发生概率越低,关于它的消息中的信息量越大。
熵(entropy)── 平均信息量:一个消息源对n种事件发布的消息的
信息量平均值,记为:
n
n
H (P iIi) P iloa(g P i)
i1
i1
2021/3/7
CHENLI
11
平均码长:各事件编码长度的数学期望。
n
L (Pi li ) i1
操作码长度 1位 2位 3位 4位 5位 6位 6位
2021/3/7
CHENLI
10
编码方法性能指标
信息量:根据信息论的基本知识,在n种可能发生的事件集合中,报告第i
种事件发生的消息中包含的信息量为:
Ii loag(P 1i)loagPi
其中Pi是第i种事件发生的先验概率,a是编码基值。信息量的单位是表 示位数(最少所需位数)。
注意:
2021/3对/7 于同一个频度分布,应用哈CHE夫NL曼I 算法可能生成不同的哈夫曼树8, 因此,得到的哈夫曼编码并不唯一,但平均码长唯一。
I1 0.45
2021/3/7
I2 I3
I4 I5
I6
I7
0.30 0.15 0.05 0.03 0.01 0.01
0
1
0.02
0
1
0.05
0
1
0.10
长操作码需要3位。已知各种操作码在程序中出现的概率如下表,
计算采用Huffman编码法的操作码平均长度,并计算固定长操
作码和Huffman操作码的信息冗余量。
解: Huffman编码结果如:
指令序号 概率 Huffman编码法 操作码长度
I1
0.45 0
1位
I2
0.30 10
2位
I3
0.15 110
I5
0.03 100
I6
0.01 101
I7
0.01 110
编码
操作码长度 3位 3位 3位 3位 3位 3位 3位
2021/3/7
CHENLI
5
二、Huffman编码法(最小概率合并法)
Huffman压缩概念(最佳编码定理):当用n个长度不等的代码分别
代表n种发生概率不等的事件时,按照短代码给高概率事件、把长代码给 低概率事件的原则分配,可使平均码长达到最低。
信息冗余量:表明消息编码中“无用成分”所占的百分比。
R LH100% L
从减少存储与传输量的角度看,编码方法的平均码长越短越 好。但是平均码长不可能无限制缩短,它的下限就是熵(即R=0 时)。如果短于熵就一定会丢失有用信息(即混淆不同指令) ,这是不允许的。
2021/3/7
CHENLI
12
例:假设一台模型计算机共有7种不同的操作码,如果采用固定
3位
I4
0.05 1110
4位
I5
0.03 11110
5位
I6
0.01 111110
6位
I7
0.01 111111
指令 I1
I2
I3
I4
I5
I6
I7
概率 0.45 0.30 0.15 0.05 0.03 0.01 0.01
解:由于N=7 因此,指令操作码固定长度为 [lbN]=[lb7]=3
2021/3/7
CHENLI
4
编码结果:
指令序号 概率
I1
0.45 000
I2
0.30 001
I3
0.15 010
I4
0.05 011
0
1
0.25
0
1
0.55
0
1
1.00
Huffman编CHE码NLI树生成过程
9
编码结果:
指令序号
I1 I2 I3 I4 I5 I6 I7
概率 0.45 0.30 0.15 0.05 0.03 0.01 0.01
Huffman编码法 0 10 110 1110 11110 111110 111111
2021/3/7
CHENLI
7
Huffman树生成步骤: 把所有指令按照操作码在程序中出现的概率,自左向右 从排列好。 选取两个概率最小的结点合并成一个概率值是二者之和 的新结点,并把这个新结点与其它还没有合并的结点一 起形成新结点集合。 在新结点集合中选取两个概率最小的结点进行合并,如 此继续进行下去,直至全部结点合并完毕。 最后得到的根结点的概率值为1。 每个结点都有两个分支,分别用一位代码“0” 和“1”表 示。
第二章 指令系统
2021/3/7
CHENLI
1
2.3 指令格式的优化设计
指令格式的优化是指如何用最短的二进制位数表示指令的操作码信息和地 址码信息,使指令的平均字长最短,同时便于译码。
指令的组成
操作码
地址码
1) 指令的操作种类。 2) 所用操作数数据
类型。
1) 操作数地址。 2) 地址附加信息。 3) 寻址方式。
上面所说的频度值就是各事件实际出现次数的百分比, 它是理论出现概率的近似值。
例:假设一台模型计算机共有7种不同的操作码,已 知各种操作码在程序中出现的概率如下表,利用Huffman 编码法进行操作码编码。
指令 I1
I2
I3
I4
I5
I6
I7
概率 0.45 0.30 0.15 0.05 0.03 0.01 0.01
Huffman编码方法
这种编码方法由两个过程组成。
频度合并:将全部n个事件(在此即为n条指令)的频度值排序,选
取其中最小的2个频度合并,然后将剩下的n-1个频度再次排序,再合并 最小的2个频度,如此重复,直至剩下1个频度为止。记录所有的合并关 系,形成一棵二叉树 ── Huffman树,所有原始频度值充当树叶,而最后 剩下的总频度1为树根;
指Байду номын сангаас格式的优化设计目标:
1) 使程序中指令的平均字长最短,节省程序的存储空间。
2) 指令格式要规整,减少硬件译码的复杂程度。
2021/3/7
CHENLI
2
操作码的优化表示
操作码的表示方法: 1) 固定长度操作码。 2) Huffman编码法。 3) 扩展编码法。
一、固定长度操作码 采用等长操作码。
码元分配:从树根开始,对每个中间结点的左右2个分支边各赋予
一位代码“0”和“1”(“0”在哪一侧不限)。读出从根结点到任一片树叶
的路径上依次出现的代码位就排成了这个事件(即指令)的完整编码。
由于频度高的事件较晚被合并,它的编码位数也就较少,符合Huffman压
缩20原21/3则/7 。
CHENLI
6
若指令系统共有N种不同功能的指令,则指令系统中的 所有指令的操作码长度固定为[lbN]位。
特点: 1) 长度规整,有利于硬件设计,减少指令译码时间。 2) 信息冗余。
2021/3/7
CHENLI
3
例:假设一台模型计算机共有7种不同的操作码,已知各 种操作码在程序中出现的概率如下表,利用固定长度编码 法进行操作码编码。
相关文档
最新文档