Python中文
首页
教程
问答
标签
搜索
登录
注册
在Python中用十六进制字符串创建所有字节的异或校验和
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>在尝试与一个名为BSS London Blu-80的音频处理设备通信时,我发现必须发送一个通过对消息执行异或操作而创建的校验和。发送的消息示例如下:</p> <pre><code>0x8d 0x1e 0x19 0x1b 0x83 0x00 0x01 0x01 0x00 0x00 0x00 0x4b 0x00 0x00 0xc2 </code></pre> <p>0xc2是该消息的正确校验和。</p> <p>“校验和是消息正文中所有字节的单字节异或(xor)。”</p> <p>消息体是上面的那个减去校验和。</p> <p>但是,我尝试的代码:</p> <pre><code>packet = '0x8d 0x1e 0x19 0x1b 0x83 0x00 0x01 0x01 0x00 0x00 0x00 0x4b 0x00 0x00' xor = 0 i = 0 while i < len(packet): xor = xor ^ ord(packet[i]) i += 1 >>print xor 46 >>print hex(xor) '0x2e' </code></pre> <p>很明显我在这里做错了什么,而且没有完全理解这一点。任何帮助都将不胜感激。</p> <p>谢谢!</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>8位校验和解决方案</p> <blockquote> <blockquote> <blockquote> <p>r=hex(0x37^0x37^0xA0^0x00^0x07^0x63^0x80^0x8A^0x05^0x0C)[2:].upper()</p> </blockquote> </blockquote> </blockquote> <p>结果-“C7”</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何用if条件捕获函数返回值
1 回答
如何用if语句判断列表中是否存在该索引?
8 回答
如何用if语句向量化numpy数组中的最大值?
6 回答
如何用IF语句有条件地保存零碎的结果?
2 回答
如何用if语句测试异常对象?
2 回答
如何用IF语句编写二元函数
7 回答
如何用igraph在python中创建顶点权重的图?
8 回答
如何用ijson和python解析json
1 回答
如何用iloc求子矩阵
10 回答
如何用Imagemagick或PIL绘制高质量的图像笔划(边框)?
9 回答
如何用importlib在python中动态导入模块?
6 回答
如何用import语句重写python内置函数?
2 回答
如何用imshow混合裁剪的强度并显示正确的混合强度?
1 回答
如何用in dictionary解析havin dictionary中的json文件
8 回答
如何用in-Django URL替换%20
5 回答
如何用in\op正确构造查询
9 回答
如何用inbuild对象替换文件
10 回答
如何用inheritan类实现flask restful
7 回答
如何用intersphinx正确地编写对外部文档的交叉引用?
6 回答
如何用int修改LpVariable?
2 回答