




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上信息论与编码 大作业班级:电信091班姓名:徐胜学号:目 录一、用matlab实现Shannon编码1、编码主程序n=input('输入单符号信源个数n=')p=zeros(1,n);for i=1:np(1,i)=input('输入单符号信源个数:');endif sum(p)<1|sum(p)>1error('不符合概率分布无效')endy=fliplr(sort(p);%大到小排序D=zeros(n,4);%生成n*4的零矩阵D(:,1)=y'%把y赋给零矩阵的第一列for i=2:nD(1,2
2、)=0;%令第一行第二列的元素为0D(i,2)=D(i-1,1)+D(i-1,2);%求累加概率 end for i=1:nD(i,3)=-log2(D(i,1);%求第三列的元素D(i,4)=ceil(D(i,3);%求第四列的元素,对D(i,3)向无穷方向取最小正整数 endDA=D(:,2)'%取出D中第二列元素B=D(:,4)'%取出D中第四列元素for j=1:nC=binary(A(j),B(j)%生成码字End2、含有的子函数binaryfunction C=binary(A,B)%对累加概率求二进制的函数C=zeros(1,B);%生成零矩阵用于存储生成的二进制
3、数,对二进制的每一位进行操作temp=A;%temp赋初值for i=1:B%累加概率转化为二进制,循环求二进制的每一位,A控制生成二进制的位数 temp=temp*2;if temp>1 temp=temp-1; C(1,i)=1; else C(1,i)=0; end end3、注意事项正式运行前应该把binary.m文件放到matlab的工作空间中去,以保证主函数能成功调用。 图一 子函数存储示意图4、例题展示将课本第五章例题4键入入运行,可得结果和课本完全一致。输入信源符号个数n=7n = 7输入信源符号概率:0.2输入信源符号概率:0.19输入信源符号概率:0.18输入信源符号
4、概率:0.17输入信源符号概率:0.15输入信源符号概率:0.1输入信源符号概率:0.01D = 0.2000 0 2.3219 3.0000 0.1900 0.2000 2.3959 3.0000 0.1800 0.3900 2.4739 3.0000 0.1700 0.5700 2.5564 3.0000 0.1500 0.7400 2.7370 3.0000 0.1000 0.8900 3.3219 4.0000 0.0100 0.9900 6.6439 7.0000C = 0 0 0C = 0 0 1C = 0 1 1C = 1 0 0C = 1 0 1C = 1 1 1 0C = 1
5、 1 1 1 1 1 0二、用matlab实现Feno编码1、编码主程序clear all;N=input('N=');%输入信源符号的个数s=0;l=0;H=0;for i=1:Nfprintf('第%d个',i);p(i)=input('p=');%输入信源符号概率分布矢量,p(i)<1if p(i)<=0error('不符合概率分布')ends=s+p(i)H=H+(- p(i)*log2(p(i);%计算信源信息熵endif (s<=0.|s>=1.)error('不符合概率分布')
6、endtic;for i=1:N-1 %按概率分布大小对信源排序for j=i+1:Nif p(i)<p(j)m=p(j);p(j)=p(i);p(i)=m;endendendx=f1(1,N,p,1);for i=1:N %计算平均码长L(i)=length(find(x(i,:);l=l+p(i)*L(i);endn=H/l; %计算编码效率fprintf('按概率降序排列的码字:n');disp(x) %显示按概率降序排列的码字fprintf('平均码长:n');disp(l)% 显示平均码长fprintf('编码效率:n');dis
7、p(n) %显示编码效率fprintf('计算耗时time= %fn',toc);2、两个子m文件展示1、第一个函数f1存放于f1.mfunction x=f1(i,j,p,r)global x;x=char(x);if(j<=i)return;elseq=0;for t=i:j %对于区间i,j自上而下求累加概率值q=p(t)+q;y(t)=q; endfor t=i:j%把所有自上而下的累加概率值与该区间总概率值减该累加概率值之差取绝对值存在一数组v(t)=abs(y(t)-(q-y(t); endfor t=i:jif(v(t)=min(v) %求该数组中最小的一个
8、值来确定分界点位置for k=i:t %赋值码字x(k,r)='0'endfor k=(t+1):jx(k,r)='1'endd=t;f1(i,d,p,r+1); %递归调用及相互调用f2(d+1,j,p,r+1);f1(d+1,j,p,r+1);f2(i,d,p,r+1);elseendend endreturn;2、第二个函数函数f2存放于f2.mfunction x=f2(i,j,p,r)global x;x=char(x);if(j<=i)return;elseq=0;for t=i:j %对于区间i,j自上而下求累加概率值q=p(t)+q;y(t
9、-i+1)=q; endfor t=1:j-(i-1)%把所有自上而下的累加概率值与该区间总概率值减该累加概率值之差取绝对值存在一数组v(t)=abs(y(t)-(q-y(t); endfor t=1:j-(i-1)if(v(t)=min(v) %求该数组中最小的一个值来确定分界点位置d=t+i-1;for k=i:d %赋值码字x(k,r)='0'endfor k=(d+1):jx(k,r)='1'end f2(d+1,j,p,r+1);%递归调用及相互调用f1(i,d,p,r+1);f2(i,d,p,r+1);f1(d+1,j,p,r+1);elseendend endreturn;3、注意事项还是那句话,要提前把子函数放到工作空间。4、例题展示N=7第1个p=0.2s = 0.2000第2个p=0.19s = 0.3900第3个p=0.18s = 0.5700第4个p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 冰柜使用合同范本
- 云南2025年云南省民族宗教事务委员会委属事业单位招聘7人笔试历年参考题库附带答案详解
- 科技发展中的伦理与安全意识普及
- 科技公司如何应对网络攻击的实战经验
- MJC13-生命科学试剂-MCE
- GPV574-生命科学试剂-MCE
- 2002-G12-生命科学试剂-MCE
- 1-Phenylethylamine-hydrochloride-生命科学试剂-MCE
- 中山广东中山市东凤镇第二中学招聘临聘教师笔试历年参考题库附带答案详解
- 租借婚纱合同范本
- 运动康复机构跌倒风险管理措施
- 开学安全第一课主题班会课件
- 一年级珍惜粮食主题班会学习教案
- 残疾人的就业创业与自我发展
- 全套课件-建筑工程质量与安全管理
- 医院感染的中心静脉导管相关血流感染预防
- 新版《医疗器械经营质量管理规范》(2024)培训试题及答案
- 2025年人教版数学五年级下册教学计划(含进度表)
- DBJ33T 1286-2022 住宅工程质量常见问题控制标准
- 海岸动力学英文课件Coastal Hydrodynamics-复习
- 碳足迹研究-洞察分析
评论
0/150
提交评论