Python CRC16校验算法
Posted 风清云淡 初心不改
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python CRC16校验算法相关的知识,希望对你有一定的参考价值。
def crc16(x, invert): a = 0xFFFF b = 0xA001 for byte in x: a ^= ord(byte) for i in range(8): last = a % 2 a >>= 1 if last == 1: a ^= b s = hex(a).upper() return s[4:6]+s[2:4] if invert == True else s[2:4]+s[4:6]
示例:
print(crc16("012345678", True))
print(crc16("012345678", False))
print(crc16("010600010017", True))
计算结果:
以上是关于Python CRC16校验算法的主要内容,如果未能解决你的问题,请参考以下文章