循环冗余效验码的计算方法

 循环冗余效验码的计算方法

G(x):

在了解计算方法之前我们首先要明白G(x)表明的意思,这一步非常重要!

例如,G(x) =  x^3 + x^2 + 1 ,该式子表明的编码是 1101 ,其中 1 可以转化为 x^0 ,随后从0开始,这一段编码的个数是 0~3 总共 4 个数字,这些数字只能用0和1表示。

而在 序号是3、2、0的位置上,它们用数字1表示,而其他的则是数字0表示。

T(x):   

T(x) =   M(x) +    M(x)/ G(x)

具体步骤如下:

注意事项:

  1. 在得到信息码M(x)后,与G(x)进行的并不是除法运算,而是进行二进制的异或运算
  2. 其次,在进行异或运算的过程中,每次运算的开头必须是1开头,且要凑满G(x)的数字个数进行运算
  3. 第三,在运算完以此异或运算后,开启下一次运算前需要将M(x)未进行运算的数字往下拉,且根据第二条注意事项,遵循拉满写1,未拉满写0,这些都是写在商的位置上的。
  4. 第四,也是在进行运算的第一步!补0!根据G(x)的项中,最高的次幂数字进行补0,如上图G(x)的最高次幂数字是3,所以需要在M(x)的后面进行补三个0才开始运算。
  5. 最后,当不能再进行运算后,得出的最后的‘余数’就是需要添加到M(x)末尾使得M(x)变成T(x)的编码,当然这些编码可能会很长,所以我们要选取这段编码,而选取编码的数字个数是从右往左,且编码的个数和补了多少个0有关,例如上图,最后的编码选取了三位,因为补了三个0 

 

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

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

相关文章

Redis实现日榜|直播间榜单|排行榜|Redis实现日榜01

前言 直播间贡献榜是一种常见的直播平台功能,用于展示观众在直播过程中的贡献情况。它可以根据观众的互动行为和贡献值进行排名,并实时更新,以鼓励观众积极参与直播活动。 在直播间贡献榜中,每个观众都有一个对应的贡献值&#…

【NI-RIO入门】理解Windows、Real Time与FPGA之间数据通信的原理

于NI kb摘录 1.概述 对于NI RIO系列设备(CompactRIO、sbRIO、myRIO等)进行编程时,需要注意有三个不同的组件。 人机界面 (HMI) 。有时称为“主机”,为用户提供图形用户界面(GUI),用于监控系统…

阿里云数据库polardb怎么收费?

阿里云数据库PolarDB租用价格表,云数据库PolarDB MySQL版2核4GB(通用)、2个节点、60 GB存储空间55元5天,云数据库 PolarDB 分布式版标准版2核16G(通用)57.6元3天,阿里云百科aliyunbaike.com分享…

搭建flink集群 —— 筑梦之路

Apache Flink 是一个框架和分布式处理引擎, 用于在无边界和有边界数据流上进行有状态的计算。 Flink 能在所有常见集群环境中运行,并能以内存速度和任意规模进行计算。 Flink并没有依靠自身实现所有分布式系统需要解决的问题, 而是在已有集群…

基于 Vue3 和 WebSocket 实现的简单网页聊天应用

首先附上项目介绍,后面详细解释技术细节 1. chat-websocket 一个基于Vue3和WebSocket的简易网络聊天室项目,包括服务端和客户端部分。 项目地址 websocket-chat 下面是项目的主要组成部分和功能: 项目结构 chat-websocket/ |-- server/ # WebSocket 服…

蓝桥杯c/c++程序设计——冶炼金属

冶炼金属 问题描述 小蓝有一个神奇的炉子用于将普通金属 O 冶炼成为一种特殊金属 X。这个炉子有一个称作转换率的属性 V,V 是一个正整数,这意味着消耗 V 个普通金属 O 恰好可以冶炼出一个特殊金属 X,当普通金属 O 的数目不足 V 时&#xff0…

Linux习题1

