crc16计算

crc16计算,以生成式G(x)=x16+x15+x2+1,为例

1、函数如下:

//crc:G(x) = x16+x15+x2+1
#define POLY 0x8005    //对应的生成式的多项式,可以查(在在线计算crc工具下查)
unsigned short crc16_2(unsigned char *data, int len, u16 init) {unsigned short crc = init;		//0xFFFF,0x0000        //初始值for (int i = 0; i < len; i++) {crc ^= (unsigned short)data[i] << 8;for (int j = 0; j < 8; j++) {if (crc & 0x8000) {        //高位/低位在前crc = (crc << 1) ^ POLY;}else {crc <<= 1;}}}return crc;
}

2、使用技巧

当接收的字符比较长时,一次将字符全部接收比较浪费资源,可以分段使用:

    //分段计算
    result = crc16_2(data, 10, 0x0000); // 调用CRC函数计算CRC值
    result = crc16_2(&data[10], length - 10, result); // 调用CRC函数计算CRC值
    printf("crc16_2 分段计算出 value: %X\n", result); // 输出CRC值   

3、附

crc在线计算工具:

CRC在线计算crc在线计算,循环冗余校验在线计算icon-default.png?t=N7T8https://www.lddgo.net/encrypt/crc#toolNoteIframe

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/711673.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CBAM注意力机制详解(附pytorch复现)

简介 论文原址&#xff1a;1807.06521.pdf (arxiv.org) CBAM&#xff08;Convolutional Block Attention Module&#xff09;是一种卷积神经网络模块&#xff0c;旨在通过引入注意力机制来提升网络的表示能力。CBAM包含两个顺序子模块&#xff1a;通道注意力模块和空间注意力…

算法项目的合作流程

算法项目的合作流程通常包括以下几个关键步骤&#xff0c;以上是算法项目合作的基本流程&#xff0c;具体项目可能会根据实际情况进行调整和补充。在整个项目过程中&#xff0c;良好的沟通、协作和团队合作至关重要&#xff0c;能够确保项目按时高质量地完成。北京木奇移动技术…

回归啦!!!

消失的日子在实习&#xff0c;今天最后一天了来看看自己的学习日志&#xff0c;有没有可以和小伙伴交流的部分吧&#xff01; 目录 一、产品one ①简介 ②底层原理 ③知识点一 作用一&#xff1a;日志采集 作用二&#xff1a;实时监测 作用三&#xff1a;规则匹配 作用…

Redis冲冲冲——事务支持,AOF和RDB持久化

目录 引出Redis事务支持&#xff0c;AOF和RDB持久化1、Redis的事务支持2、Redis的持久化 Redis冲冲冲——缓存三兄弟&#xff1a;缓存击穿、穿透、雪崩缓存击穿缓存穿透缓存雪崩 总结 引出 Redis冲冲冲——事务支持&#xff0c;AOF和RDB持久化 Redis事务支持&#xff0c;AOF和…

codeforces 1868A

题目链接 思路 当 m 1 m1 m1时 发现是 M M M是一条 0 0 0的纵列&#xff0c;最后结果是 0 0 0 其余构造方法大体为&#xff1a;每行把上一行第一位元素移到队尾 当 n < m − 1 n<m-1 n<m−1时 我们可以如下构造 0,1,2,3,4…m-1 1,2,3,4…m-1,0 2,3,4…m-1,0,1…

【内部消息】24上半年软考可能支持平板、PC和手机等多平台报名

根据内部消息&#xff0c;软考网上报名系统正在改革&#xff0c;之前只能通过PC端报名的&#xff0c;下次报名可能支持平板、手机等多终端进行网上报名了。现在官方并没有确切消息发出&#xff0c;这次变动可能发生在2024上半年&#xff0c;也有可能得到下半年才能实行。以下是…

一文读懂MES之工艺路线

什么是工艺路线 工艺路线&#xff0c;又被称为生产工艺流程或生产流程路线&#xff0c;是指在进行产品或零件的生产过程中&#xff0c;按照一定的生产顺序排列的一系列的工艺过程。简单来说就是如何从原材料或者半成品零件&#xff0c;一步一步加工和制作&#xff0c;最终制作…

LeetCode_Java_动态规划系列(2)(题目+思路+代码)

131.分割回文串 给你一个字符串 s&#xff0c;请你将 s 分割成一些子串&#xff0c;使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 1&#xff1a; 输入&#xff1a;s "aab" 输出&#xff1a;[["a&qu…

InnoDB索引与优化篇(3)-事务隔离级别与InnoDB的应用

MySQL是一种常用的关系型数据库管理系统&#xff0c;而事务是数据库中常用的一种机制。在MySQL中&#xff0c;事务的隔离级别以及使用InnoDB引擎进行事务处理是非常重要的。在本博客中&#xff0c;我们将探讨MySQL数据库事务隔离级别和InnoDB的应用。 事务是一组数据库操作的集…

立即报名Atlassian Team’24,与龙智一同踏上前往数字服务的创新之路

拉斯维加斯&#xff0c;4月30日至5月2日—— Atlassian Team’24盛大举行&#xff01;现已正式启动报名&#xff0c;诚邀您的参与&#xff01;与龙智一同走进这场创新与协作的盛会&#xff0c;您将有机会亲身感受100余场精彩纷呈的活动&#xff0c;深入探索Atlassian平台如何助…

小程序常用样式和组件

常用样式和组件 1. 组件和样式介绍 在开 Web 网站的时候&#xff1a; 页面的结构由 HTML 进行编写&#xff0c;例如&#xff1a;经常会用到 div、p、 span、img、a 等标签 页面的样式由 CSS 进行编写&#xff0c;例如&#xff1a;经常会采用 .class 、#id 、element 等选择器…

【leetcode】相交链表

大家好&#xff0c;我是苏貝&#xff0c;本篇博客带大家刷题&#xff0c;如果你觉得我写的还不错的话&#xff0c;可以给我一个赞&#x1f44d;吗&#xff0c;感谢❤️ 点击查看题目 思路: struct ListNode *getIntersectionNode(struct ListNode *headA, struct ListNode *he…

海康威视2024校园招聘

海康威视2024全球校园招聘正式启动 智未来&#xff0c;因你来&#xff0c;图片附含内推码

Flex布局常见属性图解

目录 一、简介二、父元素属性2.1、flex-direction2.2、justify-content2.3、align-items2.4、flex-wrap2.5、flex-flow2.6、align-content 三、子元素属性3.1、flex3.2、align-self3.3、order 一、简介 Flex是Flexible Box的缩写&#xff0c;意为”弹性布局”&#xff0c;用来为…

笔记本以太网集线器Hub充电可能导致网络异常(貌似是我把服务器网关写错了)

文章目录 笔记本以太网集线器&#xff08;Hub&#xff09;充电导致网络异常概述原理分析电源与信号干扰设备热度设备兼容性问题 解决方案升级固件提高设备散热效率选择兼容性好的设备 总结 今天用笔记本以太网直连服务器&#xff0c;一开始能连通&#xff0c;结果以太网hub插上…

c# Excel转换成DataSet

/// <summary> /// Excel转换成DataSet&#xff08;.xlsx/.xls&#xff09; /// </summary> /// <param name"filePath">Excel文件路径</param> /// <param name"strMsg"></param> …

Vue-4

自定义创建项目 目标&#xff1a;基于 VueCli 自定义创建项目架子 大致步骤&#xff1a; 安装脚手架创建项目 vue create 项目名称选择自定义 选择 Manually select features 这一项 step-1:按下空格 : 选择/取消--勾选请选择&#xff1a;Babel、Router、CSS、Linterstep-2…

探索K8S的绝佳选择:Killercoda与Play-with-K8s在线练习平台

大家好&#xff0c;近年来Kubernetes&#xff08;K8S&#xff09;作为容器编排的瑞士军刀&#xff0c;已经成为云原生技术的代表之一。学习K8S是现代云计算领域不可或缺的一部分&#xff0c;但很多人可能面临一个问题——如何高效地学习K8S&#xff0c;尤其是缺乏实践环境的初学…

蓝桥杯 子矩阵 (找大小为a*b的矩阵的最大最小值的乘积,queue)

题目链接 &#xff1a; https://www.lanqiao.cn/problems/3521/learning/?subject_code1&group_code3&match_num14&match_flow1&origincup 思想 &#xff1a; 用堆维护最大值最小值即可 暴力实现 复杂度 N^2 * log(N^2) 代码&#xff1a; #include<bit…

Vue3修改Element-plus语言与项目国际化

修改Element-plus默认语言 Element-plus默认语言是英语&#xff0c;可修改为其它语言&#xff1b; 此处 Element-plus 为自动按需导入方式配置&#xff1b; 更多导入方式&#xff1a;Vue3使用Element-plus-CSDN博客 全局配置默认语言参考&#xff1a;国际化 | Element Plus 统一…