一、详细步骤

1、海明码,也称汉明码

2、海明码=数据码+校验码

3、假设数据码为1100,有4位,即n=4

4、由公式2^k>=n+k+1,解得k=3,即需3个校验码

5、校验按2^i(即2的i次幂,如1、2、4、8、16、32...)留出空来,一会填校验码

6、分组

1)我们需要确认H1、H2、H4这三个校验位都来校验哪些位置

2)将1、2、4的二进制码写出来,最高位补到3位(前面算的k=3),如下

3)将0替换为*,作为通配表,如下

4)将1到7的二进制列出来,如下

5)将这几个数与上面的通配表进行匹配(把有与通配表1相同位置的数放一列),如下

6)因此我们可以确定:

H1负责H1、H3、H5、H7的校验

H2负责H2、H3、H6、H7的校验

H4负责H4、H5、H6、H7的校验

7、用偶校验法,求出校验位是1还是0

H3、H5、H7的1的个数为奇数,因此H1=1

H3、H6、H7的1的个数为偶数,因此H2=0

H5、H6、H7的1的个数为偶数,因此H4=0

8、至此我们得出了完整的汉明码,如下

9、查错( ^ 表示按位异或)

第一组 p1 = H1 ^ H3 ^ H5 ^ H7

第二组 p2 = H2 ^ H3 ^ H6 ^ H7

第三组 p3 = H4 ^ H5 ^ H6 ^ H7

10、画圈(这样方便目视)

1)如编码完全正确,那么p1、p2、p3的结果都是0

2)如果p1 = 1,p2 = p3 = 0,则说明p2与p3组的成员2、3、4、5、6、7都没出错,则H1错误

3)以此类推

11、总结

二、参考连接

1、《汉明码(海明码)》通俗易懂https://blog.csdn.net/weixin_61985100/article/details/123300540

2、海贼宝藏https://www.haizeix.com

【海明码】一题学会海明码!相关推荐

  1. 海明码检错与纠错,经典例子讲解~

    平凡也就两个字: 懒和惰; 成功也就两个字: 苦和勤; 优秀也就两个字: 你和我. 跟着我从0学习JAVA.spring全家桶和linux运维等知识,带你从懵懂少年走向人生巅峰,迎娶白富美! 关注微信 ...

  2. 奇偶校验码和海明码原理

    奇偶校验: 不管是奇校验还是偶校验,监督位都在数据的后面,而且仅一位.如: 信息位 监督位 111001110 1 编码原理: 信息位 监督位 1110 0110 00 1110 0110 00 奇校 ...

  3. 计算机组成原理课程设计海明码,海明码生成与校验电路的设计

    海明码生成与校验电路的设计 沈阳航空航天大学 课课 程程 设设 计计 报报 告告 课程设计名称:计算机组成原理课程设计计算机组成原理课程设计 课程设计题目:海明码生成与校验电路的设计海明码生成与校验电 ...

  4. 【计算机网络】数据链路层 : 差错控制 ( 纠错编码 | 海明码 | “海明码“ 原理 | “海明码“ 工作流程 | 确定校验啊位数 | 确定校验码和数据位置 | 求校验码值 | 检错纠错 )★

    文章目录 一. "海明码" 工作原理 二. "海明码" 工作流程 三. 确定校验码位数 四. 确定校验码和数据位置 0. 确定校验码位置 1. 引入二进制位 2 ...

  5. 海明码知识透析--网工必备

    海明码的相关运算 这段时间在备考网络工程师,51可帮了大忙,不仅各种知识点都有,还有海量针对性的模拟考题.这不做题的时候发现海明码经常出现在题目中,却次次做错.引起了我的警觉,这恐怕就是热考点和难点了 ...

  6. 海明码相关知识及解题方法

    ------海明码的详细解读及做题步骤------ ①数据位为n位,检验位有k位 则海明码=n+k 当且仅当:2^k-1≥n+k ②用符号D代表数据位,P代表检验位,H代表海明码----->满足 ...

  7. 图解奇偶校验与海明码的详细过程

    文章目录 1.校验码的基本概念 2.奇偶校验码 3.海明码 3.1 校验码的个数 3.2 校验码的位置 3.3 校验关系 3.4 计算校验码的值 3.5 检错与纠错 1.校验码的基本概念 名不正则言不 ...

  8. 海明码编码和校验原理与实现【转载】

    海明编码与检验原由 以内存为例, 如果内存所处的电磁环境比较复杂, 或者空间环境下受到带电粒子的打击, 那么可能导致电容的充放电或者触发器的翻转(SRAM). 这样会导致存储信息的改变. 如果不校验, ...

  9. 易理解的海明码的编码和校验原理【转载】

    海明码简单分析(方法1) 海明码(也叫汉明码)具有一位纠错能力.本文以1010110这个二进制数为例解释海明码的编码和校验方法. 编码 确定校验码的位数x 设数据有nnn位,校验码有xxx位.则校验码 ...

最新文章

  1. what is success?
  2. linux 下,解决tomcat服务器接收中文乱码的问题
  3. 计算机组成原理与应用,计算机组成原理简答与应用
  4. android 仿携程选择城市,类似携程商旅的城市选择器 CityPicker
  5. 分页池内存持续增长_鸿蒙内核源码分析(从进程/线程视角看内存)
  6. angularjs 路由 异步加载js
  7. [转载] 百科全说——潘怀宗:“认识”食品添加剂(10-10-20)
  8. CUDA的内存泄露问题及解决办法
  9. Tortoise SVN 如何汉化(最简单的处理方式,一看就会)
  10. h5 默认为移动端页面_HTML5默认登录页面
  11. 英文论文查重用什么软件比较好?
  12. SDS 2.0:能否让高端存储服“软”?
  13. 小技巧:办公邮箱怎么登录foxmail?outlook如何群发单显?
  14. Android开发学习心得 (一) 生如夏花之绚烂,死如秋叶之静美 -- App的生死轮回
  15. MyEclipse:详细使用教程
  16. 【费用流】洛谷1251 餐巾计划问题
  17. 网络基础--TCP/IP网络基础
  18. linux怎么取消文件隐藏命令,linux命令行下隐藏文件的操作
  19. Python 进程间的通信
  20. REW声学测试(二):离线测试

热门文章

  1. Python图像识别实战(三):基于OpenCV实现批量单图像超分辨重建(附源码和实现效果)
  2. 【DeepDive】使用教程
  3. iApp通知系统更新图库
  4. 真正免费的天气API接口
  5. 金融风控 特征构造(有点多!!!)
  6. 陕西专科计算机学校排名2015,2015陕西专科学校排名及排行榜
  7. 地震勘探基础(十四)之地震反演
  8. maven helper(解决Maven依赖冲突的利器)
  9. android密码登录,简单的密码登录功能实现(Android)
  10. 服务器显示RL19,国防重器:自主可控多单元服务器飞龙RL5018亮相