文档介绍:哈弗曼编码课程设计实验报告
目录
一、
求 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ ..2
二、 分 析 和
要
⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ ⋯⋯⋯⋯⋯⋯⋯⋯ ..2
1、 基 本 需 求
析 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
⋯⋯⋯⋯⋯⋯⋯⋯ 2,3
2、
⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
⋯⋯⋯⋯⋯⋯ ................3,4,5
三、 主 要 功 能
面 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
⋯⋯⋯⋯⋯⋯⋯⋯⋯ ...5
1、 主
分
的
界
界
面 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 5
2、 取 文 章 并 字 符 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
5
3、 哈
弗
曼
信
息 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
⋯⋯⋯⋯⋯⋯⋯ .6
4、 文
章
⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ .6
5、 文
章
⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ .6
6、
理 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ .7
四、
(
心
得
体
会 ) ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
⋯⋯⋯⋯⋯⋯⋯ 7
五、 附 ( 主 要 函 数 代) ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ ⋯⋯⋯⋯⋯⋯⋯ 7~14
一、实训要求
1、输入为:一段中文或英文的文章的文件名。
2、读取文章的字符信息。
3、对字符进行权值的计算。
4、根据权值构造哈弗曼树。
5、生成对应的编码。
6、输出为:原文章的编译(译文) 。
7、根据已经生成的编码表,输入任意的译文
可以得到原文。
二、课题分析和设计
:
1)在通信过程中, 为了提高信道利用率,缩短信息传输时间降低传输成本, 需要一编译码器。
2)此哈弗曼编码译码器应具有编码译码的双向功能,即在发送端通过编码系统对传入
的数据进行编码。
(3)在接收端将数据译码,将具有两项功能的编码译码器用于双工信道就可满足, 双工信道的双向编译功能。
4)输入某段报文是,系统将自己完成编译输出。
5)、程序设计流程:
<1>文字表述:
开始进入功能选择界面,包含五种操作
1)读取文章并对字符编码。
2)哈夫曼编码信息。
3)文章编码。
4)文章译码。
5)退出程序。
<2>操作:
1)给定一篇文章,统计字符出现的概率,并根据概率建立哈弗曼树,并利用哈弗曼
树对字符进哈夫曼编码。
2)显示哈弗曼编码信息,包括字符和其哈弗曼编码。
3)对文章进行译码,显示译码信息,并保存。
(4)对文章进行译码,显示并保存。
<3>流程图 :
程序开始
程序主界面
读 取 文 哈 夫 曼 文 章 文章 退 出
显 示 保 存 返 回 显 示 保 存 返 回