汉明码

汉明码的分组特点

第一组:XXXX1
第二组:XXX1X
第三组:XX1XX
第四组:X1XXX
第五组:1XXXX

校验位就放在上面每一组中1的位置
就比如:
一组的校验位是00001
二组的是00010

对于任意给出一个数可以根据分组特点判断他在哪个组里
比如00111就在一二三组的交集里

汉明码的纠错

比如给出数据0101
它的汉明码就为0100101(加粗的为校验位)
现将其传送后,检测是否出错

检查出错的方法与设置校验位的方法相同(可以说是给汉明码每一组生成新的校验位)
生成一串二进制数的校验位,只需要将其每一位异或(采用偶校验,1的个数为偶数个)
我们就将每一组的二进制数给异或,如果结果为零就是没有错误

假设接受到 0100111
后经每一组异或得到新的校验位Pi(i为原校验位所在位置)
P4 = 1
P2 = 1
P1= 0
发现P4,P2不为零,所以出错了,只有第六位出错才会导致P4和P2不为零
所以将第六位纠正即可完成纠错

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值