资源简介
循环码编码跟解码,matlab实现。出错纠正。
代码片段和文件信息
clear all
n=7; %码长
k=4; %信息位
y=zeros(167);
y(1:)=[0 0 0 0 0 0 0];
y(2:)=[0 0 0 1 0 0 0];
y(3:)=[0 0 1 0 0 0 0];
y(4:)=[0 0 1 1 0 0 0];
y(5:)=[0 1 0 0 0 0 0];
y(6:)=[0 1 0 1 0 0 0];
y(7:)=[0 1 1 0 0 0 0];
y(8:)=[0 1 1 1 0 0 0];
y(9:)=[1 0 0 0 0 0 0];
y(10:)=[1 0 0 1 0 0 0];
y(11:)=[1 0 1 0 0 0 0];
y(12:)=[1 0 1 1 0 0 0];
y(13:)=[1 1 0 0 0 0 0];
y(14:)=[1 1 0 1 0 0 0];
y(15:)=[1 1 1 0 0 0 0];
y(16:)=[1 1 1 1 0 0 0];
for i=1:16
g=[1 1 0 1]; %生成多项式
[ab]=deconv(y(i:)g); %deconv两个多项式相除,a为商,b为余数,y为分子,g为分母
s=mod(b2); %取余
y(i:)=y(i:)+s;
y(i:)=mod(y(i:)2);
end
y(43) = 0; %使y(4:)的a4发生错码
s1=[1 0 1 1 1 0 0];
s2=[1 1 1 0 0 1 0];
s3=[0 1 1 1 0 0 1];
s11=y(4:).*s1;
s12=y(4:).*s2;
s13=y(4:).*s3;
sum1=0;
sum2=0;
sum3=0;
for i=1:7 %判断s11、s12、s13的奇偶性,就可以判断出是为0还是为1.奇为1,偶为0
sum1 = s11(1i) + sum1;
sum2 = s12(1i) + sum2;
sum3 = s13(1i) + sum3;
end
s1jiao = mod(sum12);
s2jiao = mod(sum22);
s3jiao = mod(sum32); %判断s11、s12、s13的奇偶性,就可以判断出使为0还是为1.奇位1,偶为0
cuoma=[s1jiaos2jiaos3jiao];
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1278 2020-03-18 21:01 循环码matlab代码.m
- 上一篇:OMP算法对图像恢复
- 下一篇:buck电路的开环仿真
相关资源
- Matlab在结构动力学中的应用
- 基于灰度投影的图像配准MATLAB
- Matlab三维点云法向量与特征值的简易
- 脉冲压缩代码
- 海浪模型MATLAB仿真代码
- 基于神经网络的自整定PID程序MATLAB
- 最小二乘支持向量机程序代码
- PMX算法MATLAB实现
- 矩阵的QR分解基于施密特正交化
- 红外图像的处理及其MATLAB实现.zip
- 基于MATLAB的人脸识别源代码
- MATLAB最小错误率贝叶斯决策
- 水平集方法的matlab源代码
- 伪距差分定位MATLAB
- sigm激活函数
- 头部CTmatlab三维重建源代码.rar
- matlab中Copula理论及应用
- 矢量控制Matlab仿真图
- KPCA的MATLAB程序1
- 基于matlab的图像篡改检测2
- Matlab实现QR二维码的生成与识别
- lbp MATLAB代码
- 雅克比迭代+高斯迭代+SOR迭代法Matla
- matlab潮流计算PQ解耦法14节点计算程序
- K近邻算法MATLAB
- 光谱拟合matlab代码
- matlab自检模块
- MP算法的代码
- MATLAB QR分解
- 一个类似小球倒立摆的matlab建模及相
评论
共有 条评论