当前位置: 首页 > news >正文

【校验码 - 循环冗余校验码CRC】

水善利万物而不争,处众人之所恶,故几于道💦

目录

循环冗余校验码

  1.多项式

  2.CRC编码的组成

  3.校验码的生成

  4.例题:

循环冗余校验码

广泛地在网络通信及磁盘存储时采用。

1.多项式

在循环冗余校验(CRC)码中,无一例外地要提到多项式的概念。一个二进制数可以以一个多项式来表示。如1011表示为多项式X 3+X 1+X 0,如果把这里的x替换为2,这个多项式的值就是该数的值。从这个转换可以看出多项式最高幂次为R则转换为二进制数有R+1位。

2.CRC编码的组成

CRC编码的组成是由K位信息码,加上R位的校验码。

3.校验码的生成

校验码的生成步骤如下:

(1) 将K位数据C(x)左移R位,给校验位留下空间,得到移位后的多项式为C(x)×XR(×这个不是乘号,代表连接)。

(2) 将移位后的信息多项式除以生成多项式所对应的二进制数(也就是和生成多项式进行模2运算-异或),得到R位的余数多项式。

(3) 将余数作为校验码嵌入信息位左移后的空间。

4.例题:

信息位为 1010 0110,生成多项式为:a(x)=X5+X4+X+1,则CRC码为:

解题步骤:
①将信息码左移R位,R是生成多项式的最高次幂。
②将最高次幂为R的生成多项式G(X)转换为R+1位的二进制数
③将移位后的信息码除以②中生成的二进制数(这里的除是进行异或运算),得到R位的余数
④将余数作为校验码拼接到信息码左移后空出的位置,得出完整的CRC码

答:
①生成多项式的最高次幂是5,所以将信息码左移5位:
 1010 0110 0000 0

②将生成多项式转换为5+1位二进制数为:
 110011

③进行异或运算:
 1010 0110 0000 0
 1100 11
 -----------------------------
0110 10   <----第一次运算结果

  110 1010 0000 0   <----补全结果,剩余位从上面拉下来
  110 011
 -----------------------------
  000 1100 0000 0   <----第二次运算结果
    1100 11
 -----------------------------
    11000   <----第三次运算结果
可以看出已经得到了5位余数,11000

④拼接,得出完整的CRC码:
1010 0110 11000

相关文章:

【校验码 - 循环冗余校验码CRC】

水善利万物而不争&#xff0c;处众人之所恶&#xff0c;故几于道&#x1f4a6; 目录 循环冗余校验码 1.多项式 2.CRC编码的组成 3.校验码的生成 4.例题&#xff1a; 循环冗余校验码 广泛地在网络通信及磁盘存储时采用。 1.多项式 在循环冗余校验(CRC)码中&#xff0c;无一例…...

【Rust】一文讲透Rust中的PartialEq和Eq

前言 本文将围绕对象&#xff1a;PartialEq和Eq&#xff0c;以及PartialOrd和Ord&#xff0c;即四个Rust中重点的Compare Trait进行讨论并解释其中的细节&#xff0c;内容涵盖理论以及代码实现。 在正式介绍PartialEq和Eq、以及PartialOrd和Ord之前&#xff0c;本文会首先介绍…...

Vulnhub靶场----9、DC-9

文章目录一、环境搭建二、渗透流程三、思路总结一、环境搭建 DC-9下载地址&#xff1a;https://download.vulnhub.com/dc/DC-9.zip kali&#xff1a;192.168.144.148 DC-9&#xff1a;192.168.144.158 二、渗透流程 1、信息收集nmap -T5 -A -p- -sV -sT 192.168.144.158思路&am…...

使用Containerd搭建K8s集群【v1.25】

[toc] 一、安装要求 在开始之前,部署Kubernetes集群机器需要满足以下几个条件: 一台或多台机器,操作系统 CentOS7.x-86_x64硬件配置:2GB或更多RAM,2个CPU或更多CPU,硬盘30GB或更多集群中所有机器之间网络互通可以访问外网,需要拉取镜像禁止swap分区二、准备环境 角色IP…...

NMT - 构建双语概率词典(Probabilistic dictionaries)

文章目录一、安装依赖包mosesdecoder安装 mgiza二、数据预处理三、训练本文参考&#xff1a;How to train your Bicleaner https://github.com/bitextor/bicleaner/wiki/How-to-train-your-Bicleaner 一、安装依赖包 这个过程主要依赖于 mosesdecodermgiza mosesdecoder git…...

《ChatGPT是怎样炼成的》

ChatGPT 在全世界范围内风靡一时&#xff0c;我现在每天都会使用 ChatGPT 帮我回答几个问题&#xff0c;甚至有的时候在一天内我和它对话的时间比和正常人类对话还要多&#xff0c;因为它确实“法力无边&#xff0c;功能强大”。 ChatGPT 可以帮助我解读程序&#xff0c;做翻译…...

Streaming System是第一章翻译

