CRC校验 与 模2运算
一、模2运算(不需要借位/进位)
1、模2加减法
运算式 | 运算结果 |
---|---|
1+1 | 0 |
1+0 | 1 |
0+1 | 1 |
0+0 | 0 |
1-1 | 0 |
1-0 | 1 |
0-1 | 1 |
0-0 | 0 |
2、模2乘法
- 示例说明
1101×101110100001101111001\begin{matrix} &&1&1&0&1\\ \times&&&1&0&1\\ \hline &&1&1&0&1\\ &0&0&0&0&\\ 1&1&0&1&&\\\hline 1&1&1&0&0&1\\ \end{matrix} ×1101111001111010000001111
3、模2除法
- 示例说明
1101011101)101001000‾110111101101011100001110110101100000110011010001\begin{matrix} \quad\quad\quad\quad110101\\ 1 1 0 1 ) \overline { 1 0 1 0 0 1 0 0 0 }\\ 1101\\\hline \quad1110\\ \quad1101\\\hline \quad\quad0111\\ \quad\quad0000\\\hline \quad\quad\quad1110\\ \quad\quad\quad1101\\\hline \quad\quad\quad\quad0110\\ \quad\quad\quad\quad0000\\\hline \quad\quad\quad\quad\quad1100\\ \quad\quad\quad\quad\quad1101\\\hline \quad\quad\quad\quad\quad0001\\ \end{matrix} 1101011101)101001000110111101101011100001110110101100000110011010001
与算数运算主要区别为 没有
进位
和借位
。
二、CRC校验
- 设信息位为 kkk 位;
- 校验位为 n−kn-kn−k 位。
1、校验位生成多项式为 n−kn-kn−k 阶多项式;
2、信息位作为被除数,生成多项式对应的二进制数(n−k+1n-k+1n−k+1位)作为除数,进行模2除法运算,得到余数 n−kn-kn−k 位作为校验位。
3、上述除法示例见模2除法示例,信息位为 1 0 1 0 0 1 0 0 0,生成多项式对应二进制数为 1 1 0 1(x3+x2+1x^3+x^2+1x3+x2+1),余数为 0 0 0 1,取 0 0 1;最终数据为 1 0 1 0 0 1 0 0 0 0 0 1。
微信公众号:通信随笔XIDIAN
CRC校验 与 模2运算相关推荐
- 【计算机网络】CRC校验码的代码实现
实验目的 应用所学知识,编写代码实现CRC计算和验证功能,并验证CRC编码检验的成功率. 实验步骤 ①我们先进行CRC校验码的设计部分,我使用的是Python程序设计语言. CRC校验的核心原理就是模 ...
- CRC检错中的模2运算方法
模2方法:每除余数删首位,首位逢一商一逢零商零,算至余数无可补. 在CRC检错中,先将数据划分成组,假设每组k个比特称为M,此时要在后面加入n位冗余码,构成(k+n)位. 将M后加n个零后除以收发双方 ...
- 32位crc校验码程序_CRC码计算及校验原理的最通俗诠释
CRC校验原理 CRC校验原理看起来比较复杂,好难懂,因为大多数书上基本上是以二进制的多项式形式来说明的.其实很简单的问题,其根本思想就是先在要发送的帧后面附加一个数(这个就是用来校验的校验码,但要注 ...
- 计算机网络crc校验实验报告,CRC校验实现-实验报告(附主要实现代码)
计算机网络 实验报告 班级:03计算机B班 实验名称:CRC校验实现 姓名:kikikind 学号:086 指导老师:何怀文 日期:2006-4-22 1.学习CRC循环冗余检验原理 2.掌握实现方法 ...
- android串口通讯奇偶校验,串口通讯奇偶数校验及CRC校验如何使用详解
我们以前在学校使用串口基本都不用奇偶数校验都是采用硬件CRC(循环冗余校验码)校验的.但有时候为了数据传输的更加严谨和差错的处理会采用奇偶校验.这里简单说下软件上CRC校验是如何计算的. 所谓CRC是 ...
- CRC校验原理及STM32 IAP在线升级程序
CRC校验原理: 什么是CRC校验? CRC即循环冗余校验码:是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定.循环冗余检查(CRC)是一种数据传输检错功能,对数据 ...
- jq校验输入框值变化时_谈谈自己对CRC校验的理解
1.CRC是用来干嘛的? 检测数据传输过程中是否出现错误(某些位,或某几位,或者某块区域位错误). 2.CRC是否能校正数据传输中的错误? CRC只能检错,不能纠错.如果发现错误,可根据双方协议规定要 ...
- Verilog语言实现并行(循环冗余码)CRC校验
1 前言 (1) 什么是CRC校验? CRC即循环冗余校验码:是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定.循环冗余检查(CRC)是一种数据传输检错功能, ...
- 怎么得到16位校检和-c语言,16位CRC校验C语言算法.pdf
16位CRC校验C语言算法.pdf CRC 算法原理及C 语言实现 摘 要 本文从理论上推导出CRC算法实现原理,给出三种分别适应不同计算机或微控 制器硬件环境的C语言程序.读者更能根据本算法原理,用 ...
- CRC校验原理及CRC-8简单校验函数设计
CRC校验原理及CRC-8简单校验函数设计 CRC为循环冗余校验码,是一种常用的.具有检错.纠错能力的校验码.通常发送方在发送的数据之后,附上其CRC校验码.接收方收到数据后,也做同样的CRC校验,得 ...
最新文章
- Spark shuffle调优
- Strict Mode (JavaScript)
- weex css单位,Weex系列(7) ——踩坑填坑的总总
- 小程序根据手机机型设置自定义底部导航距离
- python gRPC测试helloworld
- 计算机原理实验八位算术逻辑运算,8位算术逻辑运算计算机组成原理实验一
- 安卓学习笔记37:利用OpenGL ES绘制平面图形
- 软件需求和问题解决-转载
- Android 系统(15)---Launcher启动过程
- Ubuntu下Truffle框架的搭建 2022年最新版
- 炫酷而不复杂,RDP报表就是这么实用方便
- servlet中使用db4o
- 在计算机内部.机器码的形式,在计算机内部,机器码的形式是____。
- java诸神47723_诸神战纪二-死神之谜
- python输入名字配对情侣网名_输入名字配置情侣网名-网名搜索
- Uncaught TypeError: Cannot read property 'alpha' of undefined 报错解决
- 中国Linux界五大高手
- Python学习笔记 第四天
- 蓝桥杯真题 18省4-测试次数 x星球的居民脾气不太好,但好在他们生气的时候唯一的异常举动是:摔手机。 各大厂商也就纷纷推出各种耐摔型手机。x星球的质监局规定了手机必须经过耐摔测试,并且评定出一个耐
- 电信大数据平台数据安全风险及解决方案分析