【计算机组成原理】奇偶校验码

数据传输的过程中会发生错误,我们如何发现并对其进行修改呢?

奇偶校验码

校验原理

若传输的数据有四个信息,这里只有四种状态,需要两个bit映射。

信息ABCD
编码00011011

码字:有若干的代码组成的一个字(编码)叫码字。上表的00、01就为码字。
两个码字之间的距离:两个码字,每位比较,具有的不同的位数的个数为两个码字之间的距离。
码距:一种编码方案可能有若干合法的码字,所有码字之间最小的距离为码距。

若两台计算机相互传输数据

若码距为1,若发生数据的跳变,有码字只发生一位数据的改变,计算机大概率不会察觉。

这时候 上面的数据可以使用3bit的数据进行表示,有四个冗余的非法状态。且该编码的码距为2。

信息ABCD
编码100001010111

这种情况下,数据如果发生了1个bit的数据跳变,就会变为一个非法的状态,这时候计算机就会发现发生了非法的跳变。

因此,编码方案的码距和该方案的检错能力有一定关联。

码距能力
1无能力
2有检错能力
3+若设计河里、会有检错、纠错能力

奇偶校验

奇校验码:整个校验码(有效信息位+校验位)中“1”的个数位为奇数个。

偶校验码:整个校验码(有效信息位+校验位)中“1”的个数位为偶数个。

校验位可能在信息位的前面。也可能在信息位的后面

Ex:若给出两个编码1001101和1010111、给出其对应的奇偶校验吗。

1001101:

奇校验:11001101 偶校验:01001101

1010111:

奇校验:01010111 偶校验:11010111

偶校验位的硬件实现(进行异或运算):将所有的位一起进行异或出的结果就位偶校验位。

偶校验

若将偶校验码进行异或计算,若结果为1的话,说明出错。
但若偶数的bit位发生错误,无法发现其发生了错误。

奇校验

若将奇校验码进行异或计算,若结果为0的话,说明出错。
但若偶数的bit位发生错误,无法发现其发生了错误。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值