密码学-->海明校验码(Hamming Code)与buu鸡藕椒盐味

海明校验码(Hamming Code)与buu鸡藕椒盐味

了解海明校验码之前,先补充点基础知识

  1. 码距
    什么是码距呢?码距也叫做海明距离,简单来说就是:在信息编码中,两个合法代码对应位上编码不同的位数称为码距。
    例如:10101和00110从第一位开始依次有第一位、第四、第五位不同,则海明距离为3。码距可以由异或操作得出。

  2. 奇偶校验
    奇偶校验(Parity Check)是一种校验代码传输正确性的方法。根据被传输的一组二进制代码的数位中“1”的个数是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。采用何种校验是事先规定好的。采用此方法得出的那个数字叫奇偶校验位。
    例如:
    奇校验:就是让原有数据序列中(包括你要加上的一位)1的个数为奇数
    1000110(0)你必须添0这样原来有3个1已经是奇数了所以你添上0之后1的个数还是奇数个。
    偶校验:就是让原有数据序列中(包括你要加上的一位)1的个数为偶数,偶校验实际上是循环冗余校验的一个特例,通过多项式x+ 1 得到1位CRC。
    1000110(1)你就必须加1了这样原来有3个1要想1的个数为偶数就只能添1了。

步入正题–海明校验码
海明码的公式:2^k-1 >= n+k 这个式子的意思是,可以用来校验错误的数字个数2^k-1 要大于或者等于原数据位数n和校验位数k的和。显然在2^k中我们要留出一个数表示数据正确,所以我们用 2^k-1来代表出错的位数。
计算步骤:

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值