好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

用MATLAB编程实现香农编码.doc

4页
  • 卖家[上传人]:lil****ar
  • 文档编号:276193359
  • 上传时间:2022-04-11
  • 文档格式:DOC
  • 文档大小:134KB
  • / 4 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 实验四、用MATLAB编程实现香农编码 ⒈实验目的和要求(1)了解信源变长码的编码方法(2)掌握香农编码方法(3)掌握MATLAB的编程⒉实验主要内容使用MATLAB语言和excel对以下信源进行香农编码,并求出平均码长和编码效率3.实验原理Ⅰ.香农编码方法(1) 将信源发出的N个消息符号按其概率的递减次序排列(2) 按下式计算第个消息的二进制代码组的码长,并取整 (3) 计算第个消息的累加概率(为小数)(4) 将累加概率变换成二进制数(5) 去掉小数点,并根据取小数点后的前几位为对应的代码组Shannon编码的MATLAB程序:clear;N=input('N='); %输入信源符号的个数s=0;l=0;H=0;for i=1:N p(i)=input('p=');%输入信源符号概率分布矢量,p(i)<1 s=s+p(i) H=H+(-p(i)*log2(p(i)));%计算信源信息熵endif abs(s-1)>0, error('不符合概率分布')end for i=1:N-1 for j=i+1:N if p(i)

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.