奇偶校验码

← 返回 MOC|← 返回 UART


原理

在 n 位数据后附加 1 位校验位,使整个码字中 1 的个数满足约定的奇偶性:

  • 偶校验:所有位中 1 的个数为偶数
  • 奇校验:所有位中 1 的个数为奇数

例子(偶校验)

数据位1 的个数校验位发送码字
10113(奇)11011 1
10102(偶)00010 0

接收方对整个码字(含校验位)做 XOR,结果为 0 → 无误,结果为 1 → 检测到错误。


局限性

  • 只能检测奇数个错误(1位、3位、5位…错误可检测)
  • 偶数个错误检测不到(两位同时翻转,奇偶性不变)
  • 不能纠错,只能知道”有错”,不知道”哪里错”

二维奇偶校验(水平垂直校验)

将数据排成矩阵,对每行、每列各加一个校验位:

数据:         行校验位:
1 0 1 1        1
0 1 0 1        0
1 1 0 0        0
列校验位:
0 0 1 0        0(角落位)

定位单比特错误(行列交叉点),可纠正 1 位错,检测 2 位错。


本章小结