目录

  • 一、海明码工作流程
    • 确定校验码位数r
    • 确定校验码和数据的位置
    • 求出校验码的值
    • 检错并纠错
  • 总结

海明码:发现双比特错,纠正单比特错;

一、海明码工作流程

确定校验码位数r

海明不等式:
2r>=k+r+12^r >= k+r+12r>=k+r+1 r为冗余信息位,k为信息位。

确定校验码和数据的位置

校验位按照顺序分别放在2的几次方的位置,数据按照顺序把剩余空格填满即可。

求出校验码的值


假如要求P1P_1P1​校验码的实际值,P1P_1P1​对应的二进制位为0001,P1P_1P1​的二进制位中最后一位为1,P1P_1P1​能够校验所有二进制位中最后一位为1的数据,分别为D1D_1D1​,D2D_2D2​,D4D_4D4​,D5D_5D5​,接着令所有要检验的位异或值为0(包括P1P_1P1​本身):
P1⊕D1⊕D2⊕D4⊕D5=0P_1\oplus D_1\oplus D_2 \oplus D_4 \oplus D_5=0P1​⊕D1​⊕D2​⊕D4​⊕D5​=0通过上述公式可以得到P1=0P_1=0P1​=0。

同理,对于P2P_2P2​,P2P_2P2​的二进制位0010,则P2P_2P2​能够校验在二进制中第二位为1的所有数据。

因此,可以求得101101的海明码为0010011101。

检错并纠错

假设0010011101数据在传输过程中第五位出错,则接收端接收到的数据为0010111101。

现在开始检错并纠错,令所有要校验的位进行异或运算,类似于第三步【求出校验码的值】。

&P_1&异或得到的值为1,&P_2&异或得到的值为0,&P_3&异或得到的值为1,&P_4&异或得到的值为0。将其拼接为二进制值,则该值为0101,对应的十进制数为5,这样就找到了出错的位置,即出错位是第5位。

注意,海明码只能发现双比特错但是无法纠正,海明码可以纠正单比特错。

总结

【计算机网络】—— 差错编码(纠错编码)相关推荐

  1. 计算机网络-字符编码的由来(为什么会有乱码,ASCII、Unicode、GBK和UTF-8字符编码区别)

    为什么我们在网络中传输数据,需要指定字符编码,例如使用UTF-8.GBK等编码.那么字符编码到底是什么?以前我也很困惑这个问题,但是学习了计算机网络后我们知道,由于底层电路的设计本质,只能是识别0和1 ...

  2. 2.1.3 计算机网络之编码与调制

    文章目录 0.思维导图 1.背景知识 2.编码与调制 3.四种编码与调制方式 (1)数字数据`编码`为数字信号 1️⃣非归零编码 2️⃣归零编码 3️⃣反向不归零编码 4️⃣曼彻斯特编码 5️⃣差曼彻 ...

  3. 计算机网络物理层-编码技术实现

    一.编码技术 编码技术 描述 归零编码(RZ) 信号电平在一个码元内要恢复到0状态 非归零编码(NRZ) 高1低0 反向不归零编码(NRZI) 前后信号翻转表示后面一个码元为0,电平不变代表1 曼彻斯 ...

  4. 计算机网络曼彻斯特编码与差分曼彻斯特编码

    曼彻斯特编码与差分曼彻斯特编码 (1)两种编码在中间均需要进行一次跳变 (2)曼彻斯特编码:吉大原则为负到正为1,正到负为0 (3)差分曼彻斯特编码:为0时发生跳变,为1时不发生跳变,在此处跳变的含义 ...

  5. 计算机网络cdma编码实验,计算机网络CDMA练习题(Computer network CDMA exercises).doc...

    计算机网络CDMA练习题(Computer network CDMA exercises) 计算机网络CDMA练习题(Computer network CDMA exercises) The firs ...

  6. c 语言差错编码实验结果,C语言程序设计实验报告(四).doc11111111111111111.doc

    C语言程序设计实验报告(四).doc11111111111111111 C语言程序设计实验报告 姓 名吴文重学 号52系 别数学系班级2班主讲教师徐时芳指导教师徐时芳实验日期2011-11-8专业10 ...

  7. 计算机网络基础(理论知识全)

    第一章.计算机网络概述 一.计算机网络的基本概述 1.计算机网络定义 计算机网络是互连的.自治的计算机的集合 2.协议的定义 定义:协议是网络通信实体之间在数据交换过程中需要遵循的规则或约定,是计算机 ...

  8. 计算机网络原理 笔记整理

    计算机网络原理 ╭第一章 计算机网络概述|第二章 网络应用|第三章 传输层|第四章 网络层内容大纲<|第五章 数据链路层与局域网|第六章 物理层|第七章 无线与移动网络╰第八章 网络安全基础第一 ...

  9. 2023最新广西大学计算机电子信息考研复试之计算机网络和软件工程 828数据结构与程序设计上岸冲刺复试宝典(复试版/复试资料)

    2023最新广西大学计算机电子信息考研复试之计算机网络和软件工程 828数据结构与程序设计上岸冲刺复试宝典(复试版/复试资料) 适用专业:计算机科学与技术(学硕) 计算机技术(专硕).人工智能(专硕) ...

最新文章

  1. checkbox管理
  2. IE与Cognos的那些事
  3. 4.从单应矩阵中分离得到内参和外参(需要拍摄n=3张标定图片)
  4. mybatis-spring 集成
  5. 孩子有必要学python吗_不学就落后了?孩子都能学得Python编程,究竟是什么?
  6. 如何修改PKG_CONFIG_PATH环境变量
  7. [转]SQL语句资料
  8. 《奠基计算机网络》2011年8月15日出版 视频下载 http://www.91xueit.com
  9. 制作软件工程师风格的qq头像
  10. As Manufacturers Buckle, Winners Emerge From Havoc
  11. 网络安全与渗透:漏洞攻击—— msf(四)此生无悔入华夏,男儿何不带吴钩
  12. Twitter群推王:推特全方位营销利器
  13. Cannot run code from this file in conjunction with non encoded files
  14. Transfomer XL翻译
  15. 剑指Offer II --- 2021/9/2
  16. 好的代码是优质资产、莫让代码成为负债
  17. 通过西部世界来盘点近来人工智能研究的发展
  18. 深蓝学院SLAM理论与实践课程
  19. 网络工程师从入门到精通(学习总目录——持续更新)
  20. 乌云: 人生苦短,我用 Python:)做mixin app开发教程 - Mixin Network开发者访谈系列...

热门文章

  1. Visio中如何画正弦波
  2. 编写一个脚本,用它来操纵QTP的运行
  3. ES6 系列之 WeakMap的使用示例
  4. 面试官系统精讲Java源码及大厂真题 - 32 ReentrantLock 源码解析
  5. Intellij IDEA+Tomcat+JRebel热部署
  6. cookie的设置与取值
  7. layuimini 图标颜色便捷指定
  8. springmvc5.3 之后版本 舍弃AntPath地址匹配模式通配符 “**”用法改变。
  9. Spring框架声明式事务管理
  10. 1,2,3……,9组成3个三位数abc,def和ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3.输出所有解。