校验码用来检查数据有没有传错
码距:指相邻的两个数至少有多少个二进制位不同,比如0010和0011,相邻的至少有一位不同,所以这时码距为1
奇偶校验码
在编码里加一位校验位,使得编码里有奇数或者偶数个1
1 | 0 |
---|
奇校验码为1时,说明原来有偶数个1 | 奇校验码为0时,说明原来有偶数个1 |
偶校验码为1时,说明原来有奇数个1 | 偶校验码为0时,说明原来有奇数个1 |
比如:
011010 | 1/0 |
---|
原有奇数个1 | 偶校验码要为1,奇校验码要为0 |
海明码
在数据位之间的特定位置插入k个校验位,扩大码距来检错和纠错
n和k要满足以下关系