有经验的Python大师帮看看CRC16代码实现过程错误在哪里,pythoncrc16,1 装一个 16 位寄存
有经验的Python大师帮看看CRC16代码实现过程错误在哪里,pythoncrc16,1 装一个 16 位寄存
1 装一个 16 位寄存器,所有数位均为 1。
2 取被校验串的一个字节与 16 位寄存器的高位字节进行“异或”运算。运算结果放 入这个 16 位寄存器。
3 把这个 16 寄存器向右移一位。
4若向右(标记位)移出的数位是1,则生成多项式1010 0000 0000 0001和这个寄 存器进行“异或”运算;若向右移出的数位是 0,则返回3。
5 重复3和4,直至移出 8 位。
6 取被校验串的下一个字节
7 重复3~6,直至被校验串的所有字节均与 16 位寄存器进行“异或”运算,并移位8次。
8 这个 16 位寄存器的内容即 2 字节 CRC 错误校验码。
def crc16(x): b = 0xA001 a = 0xFFFF for byte in x: a ^= ord(byte) for i in range(8): last = a % 2 a >>= 1 if last == 1: a ^= b print hex(a)
有什么地方错误的吗?
编橙之家文章,
相关内容
- Python请问PIL渲染小字号汉字截断现象怎么解决,python
- python mongoengine条件查询比较字段方法求助,pythonmongoe
- Pyhton能为视频地址解析做优化吗,pyhton能为视频解析
- Python相对路径的变化机制是什么?,python相对路径机制
- 请问BAE markdown==2.2.0添加发布不成功怎么办,markdown2.2
- 利用Python语言完成类似couchPotato工具,要做哪些准备工作
- Tornado在微信中的应用问题,信息排重写终止请求判断,
- Python2.5抓包停滞在循环中不清楚什么原因,python2.5不清
- 需要将markdown语法的字符串保存在数据库中可行吗,m
- Django图片上传中转服务器怎么实现,,有这样一个需求,
评论关闭