校验码详解

文章目录

  • 校验码
    • 奇偶校验码
    • 海明校验码
      • 思路
      • 求解步骤
      • 案例
      • 格式变化
      • 1位纠错,2位检错【需要+全校验位】
      • 总结
    • 循环冗余校验
      • 检错纠错
      • 小结

校验码

概念:

数据校验码是一种常用的带有发现某些错误或自动改错能力的数据编码方法

基本原理:

加进一些冗余码,使合法数据编码出现某些错误时,就成为非法编码。

码距:

是根据任意两个合法码之间至少有几个二进制位不相同而确定的,
若仅有一位不同,称其码距为 1。

校验码详解_第1张图片
校验码详解_第2张图片

奇偶校验码

方法:

通常是为一个字节补充一个二进制位,称为校验位,
通过设置校验位的值为 0或 1 的方式,
使字节自身的 8 位和该校验位含有 1 值的位数一定为奇数或偶数。

只能发现一位错或奇数个位出错,但不能确定是哪一位错。

校验码详解_第3张图片

海明校验码

思路

校验码详解_第4张图片

求解步骤

校验码详解_第5张图片
校验码详解_第6张图片校验码详解_第7张图片

案例

校验码详解_第8张图片

格式变化

校验码详解_第9张图片

1位纠错,2位检错【需要+全校验位】

校验码详解_第10张图片

假设P1和P2全部出错,那么S1和S2就都是1,S3=0,
这时候011对应的是3,原则上说明了H3这一位发生了错误
但是显然这个结论是不对的。

实际上,在使用海明码的时候,需要加上全校验位

总结

校验码详解_第11张图片

循环冗余校验

校验码详解_第12张图片

检错纠错

校验码详解_第13张图片

	信息位置+校验位=7,而校验位=3
	3位的信息最多可以表示8中状态

校验码详解_第14张图片

	这种情况下就可能无法判断是哪一位出错

小结

校验码详解_第15张图片

你可能感兴趣的:(计算机组成原理,计算机组成原理)