解析:Tcsh是csh的增强版,并且完全兼容csh。它不但具有csh的全部功能,还具有命令行编辑、拼写校正、可编程字符集、历史记录、作业控制等功能。 AWK是一种优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一…

C++ Qt开发:SqlRelationalTable关联表组件

Qt 是一个跨平台C图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍SqlRelationalTable关联表组件的常用方法及灵…

纯CSS实现马里奥效果,回忆一下童年吧

📢 鸿蒙专栏:想学鸿蒙的,冲 📢 C语言专栏:想学C语言的,冲 📢 VUE专栏:想学VUE的,冲这里 📢 CSS专栏:想学CSS的,冲这里 &#x1f4…

【Filament】立方体贴图(6张图)

1 前言 本文通过一个立方体贴图的例子,讲解三维纹理贴图(子网格贴图)的应用,案例中使用 6 张不同的图片给立方体贴图,图片如下。 读者如果对 Filament 不太熟悉,请回顾以下内容。 Filament环境搭建绘制三角…

安装 PyQt5 保姆级教程

作者:billy 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 前言 博主之前做应用层开发用的一直是 Qt,这次尝试一下在 python 中使用 Pyqt5 模块来开发 UI 界面,这里做一些…

C语言rand函数,srand函数,time函数实现随机数,及猜数字小游戏

怀心之所爱,奔赴山河 前言 最近在复习c的知识,想起之前写过一个猜数字小游戏,所以今天就把自己关于随机数的使用经验分享一下,希望对大家有帮助。 一.rand函数 1.函数的声明如下 可以看到,返回值是int类型&#xff…

MCEWMDRMNDBootstrap.dll文件丢失,软件游戏无法启动,怎样下载修复

不少小伙伴反馈,在打开某些游戏或软件的时候,Windows会提示“MCEWMDRMNDBootstrap.dll文件丢失,软件无法启动”,不知道应该怎样办? 首先,我们先来了解“MCEWMDRMNDBootstrap.dll文件”是什么? …

Arduino stm32 USB CDC虚拟串口使用示例

Arduino stm32 USB CDC虚拟串口使用示例 📍相关篇《STM32F401RCT6基于Arduino框架点灯程序》🔖本开发环境基于VSCode PIO🌿验证芯片:STM32F401RC⌛USB CDC引脚: PA11、 PA12🔧platformio.ini配置信息&…

基于YOLOv8的遥感SAR舰船小目标识别

💡💡💡本文摘要:基于YOLOv8的遥感SAR舰船小目标,阐述了整个数据制作和训练可视化过程 1.YOLOv8介绍 Ultralytics YOLOv8是Ultralytics公司开发的YOLO目标检测和图像分割模型的最新版本。YOLOv8是一种尖端的、最先进的…

最新AI绘画Midjourney绘画提示词Prompt教程

一、Midjourney绘画工具 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭…

Could not resolve com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.28.

1、首先进入阿里云maven仓库,在搜索栏输入无法下载的依赖名称,查询现有版本号,可以看到这里有2.9.34。 2、在build.gradle(Project)的buildscript闭包下替换为阿里云maven仓库: maven { url https://www.jitpack.io } maven { u…

3D游戏角色建模纹理贴图处理

在线工具推荐: 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 在本文中,我们将介绍 3D 纹理的基础知识,并讨…

算法设计与分析实验报告-贪心算法

校课程的简单实验报告。 算法设计与分析实验报告-递归与分治策略 算法设计与分析实验报告-动态规划算法 算法设计与分析实验报告-贪心算法 dijkstra迪杰斯特拉算法(邻接表法) 算法设计与分析实验报告-回溯法 算法设计与分析实验报告-分支限界法 …

Spring高手之路-@Autowired和@Resource注解异同点

目录 相同点 不同点 1.来源不同。 2.包含的属性不同 3.匹配方式(装配顺序)不同。 ​编辑 4.支持的注入对象类型不同 5.应用地方不同 相同点 都可以实现依赖注入,通过注解将需要的Bean自动注入到目标类中。都可以用于注入任意类型的Bean…