数据校验码(奇偶校验,海明校验,循环冗余校验)内容总结及个人经验分享
引言:
常用的数据校验方法有三种:奇偶校验,海明校验和循环冗余校验(CRC)。其对应的是三种不同而又有关联的码制,以下编者打算从它们的编码原理,需要的基础知识以及实例来对此进行大致的分析。在了解数据校验之前,首先谈谈它有什么作用。
了解计算机数据格式的伙伴们都知道,计算机数据的存储是以二进制(0和1)组成的。然后8个位(8个1或者1)是一个位byte,这就是我们平常kb中的b。一谈到这里大家就豁然开朗了。如果我们没有数据校验码来协助检测传输的数据的正确性,那么可能一个小小的二进制位就可能导致文件的损坏,数据校验的重要性由此可知。当然,数据校验码也是由二进制0和1组成。
接下来我们逐步介绍这三种互相有关联的编码制度。
一,海明校验码
1)优点:并行纠错(类似于宽敞的高速公路),耗时短,校验位开销小(校验码数目相对较少,码距为4)
2)缺点:硬件开销大(高速公路的造价很高)
3)原理:假如有r个二进制校验位(默认值为0),它们需要对已知的k个二进制数据进行分组校验 。
那么需要满足这个公式:2^r≥k+r+1(r个二进制校验位共有2的r次方种方法,k个数据位,1位备用位)。这个公式的含义就是:你要以r个二进制位表示出总的数据长度。这样就能完整地表示所需要校验的数据了。 这个公式有一个局限:只能校验一个二进制位。
我们可以理解到,所有的数值都能用1,2,4,8表示出来
数据校验码(奇偶校验,海明校验,循环冗余校验)内容总结及个人经验分享相关推荐
- 计算机组成原理数据校验之奇偶校验,海明校验
文章内容基于:计算机组成原理_华中科技大学_中国大学MOOC(慕课) (icourse163.org) 仅作为日常学习的笔记整理 目录 一. 数据校验的基本原理 1.数据校验的必要性 2.数据校验的基 ...
- c语言海明校验码编码,海明校验码的编码规则有哪些?
在海明码中, 位号数(1.2.3.--.n)为2的权值的那些位,即: 1(2^0).2(2^1).4(2^2).8(2^3).-2^(r-1)位,作为奇偶校验位,并记作: P1.P2.P3 .P4.- ...
- 进制转换及如何求校验码(海明校验码及循环冗余校验CRC码)
文章目录 前言 一.进制转换 1.1 二进制转换为八进制数和十六进制数 1.2 任意进制数转换为十进制数 1.3 十进制转换为任意进制 二.校验码求取 2.1海明校验码 2.2循环冗余校验CRC码 总 ...
- [软考知识点总结③] 【中级软件设计师】计算机组成原理——校验码、海明校验码、奇偶校验码、循环校验码
奇偶校验码(Parity Codes) 奇偶校验码最简单,但只能检测出奇数位出错. 如果发生偶数位错误就无法检测. 但经研究是奇数位发生错误的概率大很多. 而且奇偶校验码无法检测出哪位出错.所以属于无 ...
- 常用校验码(奇偶校验码、海明校验码、CRC校验码)
常用校验码(奇偶校验码.海明校验码.CRC校验码) 一.奇偶校验码 二.海明校验码 三.CRC校验码 计算机系统运行时,各个部之间要进行数据交换.交换的过程中,会有发生误码的可能(即0变成1或1变 ...
- 如何查看文件的md5校验码、sha1校验码和sha256校验码
如何查看文件的md5校验码.sha1校验码和sha256校验码 本文是基于Windows 10系统和ubuntu 14.04系统环境,使用命令查看文件的md5校验码.sha1校验码和sha256校验码 ...
- CRC冗余校验码源码代码c语言,循环冗余校验码(CRC)应用总结(包括C++源码)
最近在实习期间需要用到数据的校验,所选为CRC16,那么就在此总结一番吧. 现在此说明下什么是CRC:循环冗余码校验 英文名称为Cyclical Redundancy Check,简称CRC,它是利用 ...
- 校验码 - 奇偶校验
何谓奇偶校验? 奇偶校验是一种简单有效的校验方法. 这种方法通过在编码中增加一位校验位来使编码中1的个数为奇数或者偶数 位数是奇数的就叫做奇校验,偶数就叫做偶校验 通过这种方式可以使码距变成2 举例 ...
- bcc校验码计算_CRC校验你会吗?计算、校验、C语言实现,三步教你轻松搞定
目录 前言 CRC算法简介 CRC计算 CRC校验 CRC计算的C语言实现 CRC计算工具 总结 前言 最近的工作中,要实现对通信数据的CRC计算,所以花了两天的时间好好研究了一下,周末有时间整理了一 ...
最新文章
- 爬虫之selenium控制浏览器执行js代码
- PHP中echo与print和print_r
- android不能在主线程,android.os.NetworkOnMainThreadException 在4.0之后谷歌强制要求连接网络不能在主线程进行访问(示例代码)...
- 人人想健康!但,健康的,最主要因素,是什么?
- Vue.js 组件编码规范
- Android 存储学习之保存系统短信到SD卡
- Windows bat命令解压缩文件360zip
- 灰色马尔科夫模型matlab实现
- SpringBoot下实现PDF转word(Maven项目)
- 斐讯K2 A6版SZU校园网刷机方法
- swiper设置autoplay不起作用
- java开发手机app_java 怎么开发手机app接口?
- 两个表格合并怎么做?
- HDMI 连接笔记本与显示器
- 五类车险事故保险公司为何不赔?
- js中text方法是啥意识_JavaScript | 文本节点Text常用方法
- ③⭐全网首发☀️数据有道之数据库技术❤️干货大全【持续更新】❗❗❗
- 电商精细化运营的五大关键指标和三个关键思路——笔记
- 教你使用Java制作倒计时
- 村子中有50个人,每人有一条狗