欢迎来到天天文库
浏览记录
ID:10931085
大小:4.97 MB
页数:11页
时间:2018-07-09
《《信息论与编码》实验讲义》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、信息论与编码实验讲义2学生实验守则1、进实验室前,必须根据每个实验的预习要求,阅读有关资料。2、按时进入实验室,保持安静和整洁,独立完成实验。3、实验开始前,应仔细检查仪器、设备是否齐备和完好。若有不全或损坏情况,应及时报告指导教师。4、爱护公物,正确使用实验仪器和设备,不得随意动用与本实验无关的仪器和设备。5、接线完毕,先自行检查,再请指导教师检查,确认无误后,方可接通电源。6、在实验过程中必须服从教师指导,严格遵守操作规程,精力高度集中,操作认真,要有严格的科学态度。7、实验进行中,严禁用手触摸线路中带电部分,严禁在未切断电源的情况下
2、改接线路;若有分工合作的情况,必须要分工明确,责任分明,操作要有序,以确保人身安全和设备安全。8、实验中若出现事故或发现异常情况,应立即关断电源,报告指导教师,共同分析事故原因。9、实验完毕,应报请指导教师检查实验报告,认为达到要求后,方可切断电源。并整理好实验装置,经指导教师检查后才能离开实验室。9实验一绘制二进制熵函数曲线一、实验目的1.掌握二进制符号熵的计算;2.掌握MATLAB的应用;3.掌握Matlab绘图函数;4.掌握、理解熵函数表达式及其性质二、实验条件计算机一台,MATLAB仿真软件。三、实验内容(1)MATLAB的应用(
3、请参阅相关书籍)(2)打开MATLAB,在命令窗口中输入eidt,弹出编辑窗口,如图1:图1MATLAB的编辑窗口(3)输入源程序:clear;x=0.001:0.001:0.999y=-x.*log2(x)-(1-x).*log2(1-x);plot(x,y);gridon(4)保存文件为entropy.m;(5)单击Debug菜单下的Run,或直接按F5执行;(6)执行后的结果图2:四、实验分析(1)熵函数是一个严格上凸函数(2)熵的极大值,二进符号的熵在p(x1)=p(x2)=0.5取得极大值9(3)调调整p(x1)的取值步长,重画
4、该曲线图2二进制符号熵函数图9实验二一般信道容量迭代算法一、实验目的1.掌握准对称信道信道容量的计算方法2.掌握准对称信道信源输入概率分布的计算3.掌握一般信道容量迭代算法的原理4.掌握应用MATLAB计算准对称信道的方法5.掌握准对称信道的性质6.掌握互信量的概念及与信道容量的关系二、实验条件计算机一台,MATLAB仿真软件。三、实验内容(1)MATLAB的应用(请参阅相关书籍)(2)打开MATLAB,在命令窗口中输入eidt,弹出编辑窗口,如图3:图3MATLAB的编辑窗口(3)MATLAB仿真建立一个函数Channel.m输入如下代
5、码:function[]=Channel(ArrayP)Hxy=0;fori=1:size(ArrayP,2)Hxy=Hxy-ArrayP(1,i)*log2(ArrayP(1,i));end%Hxy=-1/2*log2(1/2)-1/4*log2(1/4)-1/8*log2(1/8)-1/8*log2(1/8)x=0:0.01:1;Py=ArrayP'*[x;1-x];9Y=Py';result=[];fori=1:size(Y,1)result(i)=0;forj=1:size(Y,2)result(i)=result(i)-Y(i,
6、j)*log2(Y(i,j));endresult(i)=result(i)-Hxy;endplot(x,result,'r');gridon在命令窗口输入:p=[1/21/41/81/8;1/41/21/81/8];channel(p);得到计算结果如图4图4对于给定P后互信息量图9实验三Huffman编码一、实验目的1.掌握变长编码原理2.掌握二进制Huffman编码原理3.掌握Huffman编码的最佳性二、实验条件计算机一台,MATLAB仿真软件。三、实验内容(1)MATLAB的应用(请参阅相关书籍)(2)打开MATLAB,在命令窗
7、口中输入eidt,弹出编辑窗口,如图3:图3MATLAB的编辑窗口(3)MATLAB仿真建立一个函数huffman.m输入如下代码:function[h,H,L]=huffman(p)%变量p为所有符号出现概率所组成的概率向量%返回值h为利用Huffman编码算法编码后最后得到的编码结果%返回值H为信源熵%返回值为进行Huffman编码后所得到的编码的码字长度iflength(find(p<0))~=0error('Notaprob.vector,negaativecomponent(s)')endif(abs(sum(p)-1)>10e
8、-10)error('Notaprob.vector,componentdonotaddto1')endH=-sum(p.*log2(p))n=length(p);q=p;9m=zeros(n
此文档下载收益归作者所有