📄 rsdecoderoot.m
字号:
%
% File Name : RsDecodeRoot.m
% Abstract : 错误位置多项式求根子模块,试探法
%
% Version : 1.0 2008-06-03
%*************************************************************************
function [Root] = RsDecodeRoot(ErrorPosPoly)
Deg = length(ErrorPosPoly) - 1;
alphadeg(1,:) = [1;2;4;8;3;6;12;11;5;10;7;14;15;13;9];
temp_root = zeros(1,15);
% 计算本原元的幂次
for jj = 2:Deg
for kk = 1:15
alphadeg(jj, kk) = RsSymbolMul(alphadeg(jj-1, kk), alphadeg(1, kk));
end;
end;
% 分别代入本原元的幂次,求多项式的值
for kk = 1:15
temp = 0;
temp_sum = ErrorPosPoly(1);
for ii = 1:Deg
temp = RsSymbolMul(ErrorPosPoly(ii+1), alphadeg(ii, kk));
temp_sum = RsSymbolAdd(temp, temp_sum);
end;
temp_root(kk) = temp_sum;
end;
% 计算错误位置
num_root_vec = find(temp_root==0);
num_root = length(num_root_vec);
for mm = 1:num_root
Root(mm) = alphadeg(1, num_root_vec(mm));
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -