信道编码课程设计_第1页
信道编码课程设计_第2页
信道编码课程设计_第3页
信道编码课程设计_第4页
信道编码课程设计_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、信息论课程设计报告香农编/译码的实现院(系):电子与信息工程系专 业:通信工程班 级:通信1312学 号:26号27号28号姓 名:陈秋莹周慧敏吉雨指导教师:潘欣裕错误!未指苏州科技学院信道编码课程设计报告定书签。目 录 TOC o 1-5 h z HYPERLINK l bookmark6 o Current Document .香农编码的原理 3 HYPERLINK l bookmark11 o Current Document .香农编码的目的 3 HYPERLINK l bookmark13 o Current Document .香农编码的例题 4 HYPERLINK l bookm

2、ark15 o Current Document .设计流程图 4 HYPERLINK l bookmark17 o Current Document .程序编码及仿真 5 HYPERLINK l bookmark19 o Current Document 调用函数(M-FILE) 5仿真结果 7 HYPERLINK l bookmark23 o Current Document .香农编码的特点 7 HYPERLINK l bookmark25 o Current Document .香农译码的实现(补充) 8 HYPERLINK l bookmark35 o Current Documen

3、t 香农编码的编码过程 8 HYPERLINK l bookmark27 o Current Document 排序函数 8 HYPERLINK l bookmark29 o Current Document 求和函数 9 HYPERLINK l bookmark31 o Current Document 编码长度函数 9 HYPERLINK l bookmark33 o Current Document 二进制M文件 10香农编码的解码过程 10 HYPERLINK l bookmark37 o Current Document .实验心得 15 HYPERLINK l bookmark39

4、 o Current Document .实验分工 15错误!未指苏州科技学院信道编码课程设计报告定书签。.香农编码的原理香农第一定理指出了平均码长与信源之间的关系,同时也指出了可以 通过编码使平均码长达到极限值,香农第一定理指出,选择每个码字 的长度Ki满足下式Ki 70g之卜取整-log 2 P(xi) - Ki - 1 - log 2 P(x)这种编码方式称为香农编码。.香农编码的目的以二进制(用0、1编码)香农码为例,编码步骤如下:将信源发出的n个消息符号按其概率的递减次序排列计算第i个消息的累加概率Pi(为小数)计算第i个消息的二进制代码组的码长 L并取整将累加概率Pi变换成二进制数

5、定书签。错误!未指苏州科技学院信道编码课程设计报告.香农编码的例题以输入为 P=0.40,0.20,0.20,0.10,0.10 为例,香农编码结果如下表:其中W取EPi二进制数小数点后L位。符号概率piEPiEPi的 二进制 表不-log2pi码长(L)WS10.400.00001.3219200S20.20.40.01102.32193011S30.20.60.10012.32193100S40.10.80.11003.321941100S50.10.90.11103.321941110.设计流程图错误!未指苏州科技学院信道编码课程设计报告定书签。开始计算平均同长地算累沙砥率 不算自信盟品

6、将索力匚蹑奉化为二迸树仁2、.程序编码及仿真调用函数(M-file)function C=decbin(A,B) %对累加概率求二进制的函数C=zeros(1,B);% 累加概率转化为二进制,temp=A;for i=1:Btemp=temp*2;if temp1temp=temp-1;C(1,i)=1;错误!未指苏州科技学院信道编码课程设计报告定书签。elseC(1,i)=0;endend主函数n=input(输入信源符号个数n=)p=zeros(1,n);for i=1:np(1,i)=input(输入信源符号概率:);endif sum(p)1error(输入概率不符合概率分布)endy

