欢迎来到天天文库
浏览记录
ID:20665819
大小:96.50 KB
页数:11页
时间:2018-10-14
《实验三 汉明码编码与译码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验三汉明码编码与译码一、实验题目1、写一个错误生成器模块,在给定的一个比特流作输入时,它的输出流的每个比特流都以概率p发生了改变,即比特错误概率为p。2、对m=3,将汉明码编码后的比特流输入到上述模块,然后对收到的字用译码器进行译码。二、实验目的1、理解和掌握汉明码编码与译码的原理;三、算法设计四、程序分析1、错误生成模块:任一给以p,系统任意生成一数,若比p小则让其出错,否则不出错。2、编码:首先随机生成H矩阵,由H矩阵生成G矩阵,利用C=mG编码。3、解码:若v*H’=0,则没有出错,直接输出v中前k位;若v*H’!=0,列出所有的e和e*H’得到伴随阵s,若能在s中找到s=v*H则c0
2、=v-e,输出c0中前k位;若找不到s,则输出“错误位数大于纠错能力,无法解码”。五、程序代码#include#include//字符串处理头文件#include//输入输出控制头文件#include#include#includeusingnamespacestd;voidErr_Pro();voidHamming_Decode();intm,n,k,t,err,r,R[100],N[100],COUNT[100],num[100][100],Th[100][100],PT_S[100]
3、[100],PT_D[100][100];intH[100][100],HT[100][100],Ig[100][100],P[100][100],G[100][100],Ibit[100],Cbit[100],Err_Cbit[100],V[100];/**************************************************************************//*函数名:voidBinary_Conversion(inti)*//*功能:十-二进制转换*//*说明:该函数输出二进制数为低位在前,高位在后*//*********************
4、*****************************************************/voidBinary_Conversion(inti){intj=0,temp=0;do//生成完整n个二进制{temp=i%2;//判断相应最低位为0或1(若为2的倍数则为0,否则为1)i=i/2;//为考虑前一位为0或1做准备if(j5、********************//*函数名:voidRandom_Array()*//*功能:将数组的列随机排放*//**************************************************************************/voidRandom_Array(){srand(unsigned(time(NULL)));//随机生成条件(抵消rand函数伪随机效果)cout<6、0;i随机转置系数矩阵}}}/**************************************************************************//*函数名:voidCreat_H()*//*功能:创建系统型奇偶校验矩阵H*//*说明:系统型奇偶校验矩阵H由转置负系数7、矩阵和单位矩阵组成*//**************************************************************************/voidCreat_H(){inti,j,count0=0,count1=0,count2=0,count3=0;/*************生成单位矩阵Ih************///教材P101for(i=0;i
5、********************//*函数名:voidRandom_Array()*//*功能:将数组的列随机排放*//**************************************************************************/voidRandom_Array(){srand(unsigned(time(NULL)));//随机生成条件(抵消rand函数伪随机效果)cout<6、0;i随机转置系数矩阵}}}/**************************************************************************//*函数名:voidCreat_H()*//*功能:创建系统型奇偶校验矩阵H*//*说明:系统型奇偶校验矩阵H由转置负系数7、矩阵和单位矩阵组成*//**************************************************************************/voidCreat_H(){inti,j,count0=0,count1=0,count2=0,count3=0;/*************生成单位矩阵Ih************///教材P101for(i=0;i
6、0;i随机转置系数矩阵}}}/**************************************************************************//*函数名:voidCreat_H()*//*功能:创建系统型奇偶校验矩阵H*//*说明:系统型奇偶校验矩阵H由转置负系数
7、矩阵和单位矩阵组成*//**************************************************************************/voidCreat_H(){inti,j,count0=0,count1=0,count2=0,count3=0;/*************生成单位矩阵Ih************///教材P101for(i=0;i
此文档下载收益归作者所有