微信分享接口网站开发 php,反无人机防御系统,建设一个做资料库的网站,大连网络广告海明码搞懂之前先了解奇偶校验。例如#xff1a;1111 对其进行奇偶校验。 奇检验#xff1a;11111 奇校验使1的个数保持在奇数 偶校验#xff1a;01111 偶校验使1的个数保持在偶数
海明码可以拆分为三步#xff1a;
一、确定校验的位数 公式#xff1a;2^k k n …海明码搞懂之前先了解奇偶校验。例如1111 对其进行奇偶校验。 奇检验11111 奇校验使1的个数保持在奇数 偶校验01111 偶校验使1的个数保持在偶数
海明码可以拆分为三步
一、确定校验的位数 公式2^k k n 1 人话2^k k 数据位数 1 其中k就是有多少个校验位
如100011 的校验位有 2^k k 6 1 2^4 4 6 1 有4位校验位
二、确定校验数的位置
还是100011为例 校验码的位置为Pi 在海明位号为 2^(i-1)
原有的信息位D6 D5 D4 D3 D2 D1
校验位P4 P3 P2 P1
原有位数校验位数H10 H9 H8 H7 H6 H5 H4 H3 H2 H1 H10 H9 H8 H7 H6 H5 H4 H3 H2 H1 D6 D5 P4 D4 D3 D2 P3 D1 P2 P1
海明码为100011
三、放入校验规则
H3 H1H2P1 P2H5 H1H4P1 P4H6 H2 H4P2 P3H7 H1 H2 H4P1 P2 P3H9 H1 H8P1 P4H10 H2 H8P2 P4
H10 H9 H7 H6 H5 H3
1 0 0 0 1 1
然后把包含有P1的取出来做异或⊕
P1 H3 ⊕H5 ⊕H7 ⊕H9 1 ⊕ 1 ⊕0 ⊕ 0 0
然后把包含有P2的取出来做异或⊕
P2 H3 ⊕H6 ⊕H7 ⊕H10 1 ⊕ 0 ⊕0 ⊕1 0
然后把包含有P3的取出来做异或⊕
P3 H6 ⊕H7 0 ⊕ 0 0
然后把包含有P4的取出来做异或⊕
P4 H5 ⊕H9 ⊕H10 1 ⊕ 0 ⊕1 0
将算出的值放入到 D6 D5 P4 D4 D3 D2 P3 D1 P2 P1 得到海明码 1000010100