GIthub链接&#xff0c;欢迎志同道合的小伙伴一起翻译 Chapter 1.Streaming101 如今&#xff0c;流数据处理在大数据中是非常重要的&#xff0c;其主要原因是&#xff1a; 企业渴望对他们的数据有更及时的了解&#xff0c;而转换到流处理是实现更低延迟的一个好方法&#xf…...

abap MODIFY常用语法解析

MODIFY 是既可以操作数据又可以操作内表的一个语法, 实现的逻辑都一样. 如果你内表或数据库中存在该行数据会对该行数据进行更新. 如果不存在,就会插入数据. , 1.如果it_tab是带有标题行的内表,是可以忽略FROM wa_tab工作区的 MODIFY it_tab .2.把工作区wa_tab中的数据更新…...

[媒体分流直播]媒体直播和传统直播的区别,以及媒体直播的特点

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 直播毋庸置疑已经融入到了我们生活的方方面面&#xff0c;小到才艺&#xff0c;游戏&#xff0c;大到政策的发布&#xff0c;许多企业和机构也越来越重视直播&#xff0c;那么一场活动怎…...

打地鼠游戏-第14届蓝桥杯STEMA测评Scratch真题精选

[导读]&#xff1a;超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成&#xff0c;后续会不定期解读蓝桥杯真题&#xff0c;这是Scratch蓝桥杯真题解析第102讲。 蓝桥杯选拔赛现已更名为STEMA&#xff0c;即STEM 能力测试&#xff0c;是蓝桥杯大赛组委会与美国普林斯顿多…...

链表经典刷题--快慢指针与双指针

本篇总结链表解题思路----快慢指针&#xff0c;其实也就是双指针&#xff0c;这个快慢并不单纯指“快慢”&#xff0c;它更多的可以表示&#xff0c;速度快慢&#xff0c;距离长度&#xff0c;时间大小等等&#xff0c;用法很有趣也很独特&#xff0c;理解它的思想&#xff0c;…...

【Java集合框架】篇四:Set接口

1. Set及主要实现类特点 Set&#xff1a;无序、不可重复&#xff08;去重&#xff09;、存储value HashSet&#xff1a;底层使用HashMap&#xff0c;即使用 数组单项链表红黑树 结构进行存储。&#xff08;jkd8中&#xff09; LinkedHashSet&#xff1a;是HashSet的子类&…...

Python 数据库连接 + 创建库表+ 插入【内含代码实例】

人生苦短 我用python Python其他实用资料:点击此处跳转文末名片获取 数据库连接 连接数据库前&#xff0c;请先确认以下事项&#xff1a; 您已经创建了数据库 TESTDB.在TESTDB数据库中您已经创建了表 EMPLOYEEEMPLOYEE表字段为 FIRST_NAME, LAST_NAME, AGE, SEX 和 INCOME。连…...

DSS 部署环境需求清单

文章目录 DSS系统需求项目地址计算资源计算基准:计算引擎程序硬件需求表 :DSS计算及存储资源需求计算资源计算基准:计算程序硬件需求表:DSS系统需求 项目地址 https://github.com/WeBankFinTech/DataSphereStudio 计算资源计算基准: 1.日活用户10万。 2.单用户单日总…...

Python的面向对象,详细讲解Python之用处等基本常识

目录 Python 面向对象 面向对象技术简介 创建类 实例 实例 self代表类的实例&#xff0c;而非类 实例 创建实例对象 访问属性 实例 Python内置类属性 实例 python对象销毁(垃圾回收) 实例 实例 类的继承 实例 方法重写 实例 基础重载方法 运算符重载 实例…...

如何使用固态继电器为恒温器供电

恒温器有两种电源&#xff1a;电池和 24VAC。恒温器需要电池才能不间断地运行。电池消耗的能量尽可能低非常重要&#xff0c;但即使您最大限度地减少消耗&#xff0c;这仍然不是一个用户友好的选择&#xff0c;因为电池会不时需要更换。要降低更换频率&#xff0c;可以使用 24V…...

【LeetCode】剑指 Offer(14)

目录 题目&#xff1a;剑指 Offer 32 - I. 从上到下打印二叉树 - 力扣&#xff08;Leetcode&#xff09; 题目的接口&#xff1a; 解题思路&#xff1a; 代码&#xff1a; 过啦&#xff01;&#xff01;&#xff01; 写在最后&#xff1a; 题目&#xff1a;剑指 Offer 32…...

Rman单实例迁移到单实例

关于同平台同版本数据库之间的迁移操作的实验 ---Source DB[rootoracle-db-19cs ~]# cat /etc/redhat-release CentOS Stream release 8 [rootoracle-db-19cs ~]# --- Target DB[rootoracle-db-19ct ~]# cat /etc/redhat-release CentOS Stream release 8 [rootoracle-db-19ct…...

毕业设计 基于stm32舞台彩灯控制器设计app控制系统

