Re: [請益] 關於parity check無法檢測偶數個錯誤位元
※ 引述《monk0912 (monk)》之銘言:
: 各位大大您好
: 爬過網路上很多部落格的投影片和部落格文章,
: 只有提到 "parity check能檢測出奇數個錯誤位元,無法檢測出偶數個錯誤位元。"
: 如果單只是根據奇同位和偶同位的定義,也無法瞭解上述的意思。
: 是否有大大了解原由或有其他文章教學? 感謝
: 參考資料http://sls.weco.net/node/10695
簡單講就是奇數加偶數仍然是奇數, 而偶數加偶數當然還是偶數.
而奇數加奇數會變偶數, 偶數加奇數會變成奇數.
同位元檢查是計算1的個數是奇數或偶數.
如果現在用的是奇同位, 而我收到的位元串裡面1的個數不是奇數, 那我就知道有問題.
例如: 11011011 => 1有6個 => 一定有出包.
現在, 假設我要傳送的位元串是1000001, 1有2個(偶數),
我在最後加入檢查碼1, 變成10000011, 於是1的個數變3個(奇數).
接收的時候突然被雷打到, 收到的東西是10010011, 發現1的個數是4個(偶數).
所以我可以檢測出有問題.
現在如果我被雷打到兩次, 收到的東西是10011011, 發現1的個數是5個(奇數).
依據奇同位檢查的原則, 我會以為資料沒問題.
換成偶同位檢查, 我發出10000001, 收到的如果是10010001, 我會檢測出錯誤.
如果收到11111111, 因為1的個數是偶數個, 我會以為資料正確.
這就是為什麼沒辦法檢測出偶數個錯誤位元.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 120.124.164.176
推
02/09 14:35, , 1F
02/09 14:35, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):