EDA365电子论坛网

标题: MATLAB实现汉明码编码译码 [打印本页]

作者: zxcvbvbnmn    时间: 2021-6-1 09:49
标题: MATLAB实现汉明码编码译码
汉明码的编码就是如何根据信息位数k,求出纠正一个错误的监督矩阵H,然后根据H求出信息位所对应的码字。
  1、根据已知的信息位数k,从汉明不等式中求出校验位数m=n-k;
  2、在每个码字C:(C1,C2,⋯ ,C2m -1)中,用c02 ,c12 ,cn-12作为监督位,剩下的位作为信息位;
  3、用二进制数字表示2m-1 列,得到2m-1列和m行监督矩阵H;
  4、用3步的H形成HCT =0,从而得出m个监督方程;
  5、将已知的信息代入方程组,然后求出满足上述方程组的监督位c (i=0,1,⋯ ,m一1)。 例如,用以上方法,很容易求出[7,4,3]汉明码的监督矩阵:
3 k, e& c; ~3 p) X9 r
. Z) Y# I+ g0 ]  G
及编码所对应的码字为C=011001。

) W1 H% h1 h# h7 \+ G8 w9 |  M/ c+ A6 m

: t0 m  n. @( |- X3 ^
8 g) Y* B5 \$ U" C

. [& W$ v" @9 s9 c* ~/ n: f  l

' e7 z" _  v) B! L: }

: \- W+ ?1 H/ [4 }# T
, X; Z" u( e) W2 h) Z& C1 k

2 z2 f, S* A2 z8 U$ N6 G运行结果:8 F' u  j" o* |
# i. d2 A; t# O. y: ^1 Y
" j6 E, n' b+ G) q( [

作者: nevadaooo    时间: 2021-6-1 11:01
我去试着跑跑
作者: shapeofyou888    时间: 2021-6-1 14:52
汉明码的编码就是如何根据信息位数k,求出纠正一个错误的监督矩阵H,然后根据H求出信息位所对应的码字
作者: justlikethisis    时间: 2021-6-1 16:55
我也来试试




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2