關於乙個二進位制數1111000 除以1101,模2除法的商為1011,餘數為111.這個結果不同於十進位制除法。所以特記下。具體步驟如下:
#第一步
1111000
1101
0010000
----餘數,商為
1,只要第一位非
0商就是
1#第二步,每步移一位,當起始位為0時,除以0;為1時除以除數。
010000
0000
010000
----餘數,商為
0,只要第一位是
0商就是
0#第三步
10000
1101
01010
-----餘數,商為
1,這裡的餘數你猜出,其實就是對應位異或
#第四步
1010
1101
0111
------餘數,商為
1,如果位數比除數還小,不再繼續運算
#最終餘數為111,商為1011
模2除法可以用在crc冗餘校驗上。k,h均為2進製數,k向左移r,然後k除以h。模2除得到的餘數在放到r位中。例如:k=1111,h=1101,r=3,移位之後得1111000,最後crc=1111111。
crc校驗碼還有一種方法:
例題:採用crc進行差錯校驗,生成多項式為g(x)=x
4+x+1,資訊碼字為10110,則計算出的crc校驗碼是()
解析:g(x)=x
4+x+1對應的二進位制序列為10011,下面進行「按位異或」運算:
模2除法介紹 CRC校驗碼計算
需要先了解模2加減法,究其根本其實是按位進行異或操作。模2加減法 按位異或操作,相同則0,不同則1 0 0 0 1 1 0 0 1 1 1 0 1 例子 1011 1000 計算過程 1 0 1 1 1 0 0 0 0 0 1 1 結果 1011 1000 0011 跟普通除法類似,但是 每次步驟的...
CRC校驗之模2除法(學習筆記 備忘)
模2除法與長除法類似,但有個特點 不借位。說白了就是按位異或,相同為0,不同為1。它有三個原則 1 除數與被除數最高幾位 與除數字數相同 做異或,商1。除數首位必須為1 2 餘數先去掉首位,若此時餘數最高位為1,商1,並對以它為除數繼續模2除。若最高位為0,則商0,重複步驟2。3 直到餘數字數小於除...
模2除法(CRC冗餘碼計算)和二進位制 十進位制除法
複習網路,不小心碰到差錯控制的crc冗餘碼計算,隨便算了一下,發現自己算的不對,於是發現了一串知識,總結如下。主要就是crc中用到的模2運算和二進位制 十進位制除法有別,前者是特殊的除法,甚至根本不是除法,就是異或。看來必然是要增加開銷的,沒有白吃的午餐,難怪名字叫做 冗餘 呢 就是傳送方先把冗餘碼...