汉明码的运用

本文介绍了汉明码的概念,它是奇偶校验的一种改进,用于检测和纠正一位数据错误。文章详细阐述了汉明码的校验过程,包括如何通过分组和计算校验位来确保数据正确性。此外,还探讨了汉明码的优势,如能够定位单个数据错误,但也指出其局限性,即无法区分一位还是多位错误。
摘要由CSDN通过智能技术生成

什么是汉明码

简单来说汉明码就是在简单奇偶数校验的基础上进行的改进后的校验方式.在平时我们所遇到的数据错误一般都是一位数据发生改变,举个简单的例子:
我们假如传输" 1010 “这段数据,发生错误很可能就是"1010"变为"1011”.

汉明码如何进行校验的

简单奇偶校验法

我们先简单介绍一下简单奇偶校验的方法:
例如一段数据为:“1101010”,我们运用偶校验,这是我们的数据就为"11010101"
最后一位数据1就是我们的校验位,当数据传输后我们对数据进行检查我们就只用计算数据中1的个数就能判断出数据是否发生错误,当然我们说的都是数据只发生一位数据错误.

汉明码的分组

OK,我们明白了简单奇偶校验方法后我们再来看看汉明码是怎么进行校验的.
还是这段数据"1101010"首先我们先确定需要多少位校验码,在这里有个公式:
2r-1 >= k+r ,其中r就是我们需要的校验码个数,k就是我们数据的个数,利用这个公式我们就能算出在这段数据中我们需要位校验码,但这四位校验码放在哪里? 书上给的原话是:幂次方的方位上存放校验位, 什么意思呢?还是1101010这组数据,我们选择校验位就选择1,2,4,8这四位,大家这时应该明白了吧.就是2的次方位.这时我们吧数据写为_ _1_101_010

我们校验位选完了,应该怎么进行分组呢,汉明码首先会把所以数据都进分组,及每一位数据都是一个小组,那么大组

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值