迴圈冗餘校驗碼例題[轉帖]
阿新 • • 發佈:2019-01-25
【例】假設使用的生成多項式是G(x)=x^3+x+1。4位的原始報文為1010,求編碼後的報文。
解:
1、將生成多項式G(x)=x^3+x+1轉換成對應的二進位制除數1011。
2、此題生成多項式有4位(R+1),要把原始報文C(x)左移3(R)位變成1010000
3、用生成多項式對應的二進位制數對左移4位後的原始報文進行模2除:
1001-------商
------------------------
1010000
1011----------除數
------------
1000
1011
------------
011-------餘數(校驗位)
【例1】某迴圈冗餘碼(CRC)的生成多項式 G(x)=x^3+x^2+1,用此生成多項式產生的冗餘位,加在資訊位後形成 CRC 碼。若傳送資訊位 1111 和 1100 則它的 CRC 碼分別為_A_和_B_。由於某種原因,使接收端收到了按某種規律可判斷為出錯的 CRC 碼,例如碼字_C_、_D_、和_E_。(1998年試題11)
供選擇的答案
A:① lllll00 ② 1111101 ③ 1111110 ④ 1111111
B:① 1100100 ② 1100101 ③ 1100110 ④ 1100111
C~E:① 0000000 ② 0001100 ③ 0010111
⑤ 1000110 ⑥ 1001111 ⑦ 1010001 ⑧ 1011000
解:
A:G(x)=1101,C(x)=1111 C(x)*2^3÷G(x)=1111000÷1101=1011餘111
得到的CRC碼為1111111
B:G(x)=1101,C(x)=1100 C(x)*2^3÷G(x)=1100000÷1101=1001餘101
得到的CRC碼為1100101
C~E:
分別用G(x)=1101對①~⑧ 作模2除: ① 0000000÷1101 餘000 ② 1111101÷1101 餘001
③ 0010111÷1101 餘000 ④ 0011010÷1101 餘000 ⑤ 1000110÷1101 餘000
⑥ 1001111÷1101 餘100 ⑦ 1010001÷1101 餘000 ⑧ 1011000÷1101 餘100
所以_C_、_D_和_E_的答案是②、⑥、⑧
解:
1、將生成多項式G(x)=x^3+x+1轉換成對應的二進位制除數1011。
2、此題生成多項式有4位(R+1),要把原始報文C(x)左移3(R)位變成1010000
3、用生成多項式對應的二進位制數對左移4位後的原始報文進行模2除:
1001-------商
------------------------
1010000
1011----------除數
------------
1000
1011
------------
011-------餘數(校驗位)
【例1】某迴圈冗餘碼(CRC)的生成多項式 G(x)=x^3+x^2+1,用此生成多項式產生的冗餘位,加在資訊位後形成 CRC 碼。若傳送資訊位 1111 和 1100 則它的 CRC 碼分別為_A_和_B_。由於某種原因,使接收端收到了按某種規律可判斷為出錯的 CRC 碼,例如碼字_C_、_D_、和_E_。(1998年試題11)
供選擇的答案
A:① lllll00 ② 1111101 ③ 1111110 ④ 1111111
B:① 1100100 ② 1100101 ③ 1100110 ④ 1100111
C~E:① 0000000 ② 0001100 ③ 0010111
⑤ 1000110 ⑥ 1001111 ⑦ 1010001 ⑧ 1011000
解:
A:G(x)=1101,C(x)=1111 C(x)*2^3÷G(x)=1111000÷1101=1011餘111
得到的CRC碼為1111111
B:G(x)=1101,C(x)=1100 C(x)*2^3÷G(x)=1100000÷1101=1001餘101
得到的CRC碼為1100101
C~E:
分別用G(x)=1101對①~⑧ 作模2除: ① 0000000÷1101 餘000 ② 1111101÷1101 餘001
③ 0010111÷1101 餘000 ④ 0011010÷1101 餘000 ⑤ 1000110÷1101 餘000
⑥ 1001111÷1101 餘100 ⑦ 1010001÷1101 餘000 ⑧ 1011000÷1101 餘100
所以_C_、_D_和_E_的答案是②、⑥、⑧