1、 电气与电子信息工程学院电气与电子信息工程学院 信息理论与编码信息理论与编码课程设计报告课程设计报告 设计题目设计题目: 哈夫曼编码的分析与实现哈夫曼编码的分析与实现 专业班级:专业班级: 电子信息工程电子信息工程 学生姓名:学生姓名: 学学 号:号: 指导教师:指导教师: 设计设计时间:时间: 教师评语: 成绩 评阅教师 日期 1 一、设计的作用、目的 信息论与编码是一门理论与实践密切结合的课程,课程设计是其实践性 教学环节之一,同时也是对课堂所学理论知识的巩固和补充。其主要目的是加深 对理论知识的理解,掌握查阅有关资料的技能,提高实践技能,培养独立分析问 题、解决问题及实际应用的能力。 通
2、过完成具体编码算法的程序设计和调试工作,提高编程能力,深刻理解信 源编码、信道编译码的基本思想和目的,掌握编码的基本原理与编码过程,增强 逻辑思维能力, 培养和提高自学能力以及综合运用所学理论知识去分析解决实际 问题的能力,逐步熟悉开展科学实践的程序和方法 二、设计任务及要求 通过课程设计各环节的实践,应使学生达到如下要求: 1. 理解无失真信源编码的理论基础,掌握无失真信源编码的基本方法; 2. 掌握哈夫曼编码/费诺编码方法的基本步骤及优缺点; 3. 深刻理解信道编码的基本思想与目的,理解线性分组码的基本原理与编 码过程; 4. 能够使用 MATLAB 或其他语言进行编程,编写的函数要有通用
3、性。 三、设计内容 一个有 8 个符号的信源 X,各个符号出现的概率为: 编码方法:先将信源符号按其出现的概率大小依次排列,并取概率最小的字 母分别配以 0 和 1 两个码元(先 0 后 1 或者先 1 后 0,以后赋值固定) ,再将这 两个概率相加作为一个新字母的概率,与未分配的二进制符号的字母重新排队。 并不断重复这一过程, 直到最后两个符号配以 0 和 1 为止。 最后从最后一级开始, 向前返回得到各个信源符号所对应的码元序列,即为对应的码字。 哈夫曼编码方式得到的码并非唯一的。在对信源缩减时,两个概率最小的 符号合并后的概率与其他信源符号的概率相同时, 这两者在缩减中的排序将会导 致不
4、同码字,但不同的排序将会影响码字的长度,一般讲合并的概率放在上面, 12345678 , ()0.40.180.10.10.070.060.050.04 Xxxxxxxxx PX 2 这样可获得较小的码方差。 四、设计原理 4.1 哈夫曼编码步骤 (1)将信源消息符号按照其出现的概率大小依次排列为 pnpp21 (2)取两个概率最小的字母分别配以 0 和 1 两个码元,并将这两个概率相 加作为一个新的概率,与未分配的二进制符号的字母重新排队。 (3)对重新排列后的两个最小符号重复步骤(2)的过程。 (4)不断重复上述过程,知道最后两个符号配以 0 和 1 为止。 (5)从最后一级开始,向前返回得到的各个信源符号所对应的码元序列, 即为相应的码字。 4.2 哈夫曼编码特点 哈夫曼编码是用概率匹配的方法进行信源匹配方法进行信源。它的特点是: (1)哈夫曼的编码方法保证了概率大的符号对