循環(huán)冗余碼計(jì)算例題 CRC循環(huán)冗余碼計(jì)算方法?
CRC循環(huán)冗余碼計(jì)算方法?假設(shè)使用的生成多項(xiàng)式是g(x)=X3 x 1。原始的4位消息是1010,并計(jì)算編碼的消息。解決方案:1。將生成多項(xiàng)式g(x)=X3 x 1轉(zhuǎn)換為相應(yīng)的二進(jìn)制除數(shù)1011。2生
CRC循環(huán)冗余碼計(jì)算方法?
假設(shè)使用的生成多項(xiàng)式是g(x)=X3 x 1。原始的4位消息是1010,并計(jì)算編碼的消息。解決方案:1。將生成多項(xiàng)式g(x)=X3 x 1轉(zhuǎn)換為相應(yīng)的二進(jìn)制除數(shù)1011。2生成多項(xiàng)式有4位(r1)。將原始消息C(x)左移3(R)位至101000,0 3。用生成多項(xiàng)式對(duì)應(yīng)的二進(jìn)制數(shù)除以原始消息的4位(模2):1001——商1010000 1011——除數(shù)1000 1011 011——余數(shù)(校驗(yàn)位)編碼消息(CRC碼):1010000 011 101001,1例如:G(x)=X4 X3 x2 1,(7,3)碼,信息碼110生成的CRC碼為:10111101 | 1100000(即1100000/11101)11101 0100 1101 1001,余數(shù)為1001,所以CRC碼為1101001crc和糾錯(cuò)。接收到CRC碼后,利用生成多項(xiàng)式G(x)進(jìn)行模2除。如果余數(shù)為0,則碼字正確。如果一位中有錯(cuò)誤,則余數(shù)不是0;如果不同位中有錯(cuò)誤,則余數(shù)不同??梢宰C明余數(shù)與越位的對(duì)應(yīng)關(guān)系只與編碼系統(tǒng)和生成多項(xiàng)式有關(guān),而與信息位無(wú)關(guān)
這個(gè)問(wèn)題的答案是:
計(jì)算冗余位的個(gè)數(shù),即生成多項(xiàng)式的最高階多項(xiàng)式的。
在信息位之后添加0個(gè)冗余位。
將第二步的結(jié)果除以生成多項(xiàng)式。這里使用的除法叫做模2除法,即只要部分余數(shù)的高階為1,就可以得到商1,然后上面和下面的減法就是異或。
在連續(xù)計(jì)算的第三步之后,將獲得余數(shù)。
將信息替換為余數(shù)的0的補(bǔ)碼。
給定信息位為1010001,預(yù)定多項(xiàng)式為x4x2x1,獲得循環(huán)冗余碼。
讓我們來(lái)看看計(jì)算步驟。