有人可以澄清我哪里出错了。我在这2个小时......我知道代码中的第一个奇偶校验包括它自己,并跳过它之后的每个第一个数字,是和否序列。第二组跳过每一秒后的数字和后面的数字。包括自身和前3个数字后,第4个应该跳过4个。
These are my message bits in its original form: 1101011011000110
and I want to add the hamming parity bits onto them.
? = Parity
so this means ??1?101?01101100011?0
Parity 1 = ?110110010
Parity 2 = ?101111011
Parity 3 = ?1010110?0 (this is where my issue is so I cant move on)
Parity 4 = cant get to this part...
答案 0 :(得分:0)
看起来您在错误的位置有第5个奇偶校验位。
你有:
α1?101?01101100011?0
但它应该是:
α1?101?0110110?00110
因此,重新计算奇偶校验位(粗体表示“保持”,否则跳过),我们遵循“保持1,跳过1,保持1 ......”模式:
?? 1 ? 1 0 1 ? 0 1 1 0 1 1 0 ? 0 0 1 1 0
P1: ?1110110010 (even number of 1s, so 0 parity)
(丢弃前1位)按照“保持2,跳过2,保持2 ......”的模式:
?1 ?1 01 ?0 11 01 10 ?0 01 10
P2: ?101111001 (even number of 1s, so 0 parity)
(丢弃接下来的2位)按照“保持4,跳过4,保持4 ......”的模式:
?101 ?011 0110 ?0011 0
P4: ?10101100 (even number of 1s, so 0 parity)
(丢弃接下来的4位)按照“保持8,跳过8,保持8 ......”的模式(但我们只能保留8,跳过6,这样就足够了):
?0110110 ?00110
P5: ?0110110 (even number of 1s, so 0 parity)
因此最终的汉明(21,16)编码值是:
001010100110110000110
(21位,其中16位是数据位)