回覆列表
  • 1 # 使用者6195199428911

    這是資料通訊中的一個問題.也是對資料通訊糾錯的一種方式.這樣說吧,假定對方的網絡卡給你傳送類似10100101這樣的一些封包,由於網線可能會受到磁場等干擾元素的干擾,你怎麼確信你接收到的包是正確的?顯然這樣要有一個校驗與糾錯的機制,比如對於校驗,將前邊所以有數字進行位求和,就是將每個bit進行相加,得到的最終結果以二進位制補到包的最後,當然這裡加出來的結果是4(100),也就是最終形成10100101100傳送給你,如果由於訊號的突變或時某種原因,將你接到的結果前8位(資料包)也按同樣的方法計算校校驗碼,然後與8位後的結果進行比較,如果不相等,則一定是出錯了!這就是校驗,但我所說的是位比較的方式,顯然只能校驗錯誤,不能校驗正確.也就是說相等也未必是正確的資訊.但你知道了,我是以bit進行校驗的,而你的文中是要求是位元組進行校驗的,其實沒有什麼區別.只不過現在網路中的小封包一般會被丟掉,而封包內不可能只有一個位元組的.而你文其實就是一個校驗演算法.有些較好的演算法還可能使用有糾錯碼,不但能發現錯誤,還能改正錯誤.當然也是有限制的.比如只能改正一個bit或幾個bit,如果超出,則要求重新發包.

  • 中秋節和大豐收的關聯?
  • 沒有溫度計怎樣判斷自己是否發燒?