校验码——奇偶校验/模2除法/CRC/海明校验

2024-03-27 20:12

本文主要是介绍校验码——奇偶校验/模2除法/CRC/海明校验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

校验码,是在计算机进行数据传输的过程中,为了提高数据的可靠性设计的,一般是在信息位以外增加校验位来实现,分为多种编码形式。

名称特点
奇偶校验码能校验,不能纠错。
循环冗余校验CRC能校验,不能纠错。
海明码校验能校验,也能纠错。

1. 奇偶校验码

奇偶校验码由若干位有效信息的头部或者尾部(信息位),加上一个二进制位(校验位)组成。奇校验码即整个校验码中1的个数为奇数偶校验码即整个校验码中1的个数为偶数

信息位校验位校验码
奇校验码1001101110011011
偶校验码1001101010011010

注意,
如果有奇数个位产生错误码,则奇偶性发生变化,可以校验出误码,但不能纠错;
如果有偶数个位产生错误码,则奇偶性未发生变化,无法校验出误码(又称“漏检”)。

例如:

编码错误数误码结果
1011奇数1001奇校验发生变化。
1011偶数1000奇校验未发生变化,漏检。
1111奇数1011偶校验发生变化。
1111偶数1001偶校验未发生变化,漏检。

这篇关于校验码——奇偶校验/模2除法/CRC/海明校验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/853260

相关文章

Spring常见错误之Web嵌套对象校验失效解决办法

《Spring常见错误之Web嵌套对象校验失效解决办法》:本文主要介绍Spring常见错误之Web嵌套对象校验失效解决的相关资料,通过在Phone对象上添加@Valid注解,问题得以解决,需要的朋... 目录问题复现案例解析问题修正总结  问题复现当开发一个学籍管理系统时,我们会提供了一个 API 接口去

spring 参数校验Validation示例详解

《spring参数校验Validation示例详解》Spring提供了Validation工具类来实现对客户端传来的请求参数的有效校验,本文给大家介绍spring参数校验Validation示例详... 目录前言一、Validation常见的校验注解二、Validation的简单应用三、分组校验四、自定义校

校验码:奇偶校验,CRC循环冗余校验,海明校验码

文章目录 奇偶校验码CRC循环冗余校验码海明校验码 奇偶校验码 码距:任何一种编码都由许多码字构成,任意两个码字之间最少变化的二进制位数就称为数据检验码的码距。 奇偶校验码的编码方法是:由若干位有效信息(如一个字节),再加上一个二进制位(校验位)组成校验码。 奇校验:整个校验码中1的个数为奇数 偶校验:整个校验码中1的个数为偶数 奇偶校验,可检测1位(奇数位)的错误,不可纠错。

web登录校验

基础登录功能 LoginController @PostMapping("/login")Result login(@RequestBody Emp emp) {log.info("前端,发送了一个登录请求");Emp e = empService.login(emp);return e!=null?Result.success():Result.error("用户" +"名或密码错误");

checksum 与 CRC的不同之处

实际应用: CRC:在外发电压时,在报文的最后两个字节做了CRC计算。 checksum : 在按键状态外发,在报文的最后一个字节做了checksum计算。 它们的共同之处:目的都是为了数据的错误检测功能。 只是在算法的复杂度上有较大的区别: 总的来说,CRC算法更复杂,可检测的错误也比较丰富。 CRC与checksum的计算方式都是固定的吗? 在实际应用中,并没有通知对方,所用

高精度计算(代码加解析,洛谷p1601,p1303)除法待更新

目录 高精度加法 高精度减法 高精度乘法 高精度加法 我们知道在c++语言中任何数据类型都有一定的表示范围。当两个被加数很大时,正常加法不能得到精确解。在小学,我们做加法都采用竖式方法。那么我们也只需要按照加法进位的方式就能得到最终解。 8 5 6+ 2 5 5-------1 1 1 1 加法进位: c[i] = a[i] + b[i];if(c[i] >=

spring数据校验Validation

文章目录 需要的依赖创建校验对象Validator 需要的依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId></dependency> 创建校验对象Validator 测试的实体类 //创建实体

spring项目使用邮箱验证码校验

本项目采用免费QQ邮箱验证码方式进行登录安全的校验。 前期工作 申请邮箱安全授权码 打开QQ邮箱官网点击设置 进入设置页面后点击账户按钮  进入账户后一直往下拉页面找到POP3服务栏,然后点击管理服务(如果没有开启服务需要先开启服务,按照邮箱提示操作即可) 进入管理服务页面后如果没有授权码,点击生成授权码,如果有即可进入授权码管理页面查看。 授权码过一段时间会自动过期,需要重

zdppy+vue3+onlyoffice文档管理系统实战 20240906 上课笔记 整合权限校验中间件

基于角色方法的中间件基本用法 import zdppy_api as apiimport zdppy_apimidauthasync def index(request):return api.resp.success()async def login(request):token = zdppy_apimidauth.get_role_token(role="admin")return ap

Spring源码学习--使用XML Schema文档对XML实例文档校验

文章摘要 在实际开发中读取xml文档的时候,一般都需要先校验,如果使用Sun的XML相关软件包会令你云里雾里。W3C这块的XML相关的规范相当的多,这也是导致XML处理器起来费劲的主要原因。如果xml对应的xsd文档已经定义好,则可以之间复用下面代码对xml文档格式和内容是否合法进行验证。 一、xsd校验xml工具类 import javax.xml.parsers.SA