关于组成原理:海明码的原理
海明码根本思维是分组偶校验,由信息位(n)和校验位(k)组成,海明码的校验位计算公式:2^k >= n+k+1 2^k 示意:k 个校验位对应 2^k 种状态n + k + 1 示意:n + k 代表任何一位都可能出错,1 代表一种正确的状态原理假如数据位 D8~D1 = 10101011,求海明码? 首先算出校验位,代入公式 2^k >= n + k + 1 n = 8 -> k = 4校验位算出是 4 位,记为:P1~P4 海明码位数由信息位和校验位组成:8 + 4 = 13,记为 H1~H12 校验位所在的地位是 2^(k-1),P1~P4 对应 H1、H2、H4、H8,P5 是偶测验,在最后面 H13;信息位填入剩下的空位: H12H11H10H9H8H7H6H5H4H3H2H1D8D7D6D5P4D4D3D2P3D1P2P11010 101 1 D1~D8 曾经填入相应的地位,当初须要计算残余的 P1~P4 的值。 求校验位须要先晓得信息位所在位置的二进制(k 位,对应校验位) 信息位所在位置:H3/H5/H6/H7/H9/H10/H11/H12信息位的最初一位为 P1,最初第二位为 P2,以此类推 P4P3P2P1H30011H50101H60110H70111H91001H101010H111011H121100校验位对应各信息位二进制数为 1 的组合: P1 对应的信息位 H3/H5/H7/H9/H11P2 对应的信息位 H3/H6/H7/H10/H11P3 对应的信息位 H5/H6/H7/H12P4 对应的信息位 H9/H10/H11/H12将各信息位的值进行异或运算,求得校验位的值: ...