




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
3.2.3定點數和浮點數
計算機中的兩種表示方式數值范圍:一種數據類型所能表示的最大值和最小值數據精度:實數所能表示的有效數字位數。數值范圍和數據精度均與使用多少位二進制位數以及編碼方式有關。計算機用數字表示正負,隱含規定小數點。采用“定點”、“浮點”兩種表示形式。11.數的定點表示方法(1).定點整數——小數點位置固定在數的最低位之后
如:Dn-1Dn-2??????D1D0
.范圍:
2n-1-1
~
-2n-1(采用字長n=16位補碼時其值為32767~-32768)(2).定點小數——小數點位置固定在數的符號位之后、數值最高位之前。如:D0.
D-1??????D-(n-2)D-(n-1)范圍:1-2-(n-1)~-1
(采用字長n=16位時其值為32767/32768~-1)其中n表示字長多少位2(1)浮點數的表示:是把字長分成階碼和尾數兩部分。其根據就是:①JEm-2…….E0S
D-1……D-(n-1)
階符階碼值數符.尾數值
②SJEm-2…….E0D-1……D-(n-1)數符階符階碼值.尾數值
通常,階碼為補碼或移碼定點整數,尾數為補碼或原碼定點小數。2.數的浮點表示方法3(2)浮點數的規格化目的:字長固定的情況下提高表示精度的措施:1
增加尾數位數(但數值范圍減?。?
采用浮點規格化形式4規格化方法:調整階碼使尾數滿足下列關系:尾數為原碼表示時,無論正負應滿足1/2<|d|<1即:小數點后的第一位數一定要為1。 正數的尾數應為0.1x….x 負數的尾數應為1.1x….x尾數用補碼表示時,小數最高位應與數符符號位相反。 正數應滿足1/2≦d<1,即0.1x….x 負數應滿足-1/2>d≥-1,即1.0x….x5例題:設某機器用32位表示一個實數,階碼部分8位(含1位階符),用定點整數補碼表示;尾數部分24位(含數符1位),用規格化定點小數補碼表示,基數為2。則:1.求X=256.5的第一種浮點表示格式X=(256.5)10=+(100000000.1)2=+(0.1000000001x2+9)28位階碼為:(+9)補=0000100124位尾數為:(+0.1000000001)補
=0.10000000010000000000000所求256.5的浮點表示格式為:00001001
010000000010000000000000用16進制表示此結果則為:(09402000)166
Y=-(256.5)10=-(100000000.1)2
=-0.1000000001x2+98位階碼為:(+9)補=0000100124位尾數為:(-0.1000000001)補=1.01111111110000000000000所求-256.5的浮點表示格式為:00001001
101111111110000000000000用16進制表示此結果則為:(09BFE000)162.求Y=-256.5的第一種浮點表示格式7(3)溢出問題定點數的溢出——根據數值本身判斷浮點數的溢出——根據規格化后的階碼判斷上溢——浮點數階碼大于機器最大階碼——中斷下溢——浮點數階碼小于機器最小階碼——零處理溢出的具體判斷方法將結合實例在后續課程中介紹8微機中所能表示的數值類型(1)無符號二進制數(字節、字和雙字)(2)帶符號的二進制定點整數形式(16、32、64位補碼表示)和18位BCD碼整數形式(80bit)。(3)浮點數(IEEE754標準)包括數符S、階碼E和尾數D三個字段。9微機中的四種整數類型整數類型數值范圍精度格式16位整數-32768~32767二進制16位補碼表示短整數-231~231-1二進制32位補碼表示長整數-263~263-1二進制64位補碼表示BCD整數-1018+1~1018-1十進制18位80個二進制其中最左面1字節的最高位是符號位,余7位無效;另外72位是18位BCD碼,原碼表示。10IEEE754標準格式如下(-1)S2E(D0.D-1……D-(P-1))最高是數符S占1位,0表示正、1表示負;指數項E,基數是2,E是一個帶有一定偏移量的無符號整數;尾數部分D,它是一個帶有一位整數位的二進制小數真值形式。其規格化形式應調整階碼使其尾數整數位D0為1且與小數點一起隱含掉。1112微機中浮點數表示成規格化形式,如下圖所示:
單精度313023220符號位階碼尾數有效位
1·雙精度636252510符號位階碼尾數有效位
1·擴展精度797864630符號位階碼尾數有效位
微機中浮點數的三種表示形式
13例如將十進制數178.125表示成微機中的單精度浮點數解:178.125=10110010.001B=1.0110010001x27
指數E=7+127=134=10000110B127是單精度浮點數應加的指數偏移量,其完整的浮點數形式為:01000011001100100010000000000000=43322000H
14例:將下面Pentium機中的單精度浮點數表示成十進制真值是多少?
0011,1111,0101,1000,0000,0000,0000,0000數符:S=(-1)0=1(正號)階碼:E=(01111110)2-127=126-127=-1尾數:D=(1.1011)2X=1.1011x2-1=(0.11011)2=0.84375153.2.4數字化信息的編碼及表示計算機進行數據處理和運算,就必須首先實現數字化表達。另外由于計算機除了數據處理和運算外,還要進行各種文字(特別是中文)的處理與編輯。因此,所有由計算機處理的信息也要用數字進行編碼。這樣在物理機制上可以以數字信號表示.16信息的數字化表示形式數字信號:是一種在時間上或空間上離散的信號,單個信號是常用的二值邏輯(0或1),依靠多位信號組合表示廣泛的信息.171.用一串脈沖信號表示數字代碼
(先發低位后發高位為例)10110tU182.用一組電平信號表示數字代碼0tU10tU10tU00tU119
3.用一組數字代碼表示字符(如ASCII碼)4.用若干點的組合表示圖像(如圖形點陣碼)5.用數字信號表示聲音(如VCDDVD光盤)6.用數字代碼表示命令與狀態20數字化方法表示信息的優點:抗干擾能力強,可靠性高;位數增多則數的表示范圍可擴大;物理上容易實現,并可存儲;表示信息的范圍與類型極其廣泛;能用邏輯代數等數字邏輯技術進行處理.213.3二進制乘法運算1.軟件編程方法實現(時序控制乘法器)
由手算到機器實現,要解決三個問題:符號問題、部分積相加進位問題、移位問題。原碼乘法是先取絕對值相乘,再根據同號相乘為正、異號相乘位負,單獨決定符號位。補碼乘法則讓符號位直接參加運算,算法將會復雜一些。2.硬件快速乘法器實現
利用中大規模集成電路芯片,在一拍節中實現多項部分積的相加,成為陣列乘法器。
223.3.1定點數一位乘法
1.定點原碼一位乘規則:在機器中采用A,B,C寄存器來分別存放部分積,被乘數和乘數
(1)在機器內一次加法操作只能求出兩數之和,因此每求得一個相加數時,就得與上次部分積相加。(2)人工計算時,相加數逐次向左偏移一位,由于最后的乘積位數是乘數(或被乘數)的兩倍.由于在求本次部分積時,前一次部分積的最低位,不再參與運算,因此可將其右移一位。相加數可直送而不必偏移,于是用N位加法器就可實現兩個N位數相乘。(3)部分積右移時乘數寄存器同時右移一位,這樣可以用乘數寄存器的最低位來控制相加數(取被乘數或零),同時乘數寄存器的最高位可接收部分積右移出來的一位,因此,完成乘法運算后,A寄存器中保存乘積的高位部分,乘數寄存器C中保存乘積的低位部分。23例:設X=0.1101,Y=0.1011,求X?Y.其中寄存器B=X,Cd=4.流程圖3.6計算過程如下:00000010110011010011010001101101001101010011001001111000000000100100010011110011010100010010001111+x右移一位→+x右移一位→+0右移一位→+x右移一位→部分積A乘數C乘積高位乘積低位1(丟失)1(丟失)0(丟失)1(丟失)X?Y=0.1000111124
注意:兩操作數的絕對值相乘,符號位單獨處理。寄存器A.B均設置雙符號位,第1符號位始終是部分積符號,決定在右移時第1符號位補0操作步數由乘數的尾數位數決定,用計數器Cd來計數。即作n次累加和移位。最后是加符號位,根據Sx⊕Sy決定。252.定點補碼一位乘法
實現補碼乘法有兩種方法,現在廣泛使用的是Booth算法,也稱為比較法。這種方法在機器實現中要在乘數末位Yi之后再增加一個附加位Yi+1,并令其初始值為0。然后根據比較Yi、Yi+1的值決定下一步操作,規則如下:(部分積初始為0)YiYi+1操作00原部分積右移一位01原部分積加X補后再右移一位10原部分積加[-X補]后再右移一位11原部分積右移一位26例3.35:設X=-0.1101,Y=0.1011,即[X]補=11.0011,[Y]補=0.1011,[-X]=00.1101求[X?Y]補.計算過程如下:0000000.10110初始值,最后一位補0001101Y5Y4=01+[-X]補001101000110101011右移一位000000Y4Y3=11+0000110000011010101右移一位110011Y3Y2=10+[X]補110110111011001010右移一位001101Y2Y1=01+[-X]補001000000100000101右移一位110011Y1Y0=10+[X]補1101110001+→+→+→+→+部分積乘數YYiYi+1說明乘積高位乘積低位[X?Y]補=1.01110001,X?Y=-0.1000111127
初始值與符號位:A寄存器存放部分累加和,初始為0,采用雙符號位。第1符號位指示累加和的正負,以控制右移時補0或補1。B中存放被乘數的補碼,雙符號位?;静僮鳎河肅寄存器最末兩位作判斷位,決定下一步的操作。移位:在右移時,第2符號位值移入位數的最高位,第1符號位值不變且移入第2符號位,而A寄存器末位移入C寄存器。步數與最后一步操作:乘數有效位是4位,共作5步。注意,最后一步不移位因為這一步是用來處理符號位的。
283.4.1定點除法運算
1.定點原碼一位除法
有恢復余數法和不恢復余數法(加減交替法),計算機中常用后者。因為它的操作步驟少,而且也不復雜。其處理思想是:先減后判,如減后發現不夠減,則在下一步改作加除數操作。這樣操作步驟固定易于編程。其要點如下:(1)要求被除數|X|<除數|Y|,并取原碼尾數的絕對值相除;符號位單獨處理,商的符號為相除兩數符號的半加和。(2)被除數的位數可以是除數的兩倍,其低位的數值部分開始時放在商寄存器中。運算中,放被除數和商的A、C寄存器同時移位,并將商寄存器C中最高位移到被除數寄存器A的最低位中。(3)每步操作后,可根據余數Ri符號來判斷是否夠減:Ri位正表明夠減,上商Q為1。Ri為負表明不夠減,上商Q為0。(4)基本操作可用通式描述為:Ri=2Ri+(1-2Qi)Y
(5原碼除的思想是先當成正數相除,若最后一步所得余數為負,則應恢復余數,但不移位,以保持Ri為正。舉例如下:29例3.39:設被乘數X=0.1011,Y=0.1101,用加減交替法求X/Y.
[-Y]補=11.0011,計算過程如下:00101100000開始情形110011+[-Y]補11111000000不夠減,商上011110000000左移001101+Y00100100001夠減,商上101001000010左移110011+[-Y]補00010100011夠減,商上100101000110左移110011+[-Y]補11110100110不夠減,商上011101001100左移001101+Y00011101101夠減,商上1+)+)+)+)+)被除數(余數R)(被除數)(商)操作說明余數商X/Y=0.1101,余數=0.011130
A寄存器中開始時存放被除數的絕對值,以后將存放各次余數,取雙符號位。B寄存器存放除數的絕對值,取雙符號位。C寄存器同來存放商,取單符號位。第一步操作:將被除數X視為初始余數R0,根據R0符號位正(絕對值),令商符為0,正是的商符以后再置入。第一步為-Y。商值則根據余數R0的符號來決定,正則商上1,求下一位商的辦法是余數左移一位再減去除數;當余數為負則商上0,求下一位商的辦法是余數左移一位再加上除數。左移位時末位補0。操作步數與最后一步操作:如果要求得n位商(不含符號位),則需作n步“左移-加減”循環;若第n步余數為負,則需增加一步恢復余數,這增加的一步不移位。312.定點補碼一位除法(加減交替法)補碼除法規則表:X補、Y補、r補分別為被除數、除數和余數
X補Y補數符商符第一步操作r補Y補數符
上商下一步操作同號0減法同號(夠減)異號(不夠減)
102[ri]補--Y補2[ri]補+Y補異號1
加法同號(不夠減)異號(夠減)
102[ri]補--Y補2[ri]補+Y補32
以上是在|X|<|Y|即不溢出的前提下;(1)第一步如果被除數與除數同號,用被除數減去除數;若兩數異號,用被除數加上除數。如果所得余數與除數同號上商1,若余數與除數異號,上商0,該商即為結果的符號位。(2)求商的數值部分如果上次上商1,將余數左移一位后減去除數;如果上次上商0,將余數左移一位后加上除數。然后判斷本次操作后的余數,如果余數與除數同號上商1;若余數與除數異號上商0。如此重復執行n-l次(設數值部分有n位)。(3)商的最后一位一般采用恒置1的辦法,井省略了最低位+1的操作,此時最大誤差為士2-n.如果對商的精度要求較高則可按規則(2)再進行一次操作以求得商的第n位。當除不盡時若商為負,要在商的最低一位加1,使商從反碼值轉變成補碼值;若商為正最低位不需要加1。33例3.40:設[X]補=1.0111,[Y]補=0.1101,求[X/Y]補.
[-Y]補=11.0011,計算過程如下:[X/Y]補=1.010111011100000開始情形001101兩數異號+[Y]補?書00010000001余數與除數同號,商上100100000010左移110011上次商1,+[-Y]補11101100010余數與除數異號,商上011011000100左移001101上次商0,+[-Y]補00001100101余數與除數同號,商上100011001010左移110011上次商1,+[-Y]補11100101010余數與除數異號,商上011001010101左移,商的最低位恒置1+)+)+)+)被除數(余數)商操作說明余數商34
例3.40最低位恒置1,余數不正確。A寄存器存放被除數(補碼),以后存放余數,取雙符號位。B寄存器存放除數(補碼),雙符號位。C寄存器存放商,初始值為0(未考慮商符之前),單符號位。如余數為0,則表示除盡。例3.41如采用商的最低位恒置1的方法,其誤差為2-n=2-4。補碼除法規則表補充說明:1、表中i=0~n-1.2、上采用末位恒置1的方法,操作簡便。如要提高精度,則要提高精度,則按上述規則多求一位,再采用以下方法對商進行處理:兩數能除盡時,如除數為正,商不必加2-n,如除數為負,商加2-n;兩數除不盡時,如商為正,商不必加2-n,如商為負,商加2-n。35
例3.42[X]補=1.0111,[Y]補=1.0011,則[-Y]補=0.1101。求[X/Y]補=?被除數(余數)商操作說明11。0111+00。1101兩數同號,+[-Y]補00。01000余數與除數異號,商0左移00。1000+11。0011+[Y]補11。101101同號,商1左移11。0110+00。1101+[-Y]補00。0011010異號,商0左移00。0110+11。0011+[Y]補11。10010101同號,商1左移11。0010+00。1101+[-Y]補11。111101011同號,商1[X/Y]補=0.1011[余數]補=1。1111x2-4
363.5浮點數的運算方法浮點數的表示形式(以2為底):N=M·2E其中,M為浮點數的尾數,一般為絕對值小于1的規格化二進制小數用原碼或補碼形式表示;E為浮點數的階碼,一般是用移碼或補碼表示的整數。階碼的底除了2以外,還有用8或16表示的,這里先以2為底進行討論。然后再簡介以8或16為底的數的運算。371.加、減法運算兩數首先均為規格化數,在進行規格化浮點數的加減運算需經過五步完成:對階操作:低階向高階補齊,使階碼相等;尾數運算:階碼對齊后直接對尾數運算;結果規格化:對運算結果進行規格化處理;(使補碼尾數的最高位和尾數符號相反)如溢出則需左規,如不是規格化時應右規。舍入操作:丟失位進行0舍1入或恒置1處理;判斷溢出:判斷階碼是否溢出,下溢則將運算結果置0,上溢則中斷。38具體說明如下:
對階運算(小階向大階對齊)尾數為原碼時,尾數右移,符號位不動,最高位補0尾數為補碼時,尾數右移,符號也移位,最高位補符號位例如:求 =?小階對大階舍掉的是如大階對小階則舍掉的是39
規格化:原碼尾數高位為1,補碼與符號相反舍入操作:0舍1入或恒置1例1:求 =?0舍1入后為恒置1例2:求=?0舍1入后為恒置1判斷結果的正確性(即結果的階碼是否溢出)40例:假設
其中指數和小數均為二進制真值,求X+Y=?其階碼4位(含階符),補碼表示;尾數6位,補碼表示,尾數符號在最高位,尾數數值5位。解:尾符階碼尾數5位[X]浮=0001011010[Y]浮=1001100010對階[X]浮=0001101101尾數求和00.01101+11.00010=11.01111[X]浮+[Y]浮=1001101111規格化、舍入操作、階碼溢出判斷,最后: [X+Y]真=41例:假設其中指數和小數均為二進制真值,求X-Y。其階碼4位(含階符),補碼表示;尾數6位,補碼表示,尾數符號在最高位,尾數數值5位
解:尾符階碼尾數[X]浮=0001011010[Y]浮=1001100010對階[X]浮=0001101101尾數求差:[X尾-Y尾]補=[X尾]補+[-Y尾]補=00.01101+00.11110=01.01011規格化處理、舍入操作均不需要,階碼溢出檢查:尾數符號位為01,尾數發生上溢出,做規格化處理尾數連同符號右移一位00.101011,階碼加1至0100舍入操作恒置1后:[X]浮-[Y]浮=0010010101
[X-Y]真=
423.5.2浮點數的乘、除法運算兩浮點數相乘其乘積的階碼為相乘兩數階碼之和,其尾數應為相乘兩數的尾數之積。兩個浮點數相除,商的階碼為被除數的階碼減去除數的階碼得到的差,尾數為被除數的尾數除以除數的尾數所得的商。參加運算的兩個數都為規格化浮點數,乘除運算都可能出現結果不滿足規格化要求的問題,因此也必須進行規格化、舍入和判溢出等操作。規格化時要修改階碼。43
.浮點數乘法運算(階碼的底為8或16)前面的討論,是以階碼值的底為2來進行的。為了用相同位數的階碼表示更大范圍的浮點數,在一些計算機中也有選用階碼的底為8或16的。此時浮點數N被表示成N=8E·M或N=16E·M階碼E和尾數M還都是用二進制表示的,其運算規則與階碼以2為底基本相同,但關于對階和規格化操作有新的相應規定。當階碼以8為底時,只要尾數滿足1/8≤M<l或一1≤M〈一1/8就是規格化數。執行對階和規格化操作時,每當階碼的值增或減1,尾數要相應右移或左移三位。當階碼以16為底時,只要尾數滿足1/16《M<1或一1《M<一1/16就是規格化數。執行對階和規格化操作時,階碼的值增或減1,尾數必須移四位。判別為規格化數或實現規格化操作,均應使數值的最高三項(以8為底)或四位(以16為底)中至少有一位與符號位不同。5浮點數除法運算步驟與乘法運算類似,也分求商的階碼、尾數相除、規格化、舍入和判溢出5個步驟,不再詳細討論。443.6運算部件
1.定點運算部件定點運算部件由算術邏輯運算部件ALU、若干個寄存器、移位電路、計數器、門電路等組成。ALU部件主要完成加減法算術運算及邏輯運算(其功能可參考242節),其中還應包含有快速進位電路。2.浮點運算部件通常由階碼運算部件和尾數運算部件組成。其各自的結構與定點運算部件相似。但階碼部分僅執行加減法運算。其尾數部分則執行加減乘除運算,左規時有時需要左移多位。為加速移位過程,有的機器設置了可移動多位的電路。453.7計算機中的數據校驗方法
采用冗余校驗方法:即在基本的有效數據外,再擴充部分位,增加部分(冗余部分)被稱為校驗位。將校驗位與數據位一起按某種規則編碼,寫入存儲器或向外發送。當從存儲器讀出或接收到外部傳入的代碼時,再按相應的規則進行判讀。若約定的規則被破壞,則表示出現錯誤。根據錯誤的特征進行修正恢復。46幾個名詞概念:碼字:由若干代碼組成的一個字。如8421碼中6(0110),7(0111)碼距:一種碼制中任意兩個碼字間的最小距離。距離:兩個碼字之間不同的代碼個數。8421碼中,最小的碼距為1,如0000和0001、0010和0011等;最大碼距為4,如0111和1000。8421碼的碼距為1。碼距為1,即不能查錯也不能糾錯。碼距越大,查錯、糾錯能力越強。473.7.1奇偶校驗法
奇偶校驗法是計算機中廣泛采用的檢查傳輸數據準確性的方法。奇偶校驗法的原理是:在每組數據信息上附加一個校驗位,校驗位的取值(0或1)取決于這組信息中‘1’的個數和校驗方式(奇或偶校驗)。如果采用奇校驗,則這組數據加上校驗碼位后數據中‘1’的個數應為奇數個。如果采用偶校驗,則這組數據加上校驗碼位后數據中‘1’的個數應為偶數個。48例如:八位信息‘10101011’中共有5個‘1’,附加校驗位后變為九位。若采用奇校驗,則附加的校驗位應取‘0’值,保證1的個數為奇數個即010101011;若采用偶校驗則附加的校驗位應取‘1’值即110101011。奇偶校驗的特點:1、奇偶校驗法使數據的碼距為2,因而可檢出數據傳送過程中奇數個數位出錯的情況;2、實際中兩位同時出錯的概率極低,奇偶校驗法簡便可靠易行,但它只能發現錯誤,卻不知錯在何處,因而不能自動糾正。49偶校驗出錯奇校驗出錯偶形成奇形成D校為校驗位D校D1D2D3D4D5D6D7D88位數據的奇偶校驗碼形成電路及檢碼電路503.7.2海明碼校驗方法海明碼校驗方法以奇偶校驗法為基礎,其校驗位不是一個而是一組,故其碼距大于2。海明碼校驗方法能夠檢測出具體錯誤并糾正。原理是在數據中加入r個校驗位,將數據的碼距按照一定規則拉長。r個校驗位可以表示2r個信息,除一個表示無誤信息外,其余2r-1信息可以用來標明錯誤的具體位置,但由于校驗位本身也可能在傳送中出錯,所以只有2r-1-r個信息可用,即r位校驗碼只可標明2r-1-r個錯誤信息?;?r≧k+r+1k是被傳送數據的位數。
例如:用4個校驗位能可靠傳輸24-1-4=11位信息;而要校驗32位數據則需至少6個校驗位。51
如要能檢測與自動校正一位錯井發現兩位錯此時校驗位的位數r和數據位的位數k應滿足下述關系:2r-1≧k+r(3.19)按式(3.19),可計算出數據位k與校驗位r的對應關系,如教材表3.8所示。52一、編碼方法(以四個校驗位進行說明)
四個校驗位最多可以校驗11位數據。設: D10D9D8D7D6D5D4D3D2D1D0為11個數據位, P4P3P2P1分別為四個校驗碼,則編碼規則是:海明碼的總位數等于數據位與校驗位之和;每個校驗位Pi排放在2i-1的位置,例如P4排放在第24-1=8位,其余數據位依序排列。即:
D10D9D8D7D6D5D4P4D3D2D1P3D0P2P1海明碼的每一位用多個校驗位一起進行校驗,被校驗的位號等于校驗它的各校驗位位號和;各校驗位的值為它參與校驗的數據位的異或。53
海明碼校驗表海明碼位號參與校驗的校驗位位號參與的校驗位H1P11P1H2P22P2H3D02,1(3=2+1)P2P1H4P34P3H5D14,1(5=4+1)P3,P1H6D24,2(6=4+2),P3,P2H7D34,2,1(7=4+2+1)P4,P3,P2,P1H8P48P4H9D48,1(8=8+1)P4,P1H10D58,2(10=8+2)P4,P2H11D68,2,1(11=8+2+1)P4,P2,P1H12D78,4(12=8+4)P4,P3H13D88,4,1(13=8+4+1)P4,P3,P1H14D98,4,2(14=8+4+2)P4,P3,P2H15D108,4,2,1(15=8+4+2+1)P4,P3,P2,P154
各校驗位形成公式:
P1=D0⊕D1⊕D3⊕D4⊕D6⊕D8⊕D10(1)P2=D0⊕D2⊕D3⊕D5⊕D6⊕D9⊕D10(2)P3=D1⊕D2⊕D3⊕D7⊕D8⊕D9⊕D10(3)P4=D4⊕D5⊕D6⊕D7⊕D8⊕D9⊕D10(4)按上述方式Pi的取值是采用偶校驗時的取值,當采用奇校驗時,Pi則取反。這樣Pi連同數據位一起形成了海明碼的各位。
55二、檢查糾錯(以四個校驗位進行說明)
海明碼數據傳送到接收方后,再將各校驗位的值與它所參與校驗的數據位的異或結果進行異或運算。運算結果稱為校驗和。校驗和共有四個。對偶校驗來說,如果校驗和不為零則傳輸過程中間有錯誤。而錯誤的具體位置則由四個校驗和依序排列后直接指明。如果四個校驗和
S4S3S2S1依序排列后等于(1001)2=(9)10時,就表明海明碼的第九位也就是D4發生了錯誤,此時只要將D4取反,也就糾正了錯誤。56
校驗和Si的表達式:S1=D0⊕D1⊕D3⊕D4⊕D6⊕D8⊕D10⊕P1
S2=D0⊕D2⊕D3⊕D5⊕D6⊕D9⊕D10⊕P2S3=D1⊕D2⊕D3⊕D7⊕D8⊕D9⊕D10⊕P3S4=D4⊕D5⊕D6⊕D7⊕D8⊕D9⊕D10⊕P4當采用偶校驗方式其傳送數據正確時,校驗和S1~S4的值分別都為0;當采用奇校驗方式其傳送數據正確時,校驗和S1~S4的值分別都為1。當不為上述值時,傳送就發生了錯誤。
57解:已知D10D9D8D7D6D5D4D3D2D1D0=10110100110由于被校驗位的位號等于校驗它的各校驗位位號之和以及各校驗位的取值等于它參與校驗的數據位取值的異或。所以校驗位的取值以及所求海明碼為: P1=D0D1
D3
D4
D6
D8
D10=1 P2=D0
D2
D3
D5
D6
D9
D10=1 P3=D1
D2
D3
D7
D8
D9
D10=1 P4=D4
D5
D6
D7
D8
D9
D10=0D10D9D8D7D6D5D4P4D3D2D1P3D0P2P1=101101000111011傳送正確時校驗和的值為0,如果不等于0,則是幾就是第幾位出錯,是7則是第7位D3出錯,此時將其取反即可糾正錯誤。例題:采用4位校驗位、偶校驗方式,寫出10110100110的海明碼。58
59
以上圖3.11是H=12,數據位k=8,校驗位r=4的海明校驗線路,記作(l2.8)分組碼。圖3.ll中的H12,H11,...,H1是被校驗碼,D8,D7,...,D1是糾正后的數據。在線路中,先用奇偶形成線路得到S4,S3,S2,S1,如果S4~S1為全“0”,說明代碼無錯,則D8D7...DI=H12H11H10H9H7H6H5H3。如果S4~S1不為全0,說明有錯
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 沈陽市皇姑區2025屆三年級數學第二學期期末復習檢測試題含解析
- 湖南中醫藥大學湘杏學院《食品工程與機械2》2023-2024學年第二學期期末試卷
- 天府新區航空職業學院《高級朝鮮語I》2023-2024學年第二學期期末試卷
- 河北女子職業技術學院《生物信息學實踐》2023-2024學年第二學期期末試卷
- 各行各業職業探索家長進課堂五花八門的行業工作教育課件
- 皮鞋品牌的社會責任與可持續發展報告考核試卷
- 電動車維修與保養考核試卷
- 漁業資源保護與海洋資源恢復工程考核試卷
- 冷藏車運輸與國際冷鏈標準對接考核試卷
- 畜牧獸醫技術研究與推廣考核試卷
- 2025陜煤集團榆林化學有限責任公司招聘(137人)筆試參考題庫附帶答案詳解
- 《人工智能通識基礎》全套教學課件
- 2024年青海省西寧市中考一模物理、化學試卷-初中化學(原卷版)
- 專題01-平衡力與相互作用力(學生版)-2021年中考物理力學提優特訓專題
- 數字孿生智能化車間數字化生產管控平臺規劃建設方案
- 2024年煤礦安全規程(修訂)
- 2025年吉林鐵道職業技術學院單招職業技能測試題庫完整
- 2025年濟源職業技術學院單招職業技能測試題庫匯編
- 護工合同協議書樣本
- 斯大林格勒保衛戰
- 電氣設備維護與安全使用
評論
0/150
提交評論