7、=fliplr(sort(p);%从大到小的排序D=zeros(n,4);%生成5*4的零矩阵D(:,1)=y;%把y赋给零矩阵的第一列for i=2:nD(1,2)=0;%令第一行第二列的元素为0D(i,2)=D(i-1,1)+D(i-1,2);%第二列其余元素用此式求得,即为累加概率end for i=1:n错误!未指苏州科技学院信道编码课程设计报告定书签。D(i,3)=-log2(D(i,1);% 求第三列的元素D(i,4)=ceil(D(i,3);%求第四列的元素,对 D(i,3)向上取整end仿真结果输入信通符号个数“En =5输入信源符号概率:Q, 2 输入信源符号幅率:Q. 4

8、输入信海符号板率:Q.1 输入信海苻骂概率:Q. 1 辅久信源苻号概率:。.20.400001.32192. 0000L10-0口, 20000. 40002. 32193. 00000, 20000. 60002, 32193. 0000C工Q+ 1QQQQ, 80003+ 32194. 00000. 10000. 90003. 32194. 0000L110.香农编码的特点由于Ki总是要进1整,香农编码不一定是最好的编码方式;第一个消息符号的累加概率始终为 0,因而它对应的码字总是0,、00、000、0.0 的式样;码字集合是唯一的,且为即时码;先有码长再有码字;错误!未指苏州科技学院信道

9、编码课程设计报告定书签。.香农译码的实现(补充)香农编码的编码过程clear;clc;a=0.05 0.15 0.35 0.2 0.005 0.015 0.035 0.0366 0.012 0.1464;%导到数据分别为e c a b j h g f i da =paixu(a);%b = qiuhe(a);%l_cord= length_cord(a) ;%for i = 1 : length(a) %的概率分布用冒泡法从小到大排序求累加概率求每个概率的编码长度求编码,其中cord)是一个单元数组,每一个单元存放了一个编码对应的是排序后的数据顺序cordi = erjinzhi(b(i),l

10、_cord(i);disp(cordi) end排序函数function b = paixu(a);size_z = length(a);for i = 1:size_z-1for j = 1 : size_z - 1if a(j)=1c(i) = 1;temple = temple - 1;elsec(i) = 0;endend香农编码的解码过程clear;a1 = 0 0;% a TOC o 1-5 h z a2 =0 1 0;%ba3 =1 0 0;%ca4 =1 0 1;%d10错误!未指苏州科技学院信道编码课程设计报告定书签。a5=1 1 0 1 1;% ea6=1 1 1 0 0;

11、% fa7=1 1 1 0 1;% ga8=1 1 1 1 0 1 1;% ha9=1 1 1 1 1 0 1;% ia10=1 1 1 1 1 1 1 0;% jcord = 0 1 0 0 0 1 1 1 1 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 11 0 1 1;k = 1;j = 1;for i = 1 : length(cord)b(j) = cord(i);j=j+1;switch (j)case (3)if b = a1c(k) = a;k = k+1;j = 1;b = 0;endii错误!未指苏州科技学院信道编码课程设计报告定书签。12case(

12、4)if b = a2 c(k) = b;k = k + 1;j = 1;b = 0;elseif b = a3 c(k) = c; k = k + 1; j = 1;b = 0;elseif b = a4 c(k) = d;k = k + 1;j = 1;b = 0;endcase(6)if b = a5苏州科技学院信道编码课程设计报告错误!未指定书签。c(k) = e;k = k + 1;j = 1;b = 0;elseif b = a6 c(k) = f;k = k + 1;j = 1;b = 0;elseif b = a7c(k) = g;k = k + 1;j = 1;b = 0;e

13、ndcase(8)if b = a8c(k) = h;k = k + 1;13错误!未指苏州科技学院信道编码课程设计报告定书签。j = 1;b = 0;elseif b = a9c(k) = g;k = k + 1;j = 1;b = 0;endcase(9)if b = a10c(k) = d;k = k + 1;j = 1;b = 0;endendif j 9disp (the cord erro. near cord)disp(i)break14错误!未指苏州科技学院信道编码课程设计报告定书签。endenddisp (c).实验心得通过本次编码设计,我们了解了香农编码的编码方式和原理,在编码过程中复习了 c语言中序列的排序算

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论