⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 multiply.m

📁 BCH中的组件
💻 M
字号:
function out=multiply(a,b)
%实现的gf(2^8)的多项式乘法
%a(x)*b(x) mod p(x)  其中p(x)=x^8+x^4+x^3+x^2+1
output=zeros(1,8);
output(8)=rem(a(8)*b(1)+a(7)*b(2)+a(6)*b(3)+a(5)*b(4)+(a(4)+a(8))*b(5)+(a(3)+a(7)+a(8))*b(6)+(a(2)+a(6)+a(7)+a(8))*b(7)+(a(1)+a(5)+a(6)+a(7))*b(8),2);

output(7)=rem(a(7)*b(1)+a(6)*b(2)+a(5)*b(3)+(a(4)+a(8))*b(4)+(a(3)+a(7)+a(8))*b(5)+(a(2)+a(6)+a(7)+a(8))*b(6)+(a(1)+a(5)+a(6)+a(7))*b(7)+(a(4)+a(5)+a(6))*b(8),2);

output(6)=rem(a(6)*b(1)+a(5)*b(2)+(a(4)+a(8))*b(3)+(a(3)+a(7)+a(8))*b(4)+(a(2)+a(6)+a(7)+a(8))*b(5)+(a(1)+a(5)+a(6)+a(7))*b(6)+(a(4)+a(5)+a(6))*b(7)+(a(4)+a(5)+a(3))*b(8),2);

output(5)=rem(a(5)*b(1)+(a(4)+a(8))*b(2)+(a(3)+a(7)+a(8))*b(3)+(a(2)+a(6)+a(7)+a(8))*b(4)+(a(1)+a(5)+a(6)+a(7))*b(5)+(a(4)+a(5)+a(6))*b(6)+(a(4)+a(5)+a(3))*b(7)+(a(2)+a(3)+a(4)+a(8))*b(8),2);

output(4)=rem(a(4)*b(1)+(a(3)+a(8))*b(2)+(a(2)+a(7)+a(8))*b(3)+(a(1)+a(6)+a(7))*b(4)+(a(5)+a(6)+a(8))*b(5)+(a(4)+a(5)+a(7)+a(8))*b(6)+(a(3)+a(4)+a(6)+a(7))*b(7)+(a(2)+a(3)+a(5)+a(6))*b(8),2);

output(3)=rem(a(3)*b(1)+(a(2)+a(8))*b(2)+(a(1)+a(7))*b(3)+(a(6)+a(8))*b(4)+(a(5)+a(7))*b(5)+(a(4)+a(6)+a(8))*b(6)+(a(3)+a(5)+a(7)+a(8))*b(7)+(a(2)+a(4)+a(6)+a(7))*b(8),2);

output(2)=rem(a(2)*b(1)+a(1)*b(2)+a(8)*b(3)+a(7)*b(2)+a(6)*b(5)+a(5)*b(6)+(a(4)+a(8))*b(7)+(a(3)+a(7)+a(8))*b(8),2);

output(1)=rem(a(1)*b(1)+a(8)*b(2)+a(7)*b(3)+a(6)*b(4)+a(5)*b(5)+(a(4)+a(8))*b(6)+(a(3)+a(7)+a(8))*b(7)+(a(2)+a(6)+a(7)+a(8))*b(8),2);
out=output;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -