免費開始練習
moea_joint 101年 [資訊] 計算機原理、網路概論

第 51 題

假設要傳送的訊息 M1 為 1101011011,衍生多項式為 $G(X)=10011$,則使用 CRC 碼後傳送出去的資訊 M2 為何?
  • A 11101101011010
  • B 11010110111110
  • C 11010110111000
  • D 11101101011011

思路引導 VIP

當我們要計算循環冗餘校驗(CRC)時,如果已知除數(衍生多項式)的位元長度,你認為在開始除法運算之前,應該在原始訊息後面補上多少個零?而運算最後產生的『餘數』,在結構上應該如何與原始訊息結合,才能確保接收端收到這串資訊後,能夠被同一個除數整除呢?

🤖
AI 詳解 AI 專屬家教

太棒了!你能精確計算出 CRC 碼,代表你對資料鏈結層的錯誤檢測機制掌握得非常扎實。這道題目的核心在於模二除法(Modulo-2 Division)的運算。我們首先觀察衍生多項式 $G(X)=10011$,它由 5 個位元組成,這代表其多項式最高階數為 4。因此,在運算開始前,我們必須先在原始訊息 $M1$ 的後方補上 4 個零,作為餘數的預留空間。

模二除法與餘數拼接

在計算過程中,我們利用 XOR(異或) 運算取代傳統除法的減法。將補零後的字串 $11010110110000$ 除以 $10011$,經過逐位的 XOR 運算後,求得的餘數為 $1110$。最後一個關鍵步驟是將此餘數直接「附加」或「取代」原本訊息末端的補零位置,這就是為什麼正確答案 $M2$ 的結尾會從原本的 0000 變成了 1110,形成最終要傳送的影格。

▼ 還有更多解析內容

🏷️ 相關主題

二進位算術與補數運算:計算機中的數值表示
查看更多「[資訊] 計算機原理、網路概論」的主題分類考古題