rsdecoderoot.m
来自「该程序是RS编译码器的MATLAB仿真程序」· M 代码 · 共 48 行
M
48 行
%*************************************************************************
% Copyright (C) 2008 Circuit and System Lab of PKU
%
% Created : 2008-5
% Author : houdong(houdong@pku.edu.cn)
%
% File Name : RsDecodeRoot.m
%
% Abstract : Calculating the root for error locator polynomial
%
% Version : 1.0 2008-5 All Right Reserved.
%*************************************************************************
function RootCalc=RsDecodeRoot(ErrPosPolyCalc)
% ErrPosPolyCalc为错误位置多项式,RootCalc为错误位置的根
table=[1 2 4 8 3 6 12 11 5 10 7 14 15 13 9];
l = length(table);
root1 = zeros(1,length(ErrPosPolyCalc)-1);
indexroot1 = 1;
%将元素代入多项式试探
for i=1:l
Addall = 1;
for j=1:length(ErrPosPolyCalc)-1
temp = table(i);
for k=1:j-1
temp = RsSymbolMul(temp, table(i));
end
Addall = RsSymbolAdd(Addall, RsSymbolMul(ErrPosPolyCalc(j+1) ,temp));
end
if Addall == 0
root1(indexroot1) = table(i);
indexroot1 = indexroot1 + 1;
end
end
j=0;
%试探结果在root1中
for i=1:length(root1)
if root1(i)~=0
j=j+1;
end
end
RootCalc=zeros(1,j);
RootCalc=root1(1:j);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?