BCC校验(异或校验)原理

BCC校验(异或校验)原理

BCC(Block Check Character/信息组校验码),因校验码是将所有数据异或得出,故俗称异或校验。具体算法是:将每一个字节的数据(一般是每两个16进制的字符)进行异或后即得到校验码。

工作过程

例如:需要异或校验的16进制数据:01 A0 7C FF 02

相同数据位上的值相同则取0,反之则取1

20 0010 0000 最终结果 22 0010 0010 01 0000 0001 A1 1010 0001 A0 1010 0000 DD 1101 1101 7C 0111 1100 FF 1111 1111 02 0000 0010
  1. 首先从第一个8位数据开始,与第二个8位数据进行异或操作,取得结果。即示例中的01A0进行异或操作,计算结果如下:
    :::::::: 0000 0001(01
    XOR 1010 0000(A0
    结果 1010 0001(A1

  2. 将上次的计算结果,与第三个8位数据进行异或操作,取得结果。即A17C进行异或操作,计算结果如下:
    ::::::::1010 0001(A1
    XOR 0111 1100(7C
    结果 1101 1101(DD

  3. 继续将上次的计算结果,与第四个8位数据进行异或操作,取得结果。即EDFF进行异或操作,计算结果如下:
    ::::::::1101 1101(DD
    XOR 1111 1111(FF
    结果 0010 0010(22

  4. 继续将上次的计算结果,与第五个8位数据进行异或操作,取得结果。即2202进行异或操作,计算结果如下:
    ::::::::0010 0010(22
    XOR 0000 0010(02
    结果 0010 0000(20

  5. 由以上计算分析得出异或校验位为:20

作用

在各种总线通信或者在其他数据信息传递过程中,为了保证数据传递的正确性和可靠性,在数据帧中常加载异或校验位。

异或校验工具

BCC校验(异或校验)在线计算

相关信息

百度百科-数据校验

  • 18
    点赞
  • 87
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值