基于stm32舞台彩灯控制器设计app控制1、项目简介1.1 系统构成1.2 系统功能2、部分电路设计2.1 STM32F103C8T6核心系统电路设计2.2 WS2812RGB彩灯电路设计3、部分代码展示3.1 控制WS2812显示颜色3.2 设置RGB灯的颜色&#xff0c;角度&#xff0c;亮度实物图1、项目简介 选题指导…...

【MyBatis】篇一.

文章目录1、MyBatis概述2、环境搭建1、MyBatis概述 认识&#xff1a; JavaEE开发的一个套件SSM&#xff0c;即&#xff1a; MyBatis是一个持久层的框架&#xff0c;是对JDBC的一个封装&#xff0c;是一个半自动的ORM框架。 ORM即实体类对象和数据库中的数据的一个映射关系&am…...

XUnity.AutoTranslator完整指南:为Unity游戏实现实时自动翻译的终极解决方案

XUnity.AutoTranslator完整指南&#xff1a;为Unity游戏实现实时自动翻译的终极解决方案 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 你是否曾经因为语言障碍而无法畅玩心爱的日系RPG或欧美独立游戏&a…...

应对海外AIGC检测:初稿AI率飙到97%怎么救?4个结构级优化实测指南

大家最近都在为英文降aigc率发愁吧&#xff0c;作为研三党&#xff0c;我太懂这种痛了&#xff0c;之前我自己写英文初稿&#xff0c;写完直接拿去查重&#xff0c;结果turnitin检测ai率飙到了89%&#xff0c;当时看着报告整个人都懵了。 怎么给英文降ai&#xff1f;对于非母语…...

大量全新惠普AM4准系统迷你主机涌入咸鱼,支持桌面端5700G处理器,双M2+SATA三盘位,还可选配GTX 1660 Ti 6GB显卡!

众所周知英特尔12代处理器以及AMD锐龙 5000系处理器都是如今极为坚挺的一代平台&#xff0c;两者注定是未来很长一段时间的传家宝平台。而且你敢信&#xff0c;如今依旧还是主流&#xff0c;横跨多年还没有过时和淘汰的迹象&#xff0c;令无数垃圾佬们蠢蠢欲动。其实咸鱼上早就…...

在Node.js后端服务中集成多模型API以提升应用灵活性

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 在Node.js后端服务中集成多模型API以提升应用灵活性 对于需要构建智能客服或内容生成功能的Node.js开发者而言&#xff0c;依赖单一…...

SITS 2026闭门工作坊流出的7个LLM推理性能反模式(含3个被主流框架默认启用的致命配置)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AI原生性能优化&#xff1a;SITS 2026 LLM推理加速实战技巧 在 SITS 2026 基准测试中&#xff0c;LLM 推理延迟与显存带宽利用率成为关键瓶颈。AI 原生优化并非简单套用传统 CUDA kernel 调优&#xff…...

AI Agent集成Kalshi预测市场交易技能:自动化交易与风险管理实战

1. 项目概述&#xff1a;一个为AI Agent设计的Kalshi预测市场交易技能如果你对量化交易、自动化脚本或者新兴的AI Agent生态感兴趣&#xff0c;并且听说过“预测市场”这个概念&#xff0c;那么今天聊的这个项目可能会让你眼前一亮。lacymorrow/openclaw-kalshi-trading-skill本…...

手把手教你用赫优讯NT151网关,搞定FANUC机器人与西门子S7-1500 PLC的跨协议通讯

工业自动化实战&#xff1a;NT151网关实现FANUC机器人与西门子S7-1500 PLC无缝通讯 在智能制造产线中&#xff0c;FANUC机器人与西门子PLC的协同作业已成为标配。但两者分别采用EtherNet/IP和PROFINET协议&#xff0c;如同说着不同语言的专家难以直接对话。赫优讯NT151网关正是…...

星期天实训内容

文章目录 1、测试代码照片2、流水灯视频2.1 测试代码2.1 视频 3、独立按键视频&#xff08;点亮4个灯&#xff09;3.1 代码3.2 视频 4、独立按键视频&#xff08;点亮8个灯&#xff09;5、数码管显示“000000”或者“111111”6、数码管显示“123456”7、数码管显示“11.12.13”…...

告别混乱!用这3张图理清AUTOSAR BSW模块的层级与依赖关系

告别混乱&#xff01;用这3张图理清AUTOSAR BSW模块的层级与依赖关系 在汽车电子系统开发中&#xff0c;AUTOSAR架构的复杂性常常让开发者陷入模块关系的迷宫。当你面对几十个BSW&#xff08;基础软件&#xff09;模块时&#xff0c;是否经常困惑于它们究竟属于哪个层级&#x…...

Go语言服务网格egress:外部服务访问

Go语言服务网格egress&#xff1a;外部服务访问 1. Egress代理 package egressimport ("net/http""net/url" )type EgressProxy struct {dialer *net.Dialertransport *http.Transport }func NewEgressProxy() *EgressProxy {return &EgressProxy{d…...