gusucode.com > BCH 编解码的MATLAB 实现源码程序 > code/bch/creatG.m
function G=creatG(k,g) %clear all; row=k; n=length(g); %row=11; col=row-1+n; A=zeros(row,col); %A(end,row:end)=[1 0 0 1 1]; A(end,row:end)=g; for i=1:row-1 A(end-i,row-i:end-i)=A(end,row:end); end %A(end-1,2:end-1)=A(end,3:end); %A(end-2,1:end-2)=A(end-1,2:end-1); for j=row:-1:2 for i=j-1:-1:1 if(A(i,j)>0) C1=A(i,:) C2=A(j,:) C=C1+C2 B=mod(C,2); A(i,:)=B; end clear C1 C2 C B end end G=A;