精华内容
下载资源
问答
  • 奇偶校验_奇校验码和偶校验码的概念和实例
    千次阅读
    2021-06-18 11:24:02

    奇偶校验码

    奇偶校验码就是在信息码后面加一位校验码,分奇校验偶校验

    奇校验:

    添加一位校验码后,使得整个码字里面1的个数是奇数。接收端收到数据后就校验数据里1的个数,若检测到奇数个1,则认为传输没有出错;
    若检测到偶数个1,则说明传输过程中,数据发生了改变

    偶校验:

    添加一位校验码后,使得整个码字里面1的个数是偶数。
    接收端收到数据后就校验数据里1的个数,若检测到偶数个1,则认为传输没有出错;
    若检测到奇数个1,则说明传输过程中,数据发生了改变,要求重发。

    relive

    在这里插入图片描述

    exercise:

    给出两个编码1001101和 1010111的奇校验码和偶校验码:

    设最高位为校验位,余7位是信息位,则对应的奇偶校验码为
    在这里插入图片描述
    !!事实上,将一个信息码前面加1/0,分别得到两个数,这两个数中一个是奇校验码,另一个就是偶校验码(分别数这两个n+1位校验码中包含的的1的个数,如果是奇数,那它就是奇校验码,否则就是偶校验码

    更多相关内容
  • 奇偶校验码

    2021-11-09 12:44:05
    1. 什么是奇偶校验码 英文为:Parity Check 跟前面提到过的CRC校验码一样,奇偶校验码也是一种校验码,它用来检测数据传输过程中是否发生错误,是众多校验码中最为简单的一种。 顾名思义,它有两种校验方法:校验...

    1. 什么是奇偶校验码

    英文为:Parity Check

    跟前面提到过的CRC校验码一样,奇偶校验码也是一种校验码,它用来检测数据传输过程中是否发生错误,是众多校验码中最为简单的一种。

    顾名思义,它有两种校验方法:奇校验和偶校验

    奇校验:原始码流+校验位 总共有奇数个1

    偶校验:原始码流+校验位 总共有偶数个1
    2. 算法
    跟CRC类似,也是在原始码流后面,加上校验位。不同的是,它的校验位只有一位,要么是0,要么是1。并且它的校验码还可以放在码流的前面。

    如下图。
    在这里插入图片描述
    例如下图有5组原始码,校验位的计算方法如下。红色代表校验位。

    相信大家稍微动下脑子就能想明白,我就不做过多解释了。
    在这里插入图片描述
    3. 应用举例
    奇偶校验码一个最为常见的应用场合就是ASCII码。

    ASCII码占用一个字节,低7位是有效位,最高位用作奇偶校验。
    在这里插入图片描述
    4. 错误检测能力
    只能检测出奇数个错误。

    例如还是ASCII码 大写字母 A

    奇校验 正确码流 11000001

    错1位 11000011 变成了偶数个1,能检测出错误

    错2位 11000010 变成了奇数个1,检测不出错误

    错3位 11001010 变成了偶数个1,能检测出错误

    偶校验 正确码流 01000001

    错1位 01000011 变成了奇数个1,能检测出错误

    错2位 01000010 变成了偶数个1,检测不出错误

    错3位 01001010 变成了奇数个1,能检测出错误

    5. 奇校验还是偶校验
    那么使用中是选择奇校验还是偶校验呢? 其实都有应用了。

    奇校验一个重要的特征是产生不了全0代码,所以在实际操作过程中选择的时候要考虑到这一点。
    转自:zhihu-秒懂 奇偶校验码

    展开全文
  • BCD 十进制数用二进制编码的形式,通过专门的十进制数运算指令进行处理。计算机中有专门的逻辑线路在BCD运算时使每4位二进制数按十进制进行处理。 每位十进制数的取值可以是0-9这十个数之一,因此,每一个十进制...

    BCD码

    十进制数用二进制编码的形式,通过专门的十进制数运算指令进行处理。计算机中有专门的逻辑线路在BCD码运算时使每4位二进制数按十进制进行处理。

    每位十进制数的取值可以是0-9这十个数之一,因此,每一个十进制数位必须至少由4位二进制位来表示。而4位二进制位可以组合成16种状态,去掉10种状态后还有6种冗余状态,所以从16种状态中选取10种状态来表示十进制数位0-9的方法很多,可以产生多种BCD种。

    8421码的映射关系:

    在这里插入图片描述
    4个二进制位 ------>16种不同的状态

    BCD码值使用其中10种 ------>不同的映射方案

    注:0000-1001分别对应0-9,进行加法后若超出该范围,则需+0110进行修正(强制向高位进1)

    余3码:8421码+ ( 0011 ) 2 (0011)_2 (0011)2

    在这里插入图片描述

    2421码:改变权值定义

    在这里插入图片描述
    2、4、 2、 1分别对应,每一位的权值

    表示0-4时最高位为0,表示5-9时最高位为1

    奇偶校验码

    几个简单的概念:

    码字:由若干位代码组成的一个字

    两个码字间的距离:将两个码字逐位进行对比,具有不同的位的个数

    码距:一种编码方案可能有若干个合法码字,各合法码字间的最小距离

    当码距d=1时,无检错能力;当d=2时,有检错能力;当d>=3,若设计合理,可能具有检错、纠错能力。

    奇偶校验码

    奇校验码:整个校验码(有效信息位和校验位)中“1”的个数为奇数

    偶校验码:整个校验码(有效信息位和校验位)中“1”的个数为偶数

    在这里插入图片描述
    例:给出两个编码1001101和1010111的奇校验码和偶校验码。
    设最高位为校验位,余7位是信息位,则对应的奇偶校验码为:
    奇校验:11001101 01010111
    偶校验:01001101 11010111

    偶校验的硬件实现:各信息进行异或(模2加)运算,得到的结果即为偶校验位

    ⊕:异或(模2加)

    0⊕0=0
    0⊕1=1
    1⊕0=1
    1⊕1=0

    求偶校验位:

    1⊕0⊕0⊕1⊕1⊕0⊕1=0

    1⊕0⊕1⊕0⊕1⊕1⊕1=1

    进行偶校验(所有位进行异或,若结果为1说明出错):

    0⊕1⊕0⊕0⊕1⊕1⊕0⊕1=0

    海明校验码

    偶校验:1010 ->01010,能发现奇数位错误,但无法确定是哪一位出错。

    海明码设计思路:将信息位分组进行偶校验 ->多个校验位 ->多个校验位标注出错位置

    信息位:n
    校验位:k ------->2^k种状态
    信息位+校验位:n+k
    ——————> 2^k>=n+k+1

    其中n+k位中任何一位都可能出错,1表示1中正确状态
    在这里插入图片描述
    海明码求解步骤:

    例:信息位:1010

    1.确定海明码的位数:2^k>=n+k+1

    n=4 ----> k=3
    设信息位 D 4 D_4 D4 D 3 D_3 D3 D 2 D_2 D2 D 1 D_1 D1(1010),共4位,校验位 P 3 P_3 P3 P 2 P_2 P2 P 1 P_1 P1,共3位,对应的海明码为 H 7 H_7 H7 H 6 H_6 H6 H 5 H_5 H5 H 4 H_4 H4 H 3 H_3 H3 H 2 H_2 H2 H 1 H_1 H1

    2.确定校验位的分布

    校验位 P i P_i Pi放在海明位号位2i-1 的位置上,信息位按顺序放在其余位置
    在这里插入图片描述
    3.求校验位的值

    二进制:

    H 3 H_3 H3:3 -->011

    H 5 H_5 H5:5 -->101

    H 6 H_6 H6:6 -->110

    H 7 H_7 H7:7 -->111

    将末尾为1的值进行偶校验:

    P 1 P_1 P1= H 3 H_3 H3 H 5 H_5 H5 H 7 H_7 H7= D 1 D_1 D1 D 2 D_2 D2 D 4 D_4 D4=0⊕1⊕1=0

    同理中间一位:

    P 2 P_2 P2= H 3 H_3 H3 H 6 H_6 H6 H 7 H_7 H7= D 1 D_1 D1 D 3 D_3 D3 D 4 D_4 D4=0⊕0⊕1=1

    第一位:

    P 3 P_3 P3= H 5 H_5 H5 H 6 H_6 H6 H 7 H_7 H7= D 2 D_2 D2 D 3 D_3 D3 D 4 D_4 D4=1⊕0⊕1=0

    在这里插入图片描述
    4.纠错

    对各个分组进行偶校验运算
    校验方程:

    S 1 S_1 S1= P 1 P_1 P1 D 1 D_1 D1 D 2 D_2 D2 D 4 D_4 D4

    S 2 S_2 S2= P 2 P_2 P2 D 1 D_1 D1 D 3 D_3 D3 D 4 D_4 D4

    S 3 S_3 S3= P 3 P_3 P3 D 2 D_2 D2 D 3 D_3 D3 D 4 D_4 D4

    接收到:1010010

    S 1 S_1 S1= P 1 P_1 P1 D 1 D_1 D1 D 2 D_2 D2 D 4 D_4 D4=0⊕0⊕1⊕1=0

    S 2 S_2 S2= P 2 P_2 P2 D 1 D_1 D1 D 3 D_3 D3 D 4 D_4 D4=1⊕0⊕0⊕1=0

    S 3 S_3 S3= P 3 P_3 P3 D 2 D_2 D2 D 3 D_3 D3 D 4 D_4 D4=0⊕1⊕0⊕1=0

    海明码的检错、纠错能力:纠错——1位
    检错——2位

    展开全文
  • 常用编码的介绍
  • 有限域上常规低密度奇偶校验码的权重分布
  • 奇偶校验码】 采用奇偶校验方式的校验码被称为奇偶校验码。假设奇偶校验码有n位,其中奇偶校验位占1位,信息位占n-1位。以8bit为例,奇偶校验位占1位且在最高位(在最低位也可),剩下7位为信息位。 校验,使得...

    【前言】

    数据在传输的过程中,会受到各种干扰的影响,如脉冲干扰,随机噪声干扰和人为干扰等,这会使数据产生差错。为了能够控制传输过程的差错,通信系统必须采用有效措施来控制差错的产生。

    数据在传输过程中传输的都是0和1,传输时有最小的数据单位。A传给B一个数据单位时,B在接收了数据单位时面临两个问题:一是数据单位有没有错误(即检错),二是数据单位如果错了能不能纠正(即纠错)。所以,为了解决这个问题,数据单位中不能全部都是数据本身,还要包含其他帮助检错或纠错的东西,将这个数据单位称为校验码。

    如果校验码无错,自然可以从校验码中取出数据。(发送端和接收端会事先约定好校验码中哪些位是数据)如果有错,且不能纠错,那么接收端当前接受的校验码就会被舍弃,请求发送端重传。

    【奇偶校验码】

    采用奇偶校验方式的校验码被称为奇偶校验码。假设奇偶校验码有n位,其中奇偶校验位占1位,信息位占n-1位。以8bit为例,奇偶校验位占1位且在最高位(在最低位也可),剩下7位为信息位。

    奇校验,使得校验码中的1的个数为奇数。偶检验,使得校验码中的1的个数为偶数。

    信息位为1001101,有4个1,采用奇校验,应该加个1(即校验位为1),使得校验码的1的个数为奇数。所以,采用奇校验时的校验码为11001101。同样的,采用偶校验时的校验码为01001101.

    信息位为101 0111,则奇校验为0101 0111,偶检验为1101 0111

    信息位为000 0000,则奇校验为1000 0000,偶校验为0000 0000

    下面以奇校验为例。

    若是在传输过程中,校验码有一位发生了改变,这个改变可能在信息位,也可能在校验位。注意,改变要么从0变1,要么从1变0。无论哪中改变,校验码中1的个数都会从奇数变为偶数。在接收端,检测接收到的校验码,发现1的个数为偶数,就表明这个数据出错了,也即有了检错能力,但是不能纠错,因为不知道是哪一位出错了。

    如果校验码有两位发生改变呢,那么改变后校验码中1的个数仍为奇数,所以这时就不能检错。

    对我们来说,是数1的个数来判断校验码是否出错了,对于计算机来说,是通过异或运算来判断1的个数。异或运算,相异为1,相同为0。

    采用奇校验时,1的个数为奇数,将校验码的所有位作异或运算,那么得到的结果一定是1。反之,亦成立。

    采用偶校验时,1的个数为偶数,将校验码的所有位作异或运算,那么得到的结果一定是0。反之,亦成立。

    特点:只能检测奇数个位数改变的出错情况,不能纠错。奇校验不会产生全0校验码。

    【海明码】

    海明码又被称为汉明码,其实质是多重奇偶校验码。假设信息位有n位,信息位被分成多组,总计k个校验位,对每组进行偶校验。校验位的位置在整个校验码的二的幂次的位置,即1、2、4、8、16等位置处。其中n和k的关系为:

    2^{k}\geq n+k+1

    分别代入不同n,可得对应的k为:

    以信息位1010为例,n=4,对应的k=3,也即校验码共有7位,校验码的第1、2、4位为校验位。这样得到了校验码的长度和校验位的位置,当前校验码为101?0??,随后要求校验位的值。注意计算机中低位在右边,高位在左边。

    计算第一个校验码时(即第一组),从当前位开始,连续校验1位,跳过1位后,再连续校验1位,再跳过1位······也即选择第1、3、5、7位,其为011?这四位的采用偶校验的时,1的个数应该为偶数(异或运算结果应该为0),所以?=0。

    计算第二个校验码时(即第二组),从当前位开始,连续校验2位,跳过2位后,再连续校验2位,再跳过2位······也即选择第2、3、6、7位,其为100?采用偶检验时,?=1。

    计算第三个校验码时(即第三组),从当前位开始,连续校验4位,跳过4位后,再连续校验4位,再跳过4位·······也即选择第4、5、6、7位,其为101?采用偶校验时,?=0。

    如此,求得了信息位1010的海明码为1010 010

    随后要确定这个海明码经过传输后,接收到的数据是否无误,即如何校验海明码。

    校验海明码和奇偶校验的方式类似,每组信息中一位是校验位,其他是数据位。

    对第一组,通过对第1、3、5、7位进行异或运算,看结果是否为0。如果为0,表明这几位的数据没出错。

    对第二组,通过对第2、3、6、7位进行异或运算,看结果是否为0。如果为0,表明这几位的数据没出错。

    对第三组,通过对第4、5、6、7位进行异或运算,看结果是否为0。如果为0,表明这几位的数据没出错。

    如果所有结果都为0,表明数据无误。如果结果有1,表明有误。也即可以检错。

    假设有1位发生了错误,且错误在第6位,则第一组结果为0,第1、3、5、7位没有错误;第二组结果为1,第2或者6位错误;第三组结果为1,第4或者6位错误。可推知,第6位错误。也即有一位的纠错能力。(将三组结果逆序组合,结果为110,表示6,即第6位出错)(再次强调,计算机中高位在左边。)

    (可以检错一位的数学证明还不清楚)

    假设有2位发生了错误,且错误在第2位和第3位,则第一组结果为1,则第1、3、5、7位中有1位错误;第二组结果为0,没有错误;第三组结果为0,没有错误。因此,可以知道数据有错误,但不知道错误在哪。

    特点:具有1位纠错能力和2位检错能力

    【循环冗余码校验码CRC】

    CRC的基本思想是:在发送端和接收端约定一个除数, 当接收端将校验码进行除法运算后得到的余数为0,则表示校验码无措,否则进行重传或纠错。

    校验码包含K个信息位和R个校验位,R为除数的最高次幂,除数通常用一个生成多项式表示,例如生成多项式G\left ( x \right )=x^{3}+x^{2}+1表示除数为1101,R=3。

    G\left ( \right )=1\cdot x^{3}+1\cdot x^{2}+0\cdot x^{1}+1\cdot x^{0}

    假设信息位为101001,则校验码有9位,低三位为校验位,初始值为0,随后用除数进行模2除法获得余数,余数为校验码的值,则校验码为101001 001

    假设9位中任意一位发生错误,则都会得到一个确定的余数,当选择合适的生成多项式时,会使得余数各不相同,因此发生错误的位数和余数可以建立一一对应的关系,能进行1位纠错。

    CRC是普遍采用的检错方式,其理论上

    1)可检测出所有奇数个错误;

    2)可检测出所有双比特的错误;

    3)可检测出所有小于等于校验位长度的连续错误;

    4)以相当大的概率检测出大于校验位长度的连续错误

    【参考】

    https://baike.baidu.com/item/%E6%95%B0%E6%8D%AE%E6%A0%A1%E9%AA%8C

    《计算机组成原理》

    https://baike.baidu.com/item/%E5%BE%AA%E7%8E%AF%E5%86%97%E4%BD%99%E7%A0%81

    展开全文
  • 资源名:低密度奇偶校验码的线性编码方法的matlab源程序 资源类型:matlab项目全套源码 源码说明: 全部项目源码都是经过测试校正后百分百成功运行的,如果您下载后不能运行可联系我进行指导或者更换。 适合人群:...
  • 奇偶校验码是一种增加二进制传输系统最小距离的简单和广泛采用的方法。例如,单个的奇偶校验将使码的最小距离由一增加到二。 一个二进制码字,如果它的码元有奇数个1,就称为具有性。例如,码字“10110101”有五...
  • 奇偶校验码校验码 和 偶校验码 的统称. 它们都是通过在要校验的编码上加一位校验位组成. 如果是 校验 加上校验位后,编码中1的个数为 奇数个 如果是 偶校验 加上校验位后,编码中1的个数为 偶数个 水平奇偶校验...
  • 校验码是指能够发现或能够自动纠正错误的数据编码,也称检错纠错码。 校验码的原理是通过增加一些冗余码,来检验或纠错编码。
  • LDPC低密度奇偶校验码

    2016-05-10 20:33:10
    低密度奇偶校验码
  • 2.6.1 码距和数据校验码 两个码组对应位上数字的不同位(0或1)的个数称为码组的距离,简称码距。 比如这里,0000和0001,只有最后一个数字0和1不一致,有一组不同,码距就是1。 表中,正常情况下的码距是1,...
  • 1.奇偶校验码怎么通过奇偶校验码判断数据是正确还是错误呢?(1)校验(1)偶校验为什么无法检查出偶数个错误?2.海明(汉明)校验码什么是海明校验码?一题搞懂海明码,在信息位 n=4 ,校验位 k=3 时,求 1010 的...
  • 在计算机运行时,为保证二进制数据在传输时准确无误,通常...一、奇偶校验码 在编码中增加一位校验位来使编码中的1的个数为奇数或者为偶数,从而使码距变为2.校验就是加上校验位来使编码中的1的个数为奇数,偶校.
  • 校验码(奇偶校验码)

    万次阅读 多人点赞 2020-09-21 21:05:16
    校验码(奇偶校验码) 1.奇偶校验码 通过在编码中增加一位校验位来使编码中1的个数为奇数或者偶数,校验位可以在原编码的前面或者后面加。通过加入校验位后的1个数是奇数还是偶数,可分为两种: 校验:1的个数为奇数...
  • 年 月 铁 道 学报 第 卷 一 一 二 公二二二二 二 二二二一二二艺二二二二二 计算机网络用多维奇偶校验码 靳蕃 西南交通 大 学 提要 本文介绍了几个用来计算水平一垂道奇偶校验码漏检错误图样数目的公式 为了提高...
  • 前言:奇偶校验码是一种增加二进制代码传输距离最简单和最广泛的方法,通过增加冗余位使码字中“1”的个数恒为奇数或者偶数。
  • 奇偶校验码是什么?奇偶校验码怎么检错?奇偶校验码优缺点?
  • 低密度奇偶校验码(LDPC)是哥拉格于1962年提出的一种性能非常接近香农限的好码,并被MacKay和Neal两度重新发现,且证明了它在与基于BP(Belief-Propagation)的迭代译码算法相结合的条件下具有逼近shannon限的性能...
  • 计算机组成原理——奇偶校验码

    千次阅读 2021-05-13 09:28:18
    文章目录校验原理简介概念奇偶校验码偶数个错误校验不出总结 校验原理简介 概念 由若干位代码组成的一个字叫码字。 将两个码字逐位进行对比,具有不同的位的个数称为两个码字间的距离。 一种编码方案可能有若干个...
  • 2.1.4 奇偶校验码

    2022-02-22 13:48:52
    2.1.4 奇偶校验码 奇偶校验码(大纲已删但计网要考) 校验原理 奇偶校验 一、校验原理 由若干位代码组成的一个字叫做码字。 将两个码字逐位进行对比,具有不同的位的个数称为两个码字间的距离。 一种编码方案可能...
  • 计算机系统运行时,各个部之间要进行数据交换,为确保数据在传送过程正确无误,常使用检验码。我们常使用的检验码有三种。 分别是奇偶校验码、海明校验码和循环冗余校验码(CRC) 。
  • 奇偶校验码,缺点:只能发现数位的错误 奇偶校验位 有效信息位 1位 n位 eg:给出两个编码1001101和1010111的校验码和偶校验码 设最高位为校验位,余7位为有效信息位,则对应的奇偶校验位为 求奇偶校验位 利用...
  • 低密度奇偶校验码的编码方法研究,李金根,郑紫微,低密度奇偶校验码具有优异的性能,是当前性能最好的信道编码之一。作为超三代通信系统信道编码强有力的竞争者,低密度奇偶校验码
  • 基本概念 码距:一个编码系统中,任意2个合法码字之间的码距的最小值称为该编码系统的码距。 000和001,码距为1 根据信息论基本原理,码距d与校验码检错和纠错能力如下: ...奇偶校验码 D=D1⨁D2⨁D3⨁D4…⨁...
  • 奇偶校验码(Parity Code) Java代码实现

    千次阅读 2021-02-15 08:59:17
    文章目录校验码术语奇偶校验java代码 校验码 计算机系统运行时,为了确保数据在传递过程中正确无误,一是提高硬件电路的可靠性,二是提高代码的校验能力,包括查错与纠错。通常使用校验码的方法来检测传送的数据是否...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 29,627
精华内容 11,850
关键字:

奇校验码