当前位置: 首页 > news >正文

计算机网络考海明码吗,计算机网络基础知识之海明码

$2.5.4海明码

海明码是由R.HmIMI1ing在1950年首次提出的,它是一种可以纠正一位差错的编码。

可以借用简单奇偶校验码的生成原理来说明海明码的构造方法。若k(=n-1)位信息位an-1an-2…a1加上一位偶校验位a0,构成一个n位的码字an-1an-2...a1a0,则在接收端校验时,可按关系式

S=an-1+an-2+…+a1+a0

来计算。若求得S=0,则表示元错;若S=1,则有错。上式可称为监督关系式,S称为校.正因子。.在奇偶校验情况下,只有一个监督关系式和一个校正因子,其取值只有0或1两种情.况,分别代表元错和有错两种结果,还不能指出差错所在的位置。不难设想,若增加冗余位,也即相应地增加了监督关系式和校正因子,就能区分更多的情况。如果有两个校正因子.

S1和S0,则S1S0取值就有00、01、10或11四种可能的组合,也即能区分四种不同的情况。若其中一种取值用于表示无错(如00),则另外三种(01、10及11)便可以用来指出.不同情况的差错,从而可以进一步区分出是哪一位错。

设信息位为k位,增加r位冗余位,构成一个n=k+r位的码字。若希望用r个监督关系式产生的r个校正因子来区分元错和在码字中的n个不同位置的一位错,则要求满足以下关系式:

2r>=n+1  或  2r>=k+r+1

以k=4为例来说明,则要满足上述不等式,必须r>=3。假设取r=3,则n=k+r=7,即在4位信息位a6a5a4a3后面加上3位冗余位a2a1a0,构成7位码字a6a5a4a3a2a1a0,其中a2、a1和a0分别由4位信息位中某几位半加得到,在校验时,a2、a1和a0就分别和这些位半.加构成三个不同的监督关系式。在无错时,这三个关系式的值S2、S1和S0全为"0"。若a2错,则S2=1,而S1=S0=0;若a1错,则S1=1,而S2=S0=0;若a0错,则s0=1,而S2=S1=0。S2、S1和S0这三个校正因子的其它4种编码值可用来区分a3、a4、a5、a6中的一位错,其对应关系如表2.1。当然,也可以规定成另外的对应关系,这并不影响讨论的一般性。

表2.1         S2 S1 S0 值与错码位置的对应关系

S2 S1 S0   000  001 010 100  011  101  110  111

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

由表可见,a2、a4、a5或a6的一位错都应使S2=1,由此可以得到监督关系式..

S2=a2+a4+a5+a6....

同理可得:S1=a1+a3+a5+a6..

S0=a0+a3+a4+a6

在发送端编码时,信息位a6、a5、a4和句的值取决于输入信号,它们在具体的应用中有l确定的值。冗余位电、a1和ao的值应根据信息位的取值按监督关系式来确定,使上述三式l中的S2、S1和S0取值为零,即

a2+a4+a5+a6=0

a1+a3+a5+a6=0

a0+a3+a4+a6=0

由此可求得:

a2=a4+a5+a6

a1=a3+a5+a6

a0=a3+a4+a6

已知信息位后,按上述三式即可算出各冗余位。对于本例来说,各种信息位算出的冗余位如表2.2所示。

表2.2   由信息位算得海明码冗余位

信息位    冗余位   信息位    冗余位

a6a5a4a3  a2a1a0  a6a5a4a3   a2a1a0

0000   000   1000   111

0001   011   1001   100

0010   101   1010   010

0011   110   1011   001

0100   110   1100   001

0101   101     1101   010

0110     011   1110   100

0111   000   1111   111

在接收端收到每个码字后,按监督关系式算出S2、S1和S0,若它们全为"0",则认为无错;若不全为"0",在一位错的情况下,可查表2.1来判定是哪一位错,从而纠正之。例如码字0010101传输中发生一位错,在接收端收到的为0011101,代入监督关系式可算得S2=0、S1=1和S0=1,由表2.1可查得S2S1S0=011对应于a3错,因而可将0011101纠正为00101010。

