• 大小: 906B
    文件类型: .m
    金币: 2
    下载: 1 次
    发布日期: 2021-05-13
  • 语言: Matlab
  • 标签: 代码  

资源简介

当时学密码学时,作业有一道题求序列的最小生成多项式。嫌麻烦,用matlab写了一个Berlekamp-Massey算法的程序。

资源截图

代码片段和文件信息

clearclc
a = [10011011000111010100];%二元序列
l = zeros(1length(a)+1);
d = zeros(1length(a)+1);
n0 = find(a(:)~=01);
fx = cell(1length(a)+1);
for i = 1:n0
    fx{i}=1;
end
fx{n0+1} = zeros(1n0+1);
fx{n0+1}(1)=1;
fx{n0+1}(n0+1)=1;
l(2:n0)=0;
d(n0)=a(n0);
l(n0+1)=n0;
for i = n0+2:length(a)+1
    fx{i}=(mod(fx{i-1}2));
    d(i-1) = mod(sum(a(i-1:-1:i-length(fx{i})).*fx{i})2);
    if d(i-1) == 0 

评论

共有 条评论