版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、計算機學院 計算機組成原理計算機組成原理 武漢東湖學院武漢東湖學院本科生課程教學本科生課程教學計算機學院計算機學院 補碼和反碼的加減法運算 定點數(shù)與浮點數(shù) 二進制乘法運算 二進制除法運算 浮點數(shù)的運算方法 運算器組成 數(shù)據(jù)校驗碼 小結與練習計算機學院計算機學院(一)定點數(shù)加減法實現(xiàn)方案(一)定點數(shù)加減法實現(xiàn)方案q二進制加法是實現(xiàn)算術運算的基礎,采用補碼方案時,加減法可以用統(tǒng)一的方式處理。因此運算器的核心也就是加法器的設計。1、補碼加減法運算、補碼加減法運算q法則法則1:X補+Y補X+Y補 兩補碼數(shù)相加,符號位與碼值一起參加運算,符號位相加后如果有進位,則該位數(shù)字舍棄。 下面分四種情況來證明上述
2、補碼加法公式:計算機學院計算機學院q證明條件是:|X|1,|Y|1,|X+Y|0,Y0,則X+Y0; 兩正數(shù)相加,和一定是正數(shù),與原碼相同。 根據(jù)補碼的定義可得此結論。 X補 X Y= Y 所以,X補+Y補=X+Y =X+Y補 (MOD 2)q例,X=+0.1001,Y=+0.0101,X+Y=? X補 01001 + Y補 00101 01110補計算機學院計算機學院q(2) X0,Y0或X+Y0時,2+(X+Y)2,進位2必舍棄丟失, 又因為(X+Y)0, 所以X補+Y補=X+Y=X+Y補 (MOD 2) 當X+Y0時,2+(X+Y)2,又因為(X+Y)0, 所以X補+Y補=2+(X+Y)
3、=X+Y補 (MOD 2) 計算機學院計算機學院q例,X=+0.1011,Y= - 0.0101,X+Y=? X補=0.1011,Y補=1.1011 X補 0.1011 + Y補 1.1011 (1) 0.0110 所以,X+Y=0.0110q(3) X0,則X+Y0或X+Y0; 同(2)情況一樣。 計算機學院計算機學院q(4) X0,Y0,則X+Y0; 兩相加的數(shù)都是負數(shù),則其和也一定是負數(shù)。 根據(jù)補碼的定義可得: X補+Y補=(2+X)+(2+Y)=2+(2+X+Y)=(2+X+Y) 進位“2”丟失。 又因為(X+Y)0 所以,X補+Y補=2+(X+Y)=X+Y補 (MOD 2)計算機學院
4、計算機學院q例,X補1.0111,Y補1.1011 X補 1.0111 +Y補 1.1011 (1)1.0010 (符號位的進位丟棄) 所以,(X+Y)補=1.0010 X+Y=0.1110由此可進一步推理出:q法則法則2:X-Y補=X+(-Y)補X補+-Y補 (MOD 2)計算機學院計算機學院 2、補碼定點加減法運算的實現(xiàn)、補碼定點加減法運算的實現(xiàn)qP75 圖3.1 為實現(xiàn)加法的邏輯圖q 實現(xiàn)加法時應提供以下控制信號: AALU,BALU,+,ALUAq 實現(xiàn)減法時應提供以下控制信號: _ AALU,BALU,ALU+1,+,ALUA 注意:y 補= y 補= y 補 補; 而y 補 補是將
5、 y 補連同符號位一起“求反加1”。q (Y)補:Y用補碼表示-(Y)補:對Y求補 計算機學院計算機學院 3. 補碼加減法運算的溢出判斷方法補碼加減法運算的溢出判斷方法q由于機器數(shù)的位數(shù)通常是給定的且是有限的(如16位字長,32位字長等),因此,數(shù)的表示范圍一定是有限的,若兩數(shù)進行加減運算的結果超出給定的允許取值范圍,就會產(chǎn)生溢出。q例,X=+0.1011,Y=+0.1001,X+Y=? X補 0.1011 + Y補 0.1001 1.0100q此時,兩個正數(shù)相加的結果成為負數(shù)(符號為1),這顯然是錯誤的,原因是產(chǎn)生了溢出。計算機學院計算機學院q又如,X=0.1101,Y=0.1011,X+Y
6、=? X補 1.0011 + Y補 1.0101 0.1000q兩個負數(shù)相加的結果成為正數(shù)(符號為0),這同樣是錯誤的,原因也是產(chǎn)生了溢出。q為判斷溢出是否產(chǎn)生,可以采用兩種檢測方法。 1) 雙符號位檢測 2) 單符號位檢測計算機學院計算機學院 方法方法1):變形補碼(雙符號位)檢測):變形補碼(雙符號位)檢測q方法:方法:每個操作數(shù)在運算時都采用兩個符號位,正數(shù)用00表示,負數(shù)用11表示,兩個符號位與碼值一起參加運算;若運算結果的兩個符號位的代碼不一致時表示溢出,兩個符號位代碼一致時,表示沒有溢出。q這種變形的補碼表示,又稱模4補碼表示方法,其定義為: X= X 0=X1 4+X -1=X0
7、計算機學院計算機學院q例1,X=+0.1011,Y=+0.1101,用模4補碼運算判斷x+y是否溢出 X補 00.1011 + Y補 00.1101 (溢出時最高符號位永遠是正確符號) 01.1000 符號位代碼01,表示正溢出,表明運算結果是大于允許取值范圍的正數(shù)。q例2,X=-0.1011,Y=-0.1100,用模4補碼運算判斷x+y是否溢出? X補 11.0101 + Y補 11.0100 10.1001 符號位代碼10,表示負溢出,表明運算結果是負數(shù),其絕對值大于允許取值范圍。計算機學院計算機學院 方法方法2:單符號位檢測:單符號位檢測q方法:方法:當同符號數(shù)相加運算而結果的符號與操作
8、數(shù)的符號不一致時,表示溢出;相加運算結果的符號與操作數(shù)的符號相同時沒有溢出。(當加數(shù)和被加數(shù)符號不同時,相加的結果絕對不會溢出)q例1,X=+0.1001,Y=+0.1110 例2,X=-0.1010 Y=-0.1011 X補 0.1001 (X)補 1.0110 + Y補 0.1110 (Y)補 1.0101 1.0111 0.1011 結果產(chǎn)生正溢出。 結果負溢出計算機學院計算機學院q4. 反碼的加減法運算q兩個數(shù)的反碼相加運算時,符號位的進位不能丟掉,而要將它加到和數(shù)的最低位,這稱為“循環(huán)進位”。q例1. X=0.1001 y=-0.0110 求X+Y=?q 解:X反 = 01001 Y
9、反 = 11001q 01001q +) 11000q 1 00010 q +) 1 - 00011-(X+Y)反=0.0011-計算機學院計算機學院q例2. X=-0.0101 Y=-0.1000 求X+Y=?q解:X反=11010 Y反=10111q 1 1010q +) 1 0111q (1)1 0001q +) 1q 1 0010q (X+Y)反=1.0010= - 0.1101-計算機學院計算機學院二、定點數(shù)和浮點數(shù)二、定點數(shù)和浮點數(shù)1、定點數(shù)、定點數(shù) 1)定點小數(shù))定點小數(shù)q表示方法:表示方法:小數(shù)點固定在最高數(shù)值位與符號位之間,小數(shù)點不用明確表示出來。任何一個小數(shù)都可以被寫成:
10、N=Ns.N-1N-2N-m 其中,符號位用0表示正號,用1表示負號,后面m位表示該小數(shù)的數(shù)值。定點小數(shù)的值的范圍很小,對用m+1個二進制位表示的小數(shù),其值的范圍|N|=1-2-m ,即小于1的純小數(shù)。數(shù)符數(shù)符 數(shù)數(shù) 據(jù)據(jù)小數(shù)點小數(shù)點計算機學院計算機學院 2)定點整數(shù))定點整數(shù)q表示方法:表示方法:小數(shù)點固定在數(shù)值最低位右邊的一種數(shù)據(jù),最小的數(shù)為1。具有帶符號和不帶符號的兩類。q帶符號的整數(shù):N=NsNnNn-1.N2N1N0 對于n+1位二進制整數(shù),其值范圍為|N|=2n -1q不帶符號的整數(shù):N=NnNn-1.N2N1N0 對于n+1為的二進制整數(shù),其值范圍為0=N=2n+1-1 數(shù)符 數(shù)
11、 據(jù) (整數(shù)) 小數(shù)點計算機學院計算機學院2、浮點數(shù)、浮點數(shù)q表示方法:表示方法:任意一個二進制數(shù)通過移動小數(shù)點的位置表示成階碼和尾數(shù)兩部分,類似科學計算法。 N=2N=2E ES S 其中,E為N的階碼,有符號的整數(shù);S為N的尾數(shù),數(shù)值的有效部分,一般取二進制定點純小數(shù)形式。q例,1011101B = 2 2+7 +7 0.10111010.1011101 101.1101B = 2 2+3+30.10111010.1011101 0.01011101B= 2 2-1-10.10111010.1011101 計算機學院計算機學院q浮點數(shù)的一般格式:浮點數(shù)的一般格式: E0 E1En S0 S
12、1.Sm 階符 階碼 尾符 尾數(shù)或者為:M0 E M 尾符 階 碼 尾 數(shù)q例,例,101.1101= 2 2+3+30.10111010.1011101 = =0.1011101 0.1011101 2 2+3+3 其浮點數(shù)形式為:0011 11011101 階碼 尾數(shù)(原碼)計算機學院計算機學院q階碼的表示:q階碼可用原碼或補碼表示,但一般用移碼表示;q尾數(shù)的表示:q尾數(shù)可用原碼或補碼表示,單一般用補碼表示。計算機學院計算機學院q移碼的概念:移碼的概念: 移碼又稱增碼,它的表示方法: 1.數(shù)值部分與補碼表示相同; 2.符號表示與補碼表示相反,即正數(shù)用1表示,負數(shù)用 0表示。 因此: 把x補
13、的符號位取反即得x移。q 或將補碼表示的符號位上增加1就是移碼,因此移碼又稱增碼。 q見P80 例3.30計算機學院計算機學院q移碼的特點:移碼的特點: (1) 最高位為符號位,1表示正,0表示負。 (2) 零的移碼是唯一的,即:0補=0補=10.0。 (3) 用移碼表示便于比較數(shù)的大小,移碼大真值就大,移碼小 真值就小。 (4)移碼表示浮點數(shù)階碼時如為全0則是最小的負數(shù),在處理時作機器零(即整個浮點數(shù)為零)處理。計算機學院計算機學院q浮點數(shù)的規(guī)格化:浮點數(shù)的規(guī)格化: 浮點數(shù)運算后必須化成規(guī)格化形式。q (1) 對于原碼尾數(shù)來說,應該使最高數(shù)字位S1=1,如果不是1,且尾數(shù)不是全0時就要向左移
14、動尾數(shù)直到S1=1,階碼相應地變化,以便保證N值不變。q(2) 如果尾數(shù)是補碼,當N是正數(shù)時 S1必須是1;N是負數(shù)時S1必須是0才是規(guī)格化形式(尾數(shù)最高位與尾數(shù)符號不同)。計算機學院計算機學院q浮點數(shù)表示的優(yōu)點:浮點數(shù)表示的優(yōu)點: (1) 浮點數(shù)表示的數(shù)據(jù)范圍比定點數(shù)大; (2) 運算過程中隨時可對中間結果進行規(guī)格化處理,不易丟失有效數(shù)字。qIEEE 754標準的浮點數(shù)格式:標準的浮點數(shù)格式: 符號位 階碼 尾數(shù) 總位數(shù) 短浮點數(shù) 1 8 23 32 長浮點數(shù) 1 11 52 64 臨時浮點數(shù) 1 15 64 80計算機學院計算機學院q浮點數(shù)的表示范圍: 例1:設浮點數(shù)階碼為P+1位(含1位
15、符號),用移碼表示; 尾數(shù)為m+1位(含1位符號),用補碼表示,基數(shù)為2。q 則該浮點數(shù)規(guī)格化的表示范圍是:q 最小正數(shù) 2 2 最大正數(shù):(1- 2 ) 2 最小負數(shù):-12 最大負數(shù):-(2 +2 ) 2 (為什么?)-1-2P-m(2 -1)P(2 -1)P-m-1-2P_0計算機學院計算機學院q上例中,若浮點數(shù)的基數(shù)是16,則表數(shù)范圍是(設K=m/4):q 最小正數(shù):16 16q 最大正數(shù):(1-16 ) 16q 最小負數(shù):-116q 最大負數(shù): - (16 +16 ) 16-1-2P-k(2 -1)P(2 -1)P-1-k-2P計算機學院計算機學院q 標準規(guī)定q 1.基數(shù)(指尾數(shù)的基數(shù))= 2q 2.尾數(shù)用原碼表示;q 3.階碼用移嗎表示;q 4.尾數(shù)的最高有效位隱藏表示(即不表示)。q 因尾數(shù)用原碼表示,規(guī)格化時最高位一定為1,q 表示時不表示,但在計算時要在最高位補加上q 隱藏的1.這樣做可以讓尾數(shù)多表示一位,從而q 使精度增加了!計算機學院計算機學院q例題 練習3.11q按下列有求設計一個盡可能短的浮點數(shù)格式:q1) 數(shù)據(jù)范圍1.010q2)有效數(shù)字為
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 河北省雄安新區(qū)2026屆高三上學期1月期末考試歷史試卷(含答案)
- 安徽省蕪湖市無為市部分學校2025-2026年九年級上學期1月期末考試道德與法治試卷(含答案)
- 2025-2026學年天津市河北區(qū)九年級(上)期末物理試卷(含答案)
- 五年級下冊期末考試卷及答案
- 網(wǎng)易筆試題庫及答案
- 2022-2023年部編版八年級語文(上冊期末)練習及答案
- 成都風俗習慣禮儀知識
- 烏馬河2022年事業(yè)編招聘考試模擬試題及答案解析19
- 2022~2023水利設施管養(yǎng)人員考試題庫及答案第627期
- 數(shù)理方程考試試卷及答案
- 2024南海農(nóng)商銀行科技金融專業(yè)人才社會招聘筆試歷年典型考題及考點剖析附帶答案詳解
- 輸電專業(yè)十八項反措內容宣貫
- 通信工程施工企業(yè)安全生產(chǎn)管理人員知識考核題庫500題-含答案
- 危險化學品安全風險專項辨識與管控措施
- 中建精裝修工程檢驗批劃分方案
- 區(qū)間閉塞設備維護課件:表示燈電路識讀
- 人教版數(shù)學八年級上冊《等邊三角形的性質和判定》說課稿
- 股骨骨折伴發(fā)糖尿病患者護理查房
- 光化學和光催化反應的應用
- VDA6.3-2016過程審核主要證據(jù)清單
- 辦公耗材采購 投標方案(技術方案)
評論
0/150
提交評論