上述海明码的编码效率为4/7。若K=7,按2r>=k+r+1可算得r至少为4,此时编码.效率为7/11。可见,信息位位数越多时编码效率就越高

相关文章:

  • 计算机与用户间信息交流,计算机操作系统题.doc
  • ocr允许导出html吗,用ABBYY把PDF如何转换成HTML的方法
  • 用计算机弹出嚣张,中国计算机用户段永朝解读:“跳出IT看IT”
  • html5 canvas c,HTML5 Canvas 频谱
  • 宜昌哪个学校的计算机专业最好,东升学校计算机专业怎么样啊?
  • 四川计算机学校在哪,四川省联合经济计算机学校位置在哪儿
  • winpe修复计算机无法启动,PE修复系统启动故障的详细教程
  • 计算机软件制图英文,《计算机制图》计算机制图-工程制图.pdf
  • 查询其他系中比计算机科学某一学生年龄小的学生姓名和年龄.,①查询其他系中比计算机科学(CS)某一学生年龄小的学生姓名和年龄。-桃子题库网...
  • 计算机行业的最新技术,计算机行业发展空间巨大 三大必然趋势引领发展
  • 北京大学计算机李昀,2020-2021计算机与信息技术学院学生干部公示名单
  • 计算机丢失ndfapi.dll6,NdfCancelIncident function (ndfapi.h)
  • 绿洲显示服务器,《最后的绿洲》服务器连接问题怎么解决 连接异常问题官方公告...
  • 存储服务器的配置文档,存储系统、服务器配置及技术要求
  • sql服务器虚拟内存不足,解决SQL Server虚拟内存不足情况
  • [PHP内核探索]PHP中的哈希表
  • 10个确保微服务与容器安全的最佳实践
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • Linux各目录及每个目录的详细介绍
  • session共享问题解决方案
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 关于使用markdown的方法(引自CSDN教程)
  • 计算机常识 - 收藏集 - 掘金
  • 力扣(LeetCode)21
  • 那些被忽略的 JavaScript 数组方法细节
  • 如何胜任知名企业的商业数据分析师?
  • 删除表内多余的重复数据
  • Spring第一个helloWorld
  • 整理一些计算机基础知识!
  • #QT(智能家居界面-界面切换)
  • (10)STL算法之搜索(二) 二分查找
  • (20050108)又读《平凡的世界》
  • (arch)linux 转换文件编码格式
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (个人笔记质量不佳)SQL 左连接、右连接、内连接的区别
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (蓝桥杯每日一题)love
  • (论文阅读31/100)Stacked hourglass networks for human pose estimation
  • (免费领源码)python#django#mysql公交线路查询系统85021- 计算机毕业设计项目选题推荐
  • (转)eclipse内存溢出设置 -Xms212m -Xmx804m -XX:PermSize=250M -XX:MaxPermSize=356m
  • .bat文件调用java类的main方法
  • .NET Core WebAPI中封装Swagger配置
  • .NET Core 成都线下面基会拉开序幕
  • .net core 连接数据库,通过数据库生成Modell
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .net反混淆脱壳工具de4dot的使用
  • .NET企业级应用架构设计系列之应用服务器
  • @RequestParam @RequestBody @PathVariable 等参数绑定注解详解
  • [100天算法】-不同路径 III(day 73)
  • [145] 二叉树的后序遍历 js
  • [3D游戏开发实践] Cocos Cyberpunk 源码解读-高中低端机性能适配策略
  • [Android]Android P(9) WIFI学习笔记 - 扫描 (1)
  • [Angular] 笔记 8:list/detail 页面以及@Input
  • [C/C++]数据结构 深入挖掘环形链表问题
  • [Effective C++读书笔记]0012_复制对象时勿忘其每一部分