通过MCP连接 →

输入计算

数学公式

广告

结果

偶校验位
0
将此位附加到数据末尾
数据中 1 的个数 4
数据位长度 7
添加校验位后 1 的总数 4

什么是偶校验位?

校验位(Parity Bit)是在一组二进制数据后额外附加的一位,用来帮助检测数据传输中出现的错误。在偶校验方式下,校验位的取值要保证整组数据中 1 的总个数(包含校验位本身)为偶数。本计算器会统计你输入的二进制串中 1 的个数,并返回正确的偶校验位。

附加偶校验位的二进制数据字,构成传输帧
在数据后附加一个偶校验位,使 1 的总数为偶数。

使用方法

输入由 1 和 0 组成的二进制数据(例如 1011001)并提交即可。计算器会给出需要附加的校验位、原始数据中 1 的个数、数据长度,以及添加校验位后 1 的总个数。

公式解析

偶校验位 \(P\) 等于数据中 1 的个数对 2 取模:

$$P_{\text{even}} = \left(\text{count of 1s in } \text{Binary Data}\right) \bmod 2$$

如果数据中 1 的个数本来就是偶数,校验位就是 0(无需任何改变);如果是奇数,校验位则为 1,从而把 1 的总数补成偶数。

实例演示

以数据 1011001 为例。其中 1 分别位于第 1、3、4、7 位,共有四个 1。4 是偶数,所以 \(4 \bmod 2 = 0\)。因此偶校验位为 0,最终发送的码字为 10110010,1 的总数仍为 4 个——依旧是偶数。

统计二进制串中 1 的个数并选择校验位
数一下 1 的个数;若个数为奇数,则校验位为 1,否则为 0。

常见问题

偶校验和奇校验有什么区别?偶校验让 1 的总数为偶数,奇校验则让其为奇数。两者的校验位互为相反值。

校验位能检测出所有错误吗?单个校验位可以检测任意奇数个位翻转,但无法检测偶数个错误(例如同时翻转两位),也无法纠正错误。

校验位都用在哪里?校验位常见于串行通信(如 UART)、内存(带校验的 RAM),并作为更强大的纠错码的基础构件。

最后更新: