海明校验码(靠谱的解释)

https://www.cnblogs.com/zsswpb/p/5771636.html

【定义】

海明码(Hamming Code)是利用奇偶性来检错和纠错的校验方法。海明码的构成方法是在数据位之间的确定位置插入k个校验位,通过扩大吗距来实现检错和纠错。对于数据位m的数据,加入k位的校验码,它应满足:

2^k>m+k+1

【例子】

设数据为01101001,试采用校验位求其偶校验方式的海明码。

(1)确定数据位D和校验位P在海明码中的位置:

    由海明码编码规则可知:

pi在海明码的第2i-1

             比如P4=2^(4-1)=8,所以位于第8位

(2)确定校验关系

这个难点在于如何确定校验位组。

举一个例子来说:H3=D0,海明码下标为3,我们必须用已知的校验位(P1,P2,P3,P4)来表示3,这里3就可以等于1+2。

   

比如P1 的校验位为表格中红色标记出来所对应的海明码的位数

故:P1校验:P1,D0,D1,D3,D4,D6

P1=D0⊕D1⊕D3⊕D4⊕D6=1⊕0⊕1⊕0⊕1=1

⊕符号:代表异或,相同则为0,不同则为1。只要仔细一定可以计算正确。

P2、P3、P4的海明码计算也是如此,关键是要找出正确的校验位组,所以海明校验码:011001001101

原文地址:https://www.cnblogs.com/quietwalk/p/8607932.html

时间: 2024-08-07 23:15:37

海明校验码(靠谱的解释)的相关文章

海明校验码

原博地址:http://blog.csdn.net/yudandan10/article/details/11878421  计算机组成中的海明校验码,相信学过的都会有了解,那么对其中校验位的确定,我想似乎有些人不是很明白,今天我来详细的把如何确定校验位分享一下 首先看下基本的概念  : 2^r≥k+r+1 其中r为校验位 ,k为信息位  信息位是已知的,那么如何确定校验位呢,用一个例子来说明 例如:二进制码1011  求它的海明编码 步骤如下: 1.首先确定信息位,也就是1011了,那么随之K

计组_海明校验码

原理: 在数据中加入几个校验码,并把数据的每一个二进制位分配在几个奇偶校验组中. 设:校验位的个数为r,能表示2^r个信息,1个表示“没错误”, 2^r -1个指出错误发生在哪一位. k= 2^r –1-r个信息可用于纠正数据位. 2^r≥k+r+1 若要检测并纠正一位错,同时发现两位错,r,k应满足下列关系: 2^r-1≥k+r      (见表3.8) 校验位和数据位是如何排列的 校验位排列在  2^(i–1) (i =0,1,2,…)的位置上 例:有一个编码 为D4D3D2D1,由此生成一

(转)海明校验码--确定校验位

转自 :http://blog.csdn.net/yudandan10/article/details/11878421 计算机组成中的海明校验码,相信学过的都会有了解,那么对其中校验位的确定,我想似乎有些人不是很明白,今天我来详细的把如何确定校验位分享一下 首先看下基本的概念  : 2^r≥k+r+1 其中r为校验位 ,k为信息位  信息位是已知的,那么如何确定校验位呢,用一个例子来说明 例如:二进制码1011  求它的海明编码 步骤如下: 1.首先确定信息位,也就是1011了,那么随之K的长

计算机组成原理的【海明校验码】(软考)

具体的原理可以直接百度不多说,直接写怎么解决 一.前提: 数据位中仅有一位出错,这是海明码产生的依据 二.异或运算 相同为0,不同为1,异或的符号为"xor"或者"⊕",例如:1 xor 1 = 0,1 xor 0 = 1 三.基本公式 2^r≥k+r+1 其中r为校验位 ,k为信息位  信息位是已知的 四.具体例子 1. 求(1101)2的海明码 (1) 首先求出校验的位数和位置 位数:根据公式计算,校验位数最小为3 位置:2^n(位置一般为2的n次方,1.2.4

常用校验码(奇偶校验,海明校验,CRC)学习总结

常用校验码(奇偶校验,海明校验,CRC)学习总结 一.为什么要有校验码? 因为在数据存取和传送的过程中,由于元器件或者噪音的干扰等原因会出现错误,这个时候我们就需要采取相应的措施,发现并纠正错误,对于错误的检测和校正,大多采取"冗余校验"的思想,即除原数据外,额外增加若干位编码,这些新增的代码称为校验位. 二.数据是如何校验的? 输入的数据m经过f得到p校验位. 数据m和校验位一起通过存储器或传输线路,分别得到m'和p',这两者可能和m,f相同,也可能由于传输储存发生问题而不同. 由数

校验码

校验码在内存和通信的检错容错中应用广泛. 常用的校验码有奇偶校验码(Parity).海明校验码和循环冗余校验码(CRC) 奇数偶数用异或操作即可计数实现. 奇偶校验码是对每个byte (8 bits) 加一位校验码,此时根据所采用的的是奇校验还是偶校验来确定校验码的值,使之这个序列中的1的个数为奇数/偶数. 优点:高效,快: 缺点:能反映错误但是无法定位错误,只能说错了就重传 海明码则是多重奇偶校验,它的做法是假设N位的数据,我们采用多位校验码,假设K位,加入了这K位校验码之后,我们能够用校验码

海明校验

转自:https://www.cnblogs.com/zsswpb/p/5771636.html 做了调整与补充 [定义] 海明码(Hamming Code)是利用奇偶性来检错和纠错的校验方法.海明码的构成方法是在数据位之间的确定位置插入k个校验位,通过扩大吗距来实现检错和纠错. 对于数据位m的数据,加入k位的校验码,它应满足香农第二定理:n=m+k ≤ 2k-1 说明:这里的m是指我们待编有效信息的位数,例如110101就是m=6,然后代入m,6+k ≤2k-1得到m=6,k≥4(取最小值),

【计算机组成原理】校验码

奇偶校验码 组成奇偶校验码的基本方法:在n位有效信息位上增加一个二进制校验位,构成一个n+1位奇偶校验码 奇校验:使n+1位的奇偶校验码中1的个数为奇数 偶校验:使n+1位的奇偶校验码中1的个数为偶数 只能发现无法修改 海明校验码: 多重校验  分成多组 每一组做奇偶校验 可以发现并纠错 原文地址:https://www.cnblogs.com/dream-to-pku/p/11615995.html

数据校验码概述

[TOC] 奇偶校验码 最简单实用的一种校验数据的方式.在原始数据的后面加一个校验位来实现数据的校对. 若原始数据为:\(D=(D_1,D_2...D_n)?\) 偶校验:$D_偶 = D_1 \bigoplus D_2 \bigoplus...D_n $ 奇校验:\(D_奇 = \overline{ D_1 \bigoplus D_2 \bigoplus...D_n }\) 验算时: \(F = \overline{D_1 \bigoplus D_2 \bigoplus...D_n \bigo