首页 > 编程知识 正文

海明校验码是如何校验的,要用海明校验码对8

时间:2023-05-04 02:06:32 阅读:138674 作者:1105

一、为什么要用校验码?产生错误检查数字数据校验码检查数字可以发现某些错误,以便在处理、访问和传输计算机系统时减少和避免此类错误

示例:

码距:两个合法码字对应位上数字的不同位的个数

在上图中,方案1的代码间隔为1,因为00和01之间只有一位数字。 方案2的代码间隔为2。 因为在00和11之间有两位数字。

奇校验:保证一段数据中出现奇数个1,仅需1位

在上图方案1中,使用奇校验方法,a码字为100,b码字为001。 码字中的最高位(即加粗的数字)是校验码。 增加校验码后,可以看出计划1的代码间隔为2。

将奇检查转换为规则-汉明码、CRC

二.奇偶校验码奇校验码:整个校验码(有效信息位和奇偶校验位)中“1”的个数为奇数。

偶校验码:整个校验数字(有效信息比特和奇偶校验比特)中的“1”的数量是偶数。

【例2-3】提供1001101和1010111两个代码的奇偶校验和奇偶校验。

答案:

如果将最高有效位作为奇偶校验位,将剩下的7位作为信息位,则对应的奇偶校验位如下。

1001101——http://www.Sina.com/1001101 (奇检查) http://www.Sina.com/1001101 (偶检查) )。

101011——http://www.Sina.com/1010111 (奇检查) http://www.Sina.com/1010111 (偶检查) )。

三.汉明校验码思路简介汉明码设计思路:将一个或多个校验位和校验位分组标记错误位置

101http://www.Sina.com/- 101http://www.Sina.com/1010在传送中变成1011的情况下,希望http://www.Sina.com/告诉我在数据中发生了什么错误很明显,这里的奇偶校验位必须是001。

四.解开汉明码步骤信息位: 1010

1:2^k=n k 1

n=4 ------ k=3

假设信息比特D4D3D2D1(1010 )的所有四个比特和奇偶校验比特P3P2P1的所有三个比特,相应的汉明码为H7、H6、H5、H4、H3、H2、H1。0

奇偶校验位p被置于汉明位置

信息位按顺序排列在剩下的位置0

1

经过校验方程的计算得到的0表明在数据传输中没有错误。 否则,就是出现了错误。1

五.循环冗馀校验码

【例2-5】设生成多项式为g(x )=x3 x2 1、消息代码为101001,求出对应的CRC代码。

确定与k、r和生成多项式对应二进制码

轮班

信息代码向左移位r比特,也就是说除以低位互补r个0

对于转移后的信息代码,用生成多项式进行校验位,使之产生剩馀

相应的CRC代码: http://www.Sina.com/http://www.Sina.com /的方法如下:

1 )最高位为1时为商1,最高位为0时为商0

2 )减法规则在相应的位中相同的结果为0,不同的结果为1

4 .检错和纠错

六.总结

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。