计算机组成中的海明校验码,相信学过的都会有了解,那么对其中校验位的确定,我想似乎有些人不是很明白,今天我来详细的把如何确定校验位分享一下

首先看下基本的概念  :

2^r≥k+r+1

其中r为校验位 ,k为信息位  信息位是已知的,那么如何确定校验位呢,用一个例子来说明

例如:二进制码1011  求它的海明编码 步骤如下:

1、首先确定信息位,也就是1011了,那么随之K的长度也就知道了是4位

2、确定校验码是几位  根据上述公式我们去试最接近而且满足条件的值,1011的校验位是3,也就是r=3,这样刚好满足了条件

3、确定了校验位的位数之后就是来确定校验位的值以及分配校验位了

首先来看分配校验位:  一般来说校验位都是放在2^n的位置处,也就是1、2、4、8....

其次就是确定分组(也就是确定校验位的值)

通过初步的解题我们知道了校验位+信息位一共是7位,那么我们首先来画一个表,分别把这些数据填进去

注释:  我分别把七个位置用1~7来表示了  在填写信息为的时候也要把高位的数据填到高的位置 ,例如1011  就要类似图中的填法

确定校验位的分组原则:

1.每个位置的校验位确定: 要想校验第几位 (i)  那么i就等于校验位所在位置的加和    举个简单的例子,加入我要教研第3位,那么3=1+2  也就是3 由第一个和第二个校验位来校验,照这样的算法,以此类推,我们就可以知道每个位置都需要哪个校验位来校验了

下面是1011的校验位分配表

按上述方法分配好后,我们已经明确的知道了每个位置都需要利用哪些位置来校验,下面也是关键的一步了

我们要把这些数据汇总起来,也就是每个校验位都校验了哪些位置,就分别把这些位置的值按亦或计算(也就是相同的值就为0  ,不相同时就取1)  这样就得到了每个校验位的值了

下面我们来看看,每个校验位都分别校验了哪些位置 :

由此表可以看出对于校验位所要校验的位置,已经确定了,余下的就是计算检验位的值了,(利用亦或运算)

可得到r1  r2  r3 的值分别为 1,0,0  (如果此处你不会亦或运算,那么建议百度查一查,练习一个简单的例子就会和明白了)

到此位置,我们就求出了校验位的值,同时海明码也就出来了

那么对于海明码的验证纠错等知识我就不在这里介绍了,以上就是我对此部分知识的理解,欢迎交流学习

海明校验码--确定校验位相关推荐

  1. 第二章 数据的表示和运算 2.1.5 汉明(海明)校验码 [计算机组成原理笔记]

    第二章 数据的表示和运算 2.1.5 汉明(海明)校验码 本笔记参考书目: 计算机组成原理(第六版.立体化教材)白中英.戴志涛 2021王道计算机组成原理视频公开课 本节重点: 海明(Hamming) ...

  2. 海明校验码算法和纠错

    背景介绍 由Richard Hamming于1950年提出.还被广泛采用的一种很有效的校验方法,是只要增加少数几个校验位,就能检测出二位同时出错.亦能检测出一位出错并能自动恢复该出错位的正确值的有效手 ...

  3. c语言海明校验码编码,海明校验码的编码规则有哪些?

    在海明码中, 位号数(1.2.3.--.n)为2的权值的那些位,即: 1(2^0).2(2^1).4(2^2).8(2^3).-2^(r-1)位,作为奇偶校验位,并记作: P1.P2.P3 .P4.- ...

  4. 海明码,码距,海明校验码

    海明校验码是由RichardHamming于1950年提出.目前还被广泛采用的一种很有效的校验方法.它的实现原理,是在k个数据位之外加上r个校验位,从而形成一个k+r位的新的码字,使新的码字的码距比较 ...

  5. 计算机底层:海明校验码。

    计算机底层:海明校验码.         海明校验码是由奇偶校验码中的偶校验延申出来的: 计算机底层:奇偶校验码_srhqwe的博客-CSDN博客 了解海明校验码之前需要先了解奇偶校验码. 海明校验码 ...

  6. 一文看懂海明校验码及其计算方法(详细总结)

    网上看了好几篇文章后终于算是捋明白了,但是看到的这些资源要么说得云里雾里,要么干脆说得有问题(然后还被点了好多赞...),无论如何这些都容易误导小白.作为C站多年老潜水员,我还是把海明校验码的要点总结 ...

  7. 白话——海明校验码及编码过程

    学习组原了解到海明校验码,刚开始实在是看不懂,脑子一团浆糊,然后还做到了一道错题更是惨的一批,现在还算是有了一个比较清晰的了解.想着做一个总结过程,希望像我这样的小白能免幸遇难.本文适合对海明校验码不 ...

  8. 海明校验码简析与举例

    海明校验码简析与举例 基本思想: 将有效信息按某种规律分成若干组,每组安排一个校验位,做奇偶测试,就能提供多位检错信息,以指出最大可能是哪位出错,从而将其纠正.实质上,海明校验是一种多重校验. 由Ri ...

  9. 用python写海明校验码

    生成海明校验码 def Input():"""输入字符串'0'与'1'的组合输出两个参数:字符串的长度,字符列表"""string = in ...

最新文章

  1. python使用heapq快速查找最大或最小的 N 个元素
  2. LeetCode题组:第121题-买卖股票的最佳时机
  3. 2020-12-12(c++多维数组的反编译观察)
  4. mysqldump 和 sql命令导入sql文件
  5. 七种常用特征工程技术
  6. Javascript正则表达式完全学习手册
  7. 二分法变种小结(leetcode 34、leetcode33、leetcode 81、leetcode 153、leetcode 74)
  8. node.js util全局变量和事件驱动events
  9. python socket能做什么_[python]初探socket
  10. android sp wp实例,android sp wp详解
  11. TextView赋值int型,并显示
  12. SSO单点登录Spring-Security+CAS+使用手册.doc
  13. IDEA-Maven的Dependencies中出现红色波浪线
  14. 第二章 C++对C的改进和扩展
  15. python之模块 os
  16. 达内java月考_达内java5.第二次月考(附答案)..doc
  17. C语言常见文件操作函数总结详解
  18. 程序员数学--卡特兰数(Catalan number)
  19. 淘宝京东拼多多抖音1688苏宁淘特等关键词搜索商品API接口(关键词搜索商品API接口,关键词搜索商品列表接口,分类ID搜索商品列表接口,关键词搜索商品销量接口)
  20. 学历:敲门砖还是枷锁?

热门文章

  1. 如何快速查找网线-寻线仪
  2. Kubernetes 网络实现——Service网络
  3. 游戏的基础—三消-1
  4. zju 校队选拔 被虐记
  5. 城市地标新名片 LED透明屏价值跃升为建筑传媒溢彩
  6. 把HTML转成PDF的4个方案及实现
  7. 在Linux中使用U盘
  8. EmEditor 主题 Minimal
  9. 恒指简简单单交易系统
  10. VUE类似淘宝选择商品多规格(库存判断)