Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何用c语言计算6位CRC?

如何用c语言计算6位CRC?
EN

Stack Overflow用户
提问于 2022-03-13 20:25:28
回答 1查看 223关注 0票数 0

我使用编码器,在这里我得到0到24位,其中0到5位是CRC位。有人能帮助我理解如何计算这6位的CRC码吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-14 21:14:17

如果没有一个例子,我无法确定,但这将按描述计算CRC,假设触发器的初始值为零。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
unsigned crc6biss(uint32_t data, unsigned bits) {
    while (bits--)
        data = data & 0x80000000 ? (data << 1) ^ 0x0c000000 : data << 1;
    return ~data >> 26;
}

在这里,data是您的数据位,但非常重要的是,在32位字中移动,以便最重要的数据位是最重要的data位。bits是要处理的位数。所以数据位是位32-bits.31 of data。剩下的位是零。在返回值的最不重要的六位中返回6位CRC .

从您的文档中,bits将是18、19或21。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71462986

复制
相关文章
CRC编码计算方法及C语言实现
CRC(Cyclic Redundancy Check)是一种常用的错误校验码,用于检测和纠正传输过程中的错误。在数据通信和存储中,CRC编码被广泛应用,因为它能够高效地检测错误,并且实现简便。
用户10354340
2023/08/14
6590
C语言实例_CRC校验算法
CRC(Cyclic Redundancy Check,循环冗余校验)是一种常用的错误检测技术,用于验证数据在传输或存储过程中是否发生了错误。它通过对数据进行一系列计算和比较,生成一个校验值,并将其附加到数据中。接收方可以使用相同的算法对接收到的数据进行校验,然后与接收到的校验值进行比较,从而确定数据是否存在错误。
DS小龙哥
2023/08/13
4610
CRC8校验接口(C语言)
1. crc8校验接口 static uint8_t crc8( uint8_t * p_buffer, uint16_t buf_size ) { uint8_t crc = 0; uint8_t i=0; if(buf_size <= 0) { return crc; } while( buf_size-- ) { for ( i = 0x80; i != 0; i /= 2 ) {
心跳包
2021/09/26
4.1K1
CRC8校验接口(C语言)
modbus-RTU-crc16——c语言
为确保消息数据的完整性,除了验证消息CRC之外,建议实现检查串行端口(UART)成帧错误的代码。如果接收消息中的CRC与接收设备计算的CRC不匹配,则应忽略该消息。下面的C语言代码片段显示了如何使用逐位移位和异或运算来计算Modbus消息CRC。使用消息帧中的每个字节计算CRC,除了包含CRC本身的最后两个字节。
用户4645519
2020/09/07
2.6K0
如何用R语言进行云计算
作者 | Ajay Ohri 翻译 | 丁雪 校对 | ValaWong 如今,几乎所有领域或业务活动正在通过SMAC进行数据转换。SMAC指的是社交(Socia)、移动(Mobile)、分析(Analytics)和云服务(Cloud)。这个改变的影响已经涉及到包括组织、人员与产品在内的范围。在本文中,我们将通过使用云计算让你提高数据分析能力。 我们已经使用R语言和RStudio由浅入深地解释了云计算的相关概念(请参考大数据文章2015年9月21日发布的文章《如何在云计算平台使用R语言编程的快速入门指南
大数据文摘
2018/05/22
3.9K0
如何用C语言实现OOP
我们知道面向对象的三大特性分别是:封装、继承、多态。很多语言例如:C++ 和 Java 等都是面向对象的编程语言,而我们通常说 C 是面向过程的语言,那么是否可以用 C 实现简单的面向对象呢?答案是肯定的!C 有一种数据结构叫做结构体(struct)和函数指针,使用结构体和函数指针便可实现面向对象的三大特性。
C语言与CPP编程
2021/07/02
1.3K0
如何用C语言实现OOP
如何用C语言找回文数
本关任务:编写函数求区间[200,3000]中所有的回文数,回文数是正读和反读都是一样的数。如525, 1551
小Bob来啦
2020/12/16
2.7K0
python计算CRC16等
智能电能表数据通信协议DL/T 645 - 2007;本部分实现了该协议的部分功能。
py3study
2020/01/07
1.6K0
C# CRC8实现
http://www.cnblogs.com/canny/archive/2004/12/27/82468.aspx
用户3135539
2018/09/12
4K1
c语言设计计算器-【C语言-5】吃透C语言整型,快速计算取值范围!
  计算机通过晶体管的开关状态来记录数据。它们通常8个编为一组,我们称之为字节。而晶体管有开关两种状态,一个字节有8个晶体管,因此一个字节可以拥有2的八次方个不同的状态。让每一种状态对应一个数值,这样一个字节可以表示256个不同数值。
宜轩
2022/12/26
2.6K0
模2除法(CRC校验码计算)_crc校验模二算法
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/01
2.9K0
如何用c语言做个阅读器?
libHaru是一个用来生成PDF文件的C语言、跨平台开发开源包,能再Windows、Linux、FreeBSD等等下使用。它支持线条、文本、图片、轮廓、文本注释、链接注释、文档压缩、图片嵌入、TrueType字体、加密PDF、支持多种字符集。libHaru目前的稳定版本是V2.3版。 编译libHaru这个开源库,需要其它的开源作为依赖,下面我们在Windows下编译libHaru。 1,下载zlib库,这个在官方网站上有最新的windows版本bin,不需要编译。 2,下载libpng,这个没有wi
程序员互动联盟
2018/03/16
2K0
如何用c语言做个阅读器?
【C语言】计算器
 🚀write in front🚀 ---- 🔎大家好,我是謓泽,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎 🏅2021年度博客之星物联网与嵌入式开发TOP5~2021博客之星Top100~阿里云专家^星级博主~掘金 ⇿ InfoQ创作者~周榜77»总榜2226🏅 🆔本文由 謓泽 原创 CSDN首发🙉如需转载还请通知⚠ 📝个人主页:打打酱油desuCSDN博客💬 🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​ 📣系列专栏:YY_謓泽的博客-CSDN博客[〇~①]🎓 ✉️我们并
謓泽
2022/12/12
6830
【C语言】计算器
【投稿专区】crc校验码的计算
在Modbus或环保212协议中,数据的校检码(CRC-16)由两个字节16位构成。而一般电气、自动化仪表的crc16校验,多项式码选用16进制A001。 CRC的计算方式如下: 在开始时CRC寄存器的每一位都预置为1,然后把CRC寄存器与8-bit的数据进行异或,之后对CRC寄存器从高到低进行移位,在最高位(MSB)的位置补零,而最低位(LSB移位后已经被移出CRC寄存器)如果为,则把寄存器与预定义的多项式码进行异或,否则如果LSB为零,则无需进行异或。重复上述的由高至低的移位8次,第一个8-bit数据处
李海彬
2018/03/26
4K0
一文讲透CRC校验码-附赠C语言实例
CRC(Cyclic Redundancy Checksum)是一种纠错技术,代表循环冗余校验和。
C语言与CPP编程
2021/07/27
8.8K1
一文讲透CRC校验码-附赠C语言实例
如何用C语言输出杨辉三角
题目描述:还记得中学时候学过的杨辉三角吗?具体的定义这里不再描述,你可以参考以下的图形:
小Bob来啦
2020/12/16
1.3K0
如何用C语言输出杨辉三角
C语言_简单计算器
设计简单计算器,能够处理含有‘+’、‘-’、‘*’、‘/’、‘(’、‘)’、‘^’、‘ ’和非负数整数的混合运算(即加减乘除,括号运算,幂运算),检测不合法的运算表达式。
From Zero
2021/02/22
2.3K0
C语言_简单计算器
简单贪吃蛇C++语言编程(如何用c语言写贪吃蛇)
(有一些函数kbhit,getch,在这表示为_kbhit与_getch)//不同编译器原因 注意在Dev等集成开发软件下可能会CE
全栈程序员站长
2022/07/25
1.9K0
简单贪吃蛇C++语言编程(如何用c语言写贪吃蛇)
校验和计算原理_CRC校验原理及代码
首先,IP、ICMP、UDP和TCP报文头都有检验和字段,大小都是16bit,算法基本上也是一样的。
全栈程序员站长
2022/11/17
2.2K0
校验和计算原理_CRC校验原理及代码
如何用c语言调用c++做成的动态链接库
今天在做东西的时候遇到一个问题,就是如何在C语言中调用C++做的动态链接库so文件 如果你有一个c++做的动态链接库.so文件,而你只有一些相关类的声明, 那么你如何用c调用呢,别着急,本文通过一个小小的例子,让你能够很爽的搞定. 链接库头文件: head.h
全栈程序员站长
2022/07/15
1.6K0

相似问题

如何用C语言实现CRC

11

用C语言进行CRC计算

12

C语言的最终CRC

40

如何用zlib计算CRC32-C校验和

20

如何用C语言计算字符

14
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文