Advertisement

编码仿真之汉明码编译码

阅读量:

汉明码的编码与译码演示程序,只需对参数r进行相应调整即可实现。另外,所使用的自定义函数randBinary用于生成随机二进制序列,用户可根据需求自行编写相应的代码。

复制代码
    close all
    clear all
    clc 
    %参数定义
    r=3;
    n=pow2(r)-1;
    k=n-r;
    [H,G]=hammgen(r); 	%生成汉明码的检校和生成矩阵
    %信息位生成
    u=randBinary(k);
    s='message:';
    s=strcat(s,int2str(u));
    disp(s)
    %计算码字
    c=mod(u*G,2);
    s='code:';
    s=strcat(s,int2str(c));
    disp(s)
    %生成单个随机错误
    e=zeros(1,n);
    e(randi(n))=1;
    s='error:';
    s=strcat(s,int2str(e));
    disp(s)
    %确定接受端接收码字
    rec=mod(e+c,2);
    s='receive:';
    s=strcat(s,int2str(rec));
    disp(s)
    %计算伴随式 并 确定

全部评论 (0)

还没有任何评论哟~