📄 新建 文本文档.txt
字号:
%生成发送码字C
M=textread('M.txt') %从文件M.txt中读信息元序列
H=textread('H.txt') %从文件H.txt中读一致校验矩阵H
m=length(H(:,1)) %求解校验位m
k=length(M) %求解信息位数k
n=k+m %求解码长n
G=[eye(k),H(:,[1:k])'] %计算生成矩阵G
C=M*G; %产生码字,该码字为发送码字C
C=mod(C,2) %求模2运算,即变成二进制数
%生成接收码字R
a=eye(n,n);
E=zeros(1,n);
E=a(ceil(n*rand(1,1)),:) %产生随机的错误图样E
%生成接收码字R(由发送码字C和错误图样E进行异或运算)
R=xor(C,E);
R=mod(R,2) %求模2运算,即变成二进制数
%计算伴随式S
S=R*H'; %计算伴随式S,H'为H的转置
S=mod(S,2) %求模2运算,即变成二进制数
%纠错译码,根据伴随式S查找错误图样,然后纠错译码
for i=1:n
if S==H(:,i)' %判断S与H矩阵的哪一列相同
b=zeros(1,n);
b(:,i)=1 %
Y=xor(R,b) %Y为纠错后的码字
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -