首页 算术编码程序仿真

算术编码程序仿真

举报
开通vip

算术编码程序仿真源程序: % ========abcd 的算术编码 ============% clear all; C=[input('请输入符号(请以矩阵的形式输入) C=')];%C=['a' 'b' 'c' 'd']; s=input('请输入信源符号序列s=');% s=['a' 'b' 'd' 'a']; n=length(s); P=[input('请输入符号概率 P=')];%P=[0.100 0.01 0.001 0.001]; Q=[input('请输入符号累积概率 Q=')];%Q=[0.000 0.100 ...

算术编码程序仿真
源程序: % ========abcd 的算术编码 ============% clear all; C=[input('请输入符号(请以矩阵的形式输入) C=')];%C=['a' 'b' 'c' 'd']; s=input('请输入信源符号序列s=');% s=['a' 'b' 'd' 'a']; n=length(s); P=[input('请输入符号概率 P=')];%P=[0.100 0.01 0.001 0.001]; Q=[input('请输入符号累积概率 Q=')];%Q=[0.000 0.100 0.110 0.111]; A=[]; code=[]; for i=1:1:n for j=1:length(C) if (find(s(i)==C(j))) % m(i)=j; if (i==1) A(i)=1*P(j); code(i)=0+1*Q(j); elseif(i>=1) A(i)=A(i-1)*P(j)+0.0000000; code(i)=code(i-1)+A(i-1)*Q(j)+0.0000000;%P(m(i-1)) end end end end display('概率矩阵为:');A; display('符号编码矩阵为:');code ; % code=fprintf('%.6f',code) % 输出数据小数点后6位 code=code(max(i)); K=0; T=0; code1=code; %===========将小数转换为编码===================% CODE=[]; while(code1-fix(code1)>=10^(-7)) K=K+1; code1=code*10^K; if (fix(code1)==0) T=T+1; CODE(K)=0; else CODE(K)=fix(code1)-fix(code1/10)*10; end end display('编码后的码字:'); CODE 编码过程:
本文档为【算术编码程序仿真】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_331106
暂无简介~
格式:doc
大小:30KB
软件:Word
页数:2
分类:互联网
上传时间:2011-04-10
浏览量:19