RM码的生成矩阵1.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
RM码的生成矩阵1

RM码的生成矩阵 RM码是一类纠正多个差错的编码,这类码构造简单的构造,结构特性丰富。 对于任意整数m和r,0rm,存在一个二进制r阶RM码,记为RM(r,m),其参数如下: 码长: n=; 维数: k(r,m)=1+ 最小距离: d=2 RM码的生成矩阵构Grm(r,m)成如下: V0={1,1,...........................................1} Vi={0,.....0,1.....1,0.....0,..........,1......1} ViVj={Vi0*Vj0,..............,Vi(n-1)*Vj(n-1)}.....一直到r次相乘 即Grm(r,m)={V0,V1,........,Vm,V1V2,........Vm-1Vm.......至r次相乘} 用C++编写Grm(r,m)思想如下: 3.1 码长计算:利用for循环m次,每次乘以二 令n的初值为1 for(i=1;i=m;i++) n=n*2; 维数的计算:先定义一个递归函数fac1( int a)完成一个整数的阶乘计算;在定义一个函 数 fac2()完成排列组合的计算,其中调用fac1( int a)函数; 代码如下: int fac1(int a) { if(a==1) return 1; else return a*fac1(a-1); } int fac2(int a,int b) { return fac1(a)/fac1(b)/fac1(a-b); } 令k的初值为1,利用for循环r次,累加每次排列组合数: for(i=1;i=r;i++){ k=k+fac2(m,i); } 3.2各行向量的生成方法: 对于V0向量直接用赋除值的方法: for(j=0;jn;j++) { *(*(g+0)+j)=1; cout *(*(g+0)+j) ; } 对于Vi向量生成方法: 先算出码长2(i-1)整除n,将码长分成多少组0,1交替的序列;对于Vi序列中的 第J 个数整除2(i-1),得的商为奇数是,则第J 个数为1,否则为0; for(i=1;i=m;i++){ a=(int)pow(2,i-1); b=n/a; for(j=0;jn;j++){ if((j/a)%2==0) *(*(g+i)+j)=0; else *(*(g+i)+j)=1; cout *(*(g+i)+j) ; } 对于ViVj向量的生成方法: 利用三个for循环,第一个变量i为控制Vi向量不变,通过第二个变量j的自加,分别使异于Vi的向量与Vi相乘,第三个变量是控制Vi和Vj的第a个元素相乘。其代码如下: for(i=1;im;i++){ for(j=i+1;j=m;j++){ for(a=0;an;a++){ *(*(g+m+i)+a)= (*(*(g+i)+a))* (*(*(g+j)+a)); cout *(*(g+m+i)+a) ; } cout endl; } } } 下面以m=4,r=2为例,其总的代码如下: #include iostream.h #include math.h void main(){ int a,b,m=4,r=2,n=1,k=1; int i,j; // cin m r; //cout m = m r= r endl; for(i=1;i=m;i++) n=n*2; //计算码长 cout 码长为: n endl; int fac1(int a); // 计算码的维数 int fac2(int a,int b); for(i=1;i=r;i++){ k=k+fac2(m,i); } cout 该码的信息位长度为: k endl; int **g=new int*[k]; //创建一个二维数组,存放生成矩阵 for( i=0;ik;i++) {

文档评论(0)

wnqwwy20 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档