0丫O0Z在中国能做到上市吗?

版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明

首先要懂用海明码编码的信息位哪些位是校验位那些位是信息位。

规定了 校验位的位置是位于 整个信息编码中2n的位置比如说20,21,22 对应的也就是1,24位,都是需要放校验位的因此在海明码的编码体系当中,所有的校验位都昰固定的其他位置则是填充信息位。

假如只有一个信息位那么最终他的编码有多长呢?这个很好理解我们知道20是第一位,不能放信息位21是第二位也不能放信息位,只有第三位能放所以他的编码有3位。

首先要知道1011是四位的信息想存放这思维信息需要几位编码呢,
20校验位 21校验位 1信息位 22校验位 2信息位 3信息位 4信息位
因此可知1011一共需要7位编码
但是信息位只有四位分别在7位 6位 5位 3位
想要验证信息位是否正确比洳:
5位: 22 + 20 因此由 4位校验位 1位校验位验证 5位信息位
3位: 21 + 20 因此由 2位校验位 1位校验位验证 3位信息位

比如说第七位如何验证:就通过这所需要的校驗位进行异或操作就是将4位 2位 1位进行抑或处理得到的值是
异或是指: 参与运算的两个值,如果两个相应位相同则结果为0,否则为1

反之亦然如何知道校验码是多少就是通过信息码,比如说22第四个位置的校验码是如何得到的由上可知 7位 6位 5位都有用到22校验码,
所以我们将7位信息码的值 异或 上6位的 最后异或上5位的信息码就能得到4位的校验码
所以将 1 异或 0 异或 1 结果就是0 第四位为0
同理第二位校验码为 1 异或 0 异或 1 结果為0
第一位校验码为 1 异或 1 异或 1 结果为1
所以最后整串校验码为 1010101

这个很简单 就是将收到的校验码 异或 正确的校验码
转成十进制就知道哪个位置出錯了

我要回帖

更多关于 0药 的文章

 

随机推荐