信息论与编码matlab实验报告,信息论与编码matlab1

matlab

1. 实验目的

1、掌握哈夫曼编码、费诺编码、汉明码原理;

2、熟练掌握哈夫曼树的生成方法;

3、学会利用matlab、C语言等实现Huffman编码、费诺编码以及hamming编码。

2. 实验原理

Huffman编码:

哈夫曼树的定义:假设有n个权值,试构造一颗有n个叶子节点的二叉树,每个叶子带权值为wi,其中树带权路径最小的二叉树成为哈夫曼树或者最优二叉树;

实现Huffman编码原理的步骤如下: 1. 首先将信源符号集中的符号按概率大小从大到小排列。 2. 用0和1表示概率最小的两个符号。可用0表示概率小的符号,也可用1表示概率小的符号,但整个编码需保持一致。

3. 将这两个概率最小的符号合并成一个符号,合并符号概率为

最小概率之和,将合并后的符号与其余符号组成一个N-1的新信源符号集,称之为缩减符号集。

4. 对缩减符号集用步骤1,2操作 5. 以此类推,直到只剩两个符号,将0和1分别赋予它们。 6. 根据以上步骤,得到0,1赋值,画出Huffman码树,并从最

后一个合并符号回朔得到Huffmaan编码。

费诺编码:

费诺编码的实现步骤:

1、将信源消息符号按其出现的概率大小依次排列: 。 2、将依次排列的信源符号按概率值分为两大组,使两个组的

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值