Python 实现方法


def calc_crc(string):data = bytearray.fromhex(string)crc = 0xFFFFfor pos in data:crc ^= posfor i in range(8):if (crc & 1) != 0:crc >>= 1crc ^= 0xA001else:crc >>= 1hex_crc = hex(((crc & 0xff) << 8) + (crc >> 8)) # 返回十六进制crc_0 = crc & 0xffcrc_1 = crc >> 8str_crc_0 = '{:02x}'.format(crc_0).upper()str_crc_1 = '{:02x}'.format(crc_1).upper()return str_crc_0, str_crc_1 # 返回两部分十六进制字符

测试结果

sd = '00 41 10 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
crc = calc_crc(sd.replace(' ', ''))
print(crc)
# ('C4', '2A')sd = '01 10 04 44 00 02'
crc = calc_crc(sd.replace(' ', ''))
print(crc)
# ('00', 'ED')

CRC在线测试

【http://www.ip33.com/crc.html】
链接: CRC在线测试
测试结果:

CRC-16 校验 python方法相关推荐

  1. CRC冗余校验码源码代码c语言,循环冗余校验码(CRC)应用总结(包括C++源码)

    最近在实习期间需要用到数据的校验,所选为CRC16,那么就在此总结一番吧. 现在此说明下什么是CRC:循环冗余码校验 英文名称为Cyclical Redundancy Check,简称CRC,它是利用 ...

  2. 校验码(海明校验,CRC冗余校验,奇偶校验)

    循环冗余校验码 CRC码利用生成多项式为k个数据位产生r个校验位进行编码,其编码长度为n=k+r所以又称 (n,k)码. CRC码广泛应用于数据通信领域和磁介质存储系统中. CRC理论非常复杂,一般书 ...

  3. CRC冗余校验码及查表法

    CRC冗余校验码及查表法 什么是CRC编码 它将一个长度为k的位串看作是系数是0或者1的k-1次多项式 使用一个长度为r+1的生成多项式进行模2计算,生成一个长度为r的字符序列,能检测长度小于等于r的 ...

  4. java 奇偶校验_校验码(海明校验,CRC冗余校验,奇偶校验)

    循环冗余校验码 CRC码利用生成多项式为k个数据位产生r个校验位进行编码,其编码长度为n=k+r所以又称 (n,k)码. CRC码广泛应用于数据通信领域和磁介质存储系统中. CRC理论非常复杂,一般书 ...

  5. 浅谈在ASP.NET中数据有效性校验的方法

    作者:未知 作为一名程序员,一定要对自己编写的程序的健壮性负责,因此数据的校验无论在商业逻辑还是系统实现都是必不可少的部分. 我这里总结了一种自认为比较不错的asp.net(C#)的数据校验方法,如大 ...

  6. python udp_如何用python方法检测UDP端口

    如何用python方法检测UDP端口,首先要了解什么是UDP端口及作用.网上搜索了一圈后,我得到的个人理解是:UDP端口是含有网络服务必须的源端口和目的端口信息,用以建立和实现网络传输服务. 那么如何 ...

  7. python从入门到放弃系列恶搞短片-太惨!学Python方法用错,直接从入门到放弃!...

    原标题:太惨!学Python方法用错,直接从入门到放弃! 从你开始学习编程的那一刻起,就注定了以后所要走的路-从编程学习者开始,依次经历实习生.程序员.软件工程师.架构师.CTO等职位的磨砺:当你站在 ...

  8. 分类变量 哑变量矩阵 指标矩阵_不懂数据集重排序?分类变量转换苦难?4种python方法,不再难!...

    前言 数据排序.分类变量转换是数据处理与分析中常常遇到对场景,且需要有准确的判断以及准确的处理方式,否则会影响数据质量,产生脏数据,进而影响数据呈现效果或预测效果等,更别提机器学习与深度学习准确性等系 ...

  9. ASP.NET中数据有效性校验的方法

    主要用Regex的IsMatch方法,在BusinessRule层进行校验数据的有效性,并将校验的方法作为BusinessRule层基类的一部分. 在WebUI层现实提示信息. using Syste ...

最新文章

  1. HDLBits 系列(42)根据仿真波形来设计电路之时序逻辑
  2. SpringBoot 迭代输出
  3. java图片去掉文字,Java 移除html,图片 链接转文字
  4. android 应用性能优化1
  5. #把函数当作参数传给另一个函数
  6. 查看堆内存(histogram)中的对象数量及大小
  7. java获取本机所有可用字体
  8. 使用OpenCV需要注意的小细节
  9. BZOJ 1011: [HNOI2008]遥远的行星( )
  10. 【Autosar RTM】
  11. oracle imdmp方式导入dmp文件
  12. Diamond软件的使用(5)--建立Modelsim仿真环境
  13. 软考 系统架构设计师 2009-2018年英语翻译及重点词汇
  14. 【数据仓库与OLAP技术】期末复习+考题
  15. 安装的photoshop cs2为什么一进去就说我的用户名、组织、或序列号无效或错误???
  16. 第五篇:风控模型监控预警
  17. 如何将页面换成黑白-滤镜
  18. 三千字的HashMap灵魂拷问
  19. R入门(一)----读取数据、查看数据
  20. MyStack<T>

热门文章

  1. L1-020 帅到没朋友 (20分)(C语言)
  2. 广告的属性+mysql_互联网广告落地页作用及属性浅析
  3. 价值5000的三网免挂码支付系统-个人免签支付系统-当面付支付-支持代理轮询收款个码免签
  4. 世界上没有人能像你一样,而我喜欢你本来的样子
  5. 用tcgames在电脑上玩荒野行动手机游戏效果比安卓模拟器好太多了
  6. 说说华为机试注意点以及三道题的解题思路
  7. 两个随机矩阵相乘的c语言编程,实现两个矩阵相乘的C语言程序
  8. Manjaro(2022.3.11)双系统简易安装配置记录
  9. [Angular实战网易云]——13、底部信息与功能(一)
  10. 腾讯王宏岩:互联网的发展与企业微信