数据的校验

数据在传输的过程中,会受到各种干扰的影响,如脉冲干扰,随机噪声干扰和人为干扰等,这会使数据产生差错。为了能够控制传输过程的差错,通信系统必须采用有效的检错方案。因此产生了数据校验。

数据校验是为保证数据的完整性进行的一种验证操作。通常用一种指定的算法对原始数据计算出的一个校验值,接收方用同样的算法计算一次校验值,如果两次计算得到的检验值相同,则说明数据是完整的。

一、奇偶校验

1. 定义

根据被传输的一组二进制代码中“1”的个数是奇数或偶数来进行校验。

使用:通常专门设置一个奇偶校验位,存放代码中“1”的个数为奇数还是偶数。若用奇校验,则奇偶校验位为奇数,表示数据正确。若用偶校验,则奇偶校验位为偶数,表示数据正确。

2. 应用

eg.  数据位为 10001100 (1)  -> 最后一位为校验位

此时若约定好为奇校验,那么数据表示为正确的,若为偶校验,那么数据传输出错了。

技术特点:简单,可以检测出错误,但无法确切地知道哪里有错,也无法修改,只能要求重传

适用场景:应用广泛,但不适宜在信号噪声较多的环境中

二、格雷码校验

1. 定义

格雷码是一种无权码,也是一种循环码。是指任意两组相邻的代码之间只有一位不同,其余为都相同。

如:5的二进制为0101    6的二进制为0110

        5的格雷码为0111    6的二进制为0101

三、校验和

1. 定义

校验一组数据项的和是否正确。通常是以十六进制为数制表示的形式。如果校验和的数值超过十六进制的FF,也就是255。

2. 应用

eg. 数据01020304的校验和为a。

四、异或校验

1. 定义

BCC校验其实是奇偶校验的一种,但也是经常使用并且效率较高的一种。所谓BCC校验法,就是在发送前和发送后分别把BCC以前包括ETX字符的所有字符按位异或后,按要求变换(增加或去除一个固定的值)后所得到的字符进行比较。相等即认为通信无错误,不相等则认为通信出错。

五、MD5校验

1. 定义

MD5的实际应用是对一段Message(字节串)产生fingerprint(指纹),可以防止被篡改。
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值