09奇偶校验码[中章]

数据的校验(奇偶校验码)

在计算机的传递和处理的过程中,由于计算机元件有可能会发生故障,或者由于环境会干扰,所以我们需要一个办法校验数据

总览

总览图

校验原理简介

我们增加一个额外的位,作为校验码的位

校验图

如果发生了错误,我么传递去了一个B(01),但是发生了错误,变成了A(00),我们就需要有个位来判断我们是否发生了错误

可以看到,我们的校验和我们的码距有分不开的关系,码距越大,我们的信息越安全

当码距大于3的时候,如果设计合理,可能具有纠错的能力(海明码)

奇偶校验码

奇偶校验码

数1的个数,如果1的个数不够偶数或者奇数就在前面补零

局限性

如果有偶数个位发生错误,那么偶数校验码无法检测出来,奇数校验码同理,这是校验码的局限性

硬件是如何实现奇偶校验码的

这里用偶数校验码举例子

我们使用异或运

异或

题目

$$
\begin{align}
1 \bigoplus 0 \bigoplus 0 \bigoplus 1 \bigoplus 1 \bigoplus 0 \bigoplus 1 &=
\underline{1 \bigoplus 0} \bigoplus 1 \bigoplus 1 \bigoplus 0 \bigoplus 1 \
&= \underline{1 \bigoplus 1} \bigoplus 1 \bigoplus 0 \bigoplus 1 \
&= \underline{0 \bigoplus 1} \bigoplus 0 \bigoplus 1 \
&= \underline{1 \bigoplus 0} \bigoplus 1 \
&= \underline{1 \bigoplus 1} \
&= 0 \
\end{align}
$$

最终结果为偶数,计算结束

总结

总结图


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!