gusucode.com > ​BCH 编解码的MATLAB 实现源码程序 > code/bch/getcode.m

    function[bch]=getcode(data,g)
 g1=g;
 
  for i=1:4
    data(i+11)=0;
  end 
  
c=data;
for n=1:10
    c=xor(c,g1);
    g1=g;
    for i=1:14
        if c(i)==1
             k=i;
            break
        end
    end
    if  k>11
        break
    end
    g1=circshift(g1,[0 k-1]);
end

 for i=1:11
    bch(i)=data(i);
 end
 
for i=1:4
    bch(i+11)=c(i+11);
end