信息论编码作业-小组重点分析.docVIP

  • 13
  • 0
  • 约2.53万字
  • 约 35页
  • 2016-05-17 发布于湖北
  • 举报
一.信息论编码作业 小组成员:吴湛S1209G106、彭利S1409W0516、王红建S140900748 文件说明:信息论作业。要求是信源编码、信道编码、信道加噪声、信道译码、信源译码。此程序已实现信源编码和信源译码,信道加噪声,信道编码和信道译码的功能。 信源编码的具体实现方法: 对于霍夫曼编码时的字符概率统计方法(这里并非是求出字符概率,因为概率和字符出现的频率是倍数关系,所以这里直接使用字符的频率),首先创建一个表头,当读入一个字符时就去查寻这个链表(详见link_func.c中的find函数),若发现已有读入的这个字符,那么就在匹配的结构单元中num成员加一,如果没有匹配的结构单元说明发现了一个新字符,就在链表最后加一节点(详见link_func.c中的add_unit函数)。 对于霍夫曼编码时的编码具体实现方法如下示意图所示: 对链表进行排序(详见link_func.c中的char_sort函数),并将最后两个分别赋1和0,如图一所示。(这里排序用冒泡法的思想对链表排序,当两个字符的次数相等时,也进行字符的交换,这样可减小编码长度的方差。对于节点的赋值,见link_func.c中的set_num函数,当被赋值的节点存在brothe支链时,该支链上的所有节点都赋于此值)。 图一 2)将最后一个n

文档评论(0)

1亿VIP精品文档

相关文档