海明码校验说明

海明码校验:

设数据位是n位。校验位是k位,则满足关系:2^k>=n+k。下面以1010110讲解校验的步骤:

  1. 确定校验位的位置

    校验码所在位置为二进制串中的整数幂,即1、2、4、8位,其余为数值位。如下表:

    位置 1 2 3 4 5 6 7 8 9 10 11
    位置二进制表示 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011
    数值 x_1 x_2 1 x_3 0 1 0 x_4 1 1 0
  1. 计算校验位的值

    x_1值:x_1\bigoplus1\bigoplus0\bigoplus0\bigoplus1\bigoplus0=0 解出x_1=0;同理解出x_2=1,x_3=1,x_4=0

    得到的海明码为:01110100110.

  2. 进行校验

    假设位置为1011的数据由0变成1。将所有位置形如***1,**1*,*1**,1***分别异或:

    0\bigoplus1\bigoplus0\bigoplus0\bigoplus1\bigoplus1=1

    1\bigoplus1\bigoplus1\bigoplus0\bigoplus1\bigoplus1=1

    1\bigoplus0\bigoplus1\bigoplus0=0

    0\bigoplus1\bigoplus1\bigoplus1=1

    上面四组如果有一组异或值为1,则表示有位置数值出错,根据上面只可判断1011位即海明码第11位数据出错。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 奇偶校验、海明码、CRC循环冗余校验码 三种校验码比较重要,需要牢记,在计算机网络中用处较大 奇偶校验 根据被传输...
    正经龙阅读 13,175评论 0 1
  • 一、概要 1、数据的表示:数制及其转换、原码、反码、补码、移码、浮点数、溢出、算...
    _Jason___阅读 8,745评论 0 5
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 14,041评论 6 13
  • 二进制数据经过传送、存取等环节,会发生误码(1变成0或0变成1),这就有如何发现及纠正误码的问题。所有解决此类问题...
    hojun阅读 11,235评论 0 8
  • 海明(汉明)码是广泛采用的一种有效的校验码,它实际上是一种多重奇偶校验码。 海明码的原理就是在有效信息位中加入几个...
    Julianlee107阅读 17,869评论 0 6

友情链接更多精彩内容