奇偶校验原理,海明码

奇偶校验原理:通过计算数据中“1”的个数是奇数还是偶数来判断数据的正确性。在被校验的数据后加一位校验位或校验字符用作校验码实现校验。

1、奇偶校验是用来检查数据传输的正确性的方法。奇偶校验能检查出传输数据的部分错误(1位误码能检测出,2位及2位以上检测不出来)。

2、奇校验:就是让原有数据序列中(包括要加上的那位)1的个数为奇数,如果原有的1已经是奇数了,就只能加0,这样1还是奇数个。eg:100011(0)

3、偶校验:就是让原有数据列中(包括要加上的那位)1的个数为偶数,如果原有的1是奇数,想要变为偶数就必须加1。eg:100110(1)

4、奇偶校验的特点:检测不出多位数据错误,更检测不出错误发生在哪位,主要应用于低速数字通信系统中,一般异步传输模式选用偶校验,同步传输模式选用奇校验。

注:如果采用偶校验,校验位应为0(1的个数为偶数);如果采用奇校验,校验位应为1(10010:1的个数才能为奇数)。

海明码:是一种可以纠正一位差错的编码

它是利用在信息位为k位,增加r位冗余位,构成一个n=k+r位的码字,然后用r个监督关系式产生的r个校正因子来区分无错和在码字中的n个不同位置的一位错。

海明码被广泛采用的一种很有效的校验方法,是只要增加少数几个校验位,就能检测出二位同时出错、亦能检测出一位出错并能自动恢复该出错位的正确值的有效手段,后者被称为自动纠错。它的实现原理,是在k个数据位之外加上r个校验位,从而形成一个k+r位的新的码字,使新的码字的码距比较均匀地拉大。把数据的每一个二进制位分配在几个不同的偶校验位的组合中,当某一位出错后,就会引起相关的几个校验位的值发生变化,这不但可以发现出错,还能指出是哪一位出错,为进一步自动纠错提供了依据。海明码编码的关键是使用多余的奇偶校验位来识别一位错误。

 数据位为 n 位,校验位有 k 位,则海明码有 n + k 位,且 n 和 k 需满足 2𝑘 − 1 ≥ n + k 等式( 可以用 2k − 1 > n 简化计算)

海明码的接受:

 例、已知:海明码的监督关系式为:

         S2=a2+a4+a5+a6

         S1=a1+a3+a5+a6

         S0=a0+a3+a4+a6

       接收码字为:"0011101"(n=7)

     求:发送端的信息码。

   解:1)由海明码的监督关系式计算得S2S1S0=011。

                 2)由监督关系式可构造出下面错码位置关系表:

           (以下是一个表格,可能位置关系会错乱,自己更正)

            S2S1S0 000 001 010 100 011 101 110 111

            错码位置 无错 a0 a1 a2 a3 a4 a5 a6

     3)由S2S1S0=011查表得知错码位置是a3。

              4)纠错--对码字的a3位取反得正确码字:"0 0 1 0 1 0 1"

     5)把冗余码a2a1a0删除得发送端的信息码:"0010

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值