1 | 0 | 0 | 0 | 1 | 1 | 1 |
0 | 1 | 0 | 0 | 1 | 1 | 0 |
0 | 0 | 1 | 0 | 1 | 0 | 1 |
0 | 0 | 0 | 1 | 0 | 1 | 1 |
MATLAB实现线性分组码的编码
原创
©著作权归作者所有:来自51CTO博客作者小罗啦啦的原创作品,请联系作者获取转载授权,否则将追究法律责任
l 要求:
某(7,4)汉明码的生成矩阵为G,用MATLAB仿真编码过程。其中G为
l 主程序如下所示:
G=[1 0 0 0 1 1 1;
0 1 0 0 1 1 0;
0 0 1 0 1 0 1;
0 0 0 1 0 1 1];%十进制生成矩阵
m=[1 0 0 0];%十进制数 信息组
result = groupCoding(m,G)%对信息组进行编码,得到的结果为二进制数
其中groupCoding函数如下:
function c = groupCoding(m,G) %m为信息组,G为生成矩阵,均为十进制
[row,col] = size(G);%G的行数为k,;列数为n
if length(m)~= row
disp('信息组尺寸与生成矩阵不一致');
end
r=mod(m*G,2);% m*G得到m的码字
%将码字转化为二进制
tempSum = 0;
for i=1:length(r)
if r(i) == 1
tempSum = tempSum +2^(length(r)-i);
end
end
c = dec2bin(tempSum);
这个也没啥技术含量,重点还是译码里的标准阵列译码表。明天有空发上。
上一篇:启程
下一篇:Qt:Qt 的昨天,今天,明天
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
生成验证码-超简单
轻松应对验证挑战:简单验证码的实现方法!
验证码 Java -
3 信道编码之线性分组码github