Re: [理工] [計組] Hamming code

看板Grad-ProbAsk作者 (真是個麻煩)時間16年前 (2010/03/24 20:11), 編輯推噓3(306)
留言9則, 3人參與, 最新討論串2/2 (看更多)
※ 引述《bigrat2 (MrEric)》之銘言: : For the 8bit word 00111001, the check bits stored with it would : be 0111 .Suppose when the word is read from memory ,the check bits : are calculated to be 1101,What is the data word that was read from : memory? : sol: : hamming code D8 D7 D6 D5 C8 D4 D3 D2 C4 D1 C2 C1 : 12 11 10 9 8 7 6 5 4 3 2 1 : 0 0 1 1 0 1 0 0 1 1 1 1 : 0111 o+ 1101 =1010 表bit是錯誤的 故從記憶體讀出的資料字語為 00011001 : 可以請問高手是怎麼看出來的 : 我還真的看不懂 : 謝謝各位 漢明碼可以更正一碼錯誤 雖然題目沒說 但是其實就是問哪一bit改變了 原本檢查碼是0111現在變1101 0111 xor 1101 意義你這樣想,因為某一碼改變了所以檢查碼跟著改變 影響的是哪些? 因為xor結果為1010 就代表"因為原本8bit中某一碼改變,導致C2及C8改變" 根據漢明碼編碼的原則,能夠同時且洽只改變這兩個檢查碼的就是8+2=10這bit 得知D6改變00111001 故推得讀出資料為 00011001 ^ ^ D6 變號 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.25.160 ※ 編輯: monkeykej 來自: 140.112.25.160 (03/24 20:14)

03/24 21:03, , 1F
忘記問 001101001111 他打的解答下面這一列怎來的?
03/24 21:03, 1F
按照編碼原則把檢查碼擺在2的指數次方 有4碼 就是0、1、2、3次方,也就是1、2、4、8碼 12 11 10 9 8 7 6 5 4 3 2 1 C8 C4 C2 C1 這四碼是0111 0 1 1 1 剩下的就是data的8個bit 00111001 0 0 1 1 1 0 0 1 故得到 0 0 1 1 0 1 0 0 1 1 1 1 ※ 編輯: monkeykej 來自: 140.112.25.160 (03/24 21:23)

03/24 21:24, , 2F
這個解答把它編碼結果寫出來,但事實上可以直接推
03/24 21:24, 2F

03/24 21:25, , 3F
有的題目是直接給你12bit編好的結果,要你推哪個某一bit
03/24 21:25, 3F

03/25 09:52, , 4F
謝謝指教:)請問有一個公式2^k >= data+k+1 算出k是哪一bit
03/25 09:52, 4F

03/25 09:53, , 5F
可以算是k是第六個bit 這方法也可以使用嘛?
03/25 09:53, 5F

03/25 10:39, , 6F
挖 不是阿~~~那個公式是算加入需要多少漢明檢查碼
03/25 10:39, 6F

03/25 10:40, , 7F
比如說題目data為8bit 則k=4時 2^4才會大於8+4
03/25 10:40, 7F

03/25 10:40, , 8F
故知道欲將8bit data編碼 需要4bit漢明檢查碼
03/25 10:40, 8F

03/25 10:50, , 9F
感謝 :D
03/25 10:50, 9F
文章代碼(AID): #1BgW5fqv (Grad-ProbAsk)
文章代碼(AID): #1BgW5fqv (Grad-ProbAsk)