網(wǎng)校程序員輔導(dǎo)專題授課—計(jì)算機(jī)系統(tǒng)知識

字號:

內(nèi)容簡介:
    1、 問:T循環(huán)冗余取決于K和R值,請問R值是怎么選擇的?
    T答:R值就是生成多項(xiàng)式的階數(shù),也就是生成多項(xiàng)式的次,比如生成多項(xiàng)式為:G(X)=T XP4P+XP3P+X+1 ,則R=4。
    2、問:CRC求余方法和數(shù)學(xué)除法相同?x4-(X4+X3+X+1)=X3+X+1?有沒有負(fù)數(shù)?
    T答:TCRC求余方法和通常的數(shù)學(xué)除法不同,這里采用是的模2除法,即即以2為模,加減時(shí)不進(jìn)位,不借位,和邏輯異或運(yùn)算一致。那么x4-(X4+X3+X+1)=X3+X+1,照此規(guī)則就不會產(chǎn)生負(fù)數(shù)。(注意:前面表示的x4其實(shí)應(yīng)是x的4次方,其它同理)
    3、問:講一講海明碼的奇校驗(yàn)和偶校驗(yàn)。
    T答:對于海明碼,我們了解下面這些就足夠了TT。T要能糾正信息字中的單個錯誤,所需的最小距離為3。實(shí)現(xiàn)這種糾正的方法之一是海明碼。海明碼是一種多重(復(fù)式)奇偶檢錯系統(tǒng)。它將信息用邏輯形式編碼,以便能夠檢錯和糾錯。用在海明碼中的全部傳輸碼字是由原來的信息和附加的奇偶校驗(yàn)位組成的。每一個這種奇偶位被編在傳輸碼字的特定位置上。實(shí)現(xiàn)得合適時(shí),這個系統(tǒng)對于錯誤的數(shù)位無論是原有信息位中的,還是附加校驗(yàn)位中的都能把它分離出來。 推求海明碼時(shí)的一項(xiàng)基本考慮是確定所需最少的校驗(yàn)位數(shù)k??紤]長度為m位的信息,若附加了k個校驗(yàn)位,則所發(fā)送的總長度為m+k。滿足條件:2PkP-1≥m+k  。從理論上講,校驗(yàn)位可放在任何位置,但習(xí)慣上校驗(yàn)位被安排在1、2、4、8、…的位置上。圖1列出了m=4,k=3時(shí),信息位和校驗(yàn)位的分布情況。
    碼字位置
     BB1B
     BB2B
     BB3B
     BB4B
     BB5B
     BB6B
     BB7B
    校驗(yàn)位
     x
     x
      
     x
      
      
      
    信息位
      
      
     x
      
     x
     x
     x
    復(fù)合碼字
     PB1B
     PB2B
     DB1B
     PB3B
     DB2B
     DB3B
     DB4B
    圖1 海明碼中校驗(yàn)位和信息位的定位
    海明碼的碼距應(yīng)該是3,所以能糾正1位出錯。而奇偶校驗(yàn)碼的碼距才是2,只能發(fā)現(xiàn)1位出錯,但不能糾正(不知道那一位錯)。無校驗(yàn)的碼距是1,它出任何一位出錯后還是合法代碼,所以也就無法發(fā)現(xiàn)出錯。
    這是關(guān)于海明碼的經(jīng)典說法,即碼距為3,可以發(fā)現(xiàn)2位,或者糾正1位錯。應(yīng)滿足2PkP-1≥m+k。
    海明碼的校驗(yàn)位PBiB(i=1,2,3,…)在海明碼的第2Pi-1P位置,數(shù)據(jù)位則依序從低到高占據(jù)漢明碼中剩下的位置。我們來看看數(shù)據(jù)位與校驗(yàn)位在漢明碼中的位置:
    HB14B HB13B HB12B HB11B HB10B HB9B HB8B HB7B HB6B HB5B HB4B HB3B HB2B HB1B
    DB9B DB8B DB7B DB6B DB5B DB4B PB4B DB3B DB2B DB1B PB3B DB0B PB2B PB1B