《計算機接口技術(shù)及應用》課件-1.5無符號數(shù)的運算和溢出_第1頁
《計算機接口技術(shù)及應用》課件-1.5無符號數(shù)的運算和溢出_第2頁
《計算機接口技術(shù)及應用》課件-1.5無符號數(shù)的運算和溢出_第3頁
《計算機接口技術(shù)及應用》課件-1.5無符號數(shù)的運算和溢出_第4頁
《計算機接口技術(shù)及應用》課件-1.5無符號數(shù)的運算和溢出_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

微機原理及應用第一章認識二進制第五講無符號數(shù)的運算和溢出下面我們來學習一下二進制的算術(shù)運算無符號數(shù)的運算和溢出二進制的算術(shù)運算包括加、減、乘、除二進制算術(shù)運算+×-÷但是在計算機中為了簡化設(shè)計,并沒有加、減、乘、除四種硬件電路,而是通過加法電路來實現(xiàn)了其他的各種運算計算機+×-÷加法電路加法就不用說了,既然是加法器,它的功能就是實現(xiàn)幾個數(shù)的和加法電路功能:實現(xiàn)幾個數(shù)的和加法器XYX+YX+Y=?再來看減法電路,我們只要將算式稍微化簡一下,就可以得出,X減Y等于X加上-Y,因此,減法電路本質(zhì)上就是加法電路,只是輸入的數(shù)是X和-Y。這里的-Y可以通過補碼的來表示,補碼的好處就是可以直接計算,后續(xù)我們講解補碼的時候會提到這一點。減法電路X-Y=?X+(-Y)=?加法器X-YX-Y補碼直接計算再來看乘法電路。乘法電路我們是通過加法電路結(jié)合移位電路來實現(xiàn)的乘法電路加法電路移位電路向左移動一位數(shù)值=原數(shù)值基礎(chǔ)上*2向左移動兩位數(shù)值=原數(shù)值基礎(chǔ)上*4移位電路:輸入值*2的指數(shù)次方運算在講解之前,同學們要知道在二進制中,我們把數(shù)值向左移動一位的結(jié)果就是原數(shù)值的基礎(chǔ)上乘以了2,左移兩位就是乘以了4,這個移動的過程可以用移位電路來實現(xiàn),移位后相當于對輸入值進行了乘以2的指數(shù)次方的運算。知道了這一特性,我們就可以解釋一下乘法電路的設(shè)計了。假設(shè)我們要計算X乘以Y,那么這里的Y我們可以把它分解成2的指數(shù)次方的形式,其實二進制的寫法本身就說明了Y是幾個2的指數(shù)次方的數(shù)之和。乘法電路X*Y=?X*(Y1+Y2)=?Y是幾個2的指數(shù)次方的數(shù)之和然后我們對X分別進行相應的左移,最后把移位的結(jié)果加起來就是乘法的結(jié)果。乘法電路X*Y=?X*(Y1+Y2)=?加法器X*YXX移位(n1)移位(n2)X*Y1X*Y2最后來看一下除法電路。在除法運算中,我們要獲得的是商和余數(shù)。通過對算式進行簡單的化簡,你就會發(fā)現(xiàn)它其實還是一個移位和加法電路。我們要求的商其實就是對除數(shù)要如何移位的問題。我們要求的余數(shù),其實就是被除數(shù)減去移位后的除數(shù)的結(jié)果。除法電路除法運算商余數(shù)通過對算式進行簡單的化簡,你就會發(fā)現(xiàn)它其實還是一個移位和加法電路。除法電路X/Y=?X=aY+b=(a1+a2)Y+bX-(a1+a2)Y=b加法器-Yb移位(a1)-Y移位(a2)-Y*a1-Y*a2X商余數(shù)我們要求的商其實就是對除數(shù)要如何移位的問題。我們要求的余數(shù),其實就是被除數(shù)減去移位后的除數(shù)的結(jié)果。好,講完了加、減、乘、除,我們再回過頭來總結(jié)一下。除法電路商余數(shù)除數(shù)要如何移位除數(shù)減去移位后除數(shù)的結(jié)果好,講完了加、減、乘、除,我們再回過頭來總結(jié)一下。這四種運算用加法和移位電路實現(xiàn)而不是各自設(shè)計各自的電路,這里體現(xiàn)的是產(chǎn)品設(shè)計中的精簡的要求。加法電路移位電路精簡要求我們要把產(chǎn)品設(shè)計的小型化,就要充分考慮它的硬件實現(xiàn)。因為每個模塊設(shè)計出來它都會在硬件中占有一部分空間,那如果這個模塊它可以實現(xiàn)更多的功能,取代其他的模塊,那么產(chǎn)品的體積就可以設(shè)計得更小了。另一方面,我們也看到,硬件方面的精巧設(shè)計與軟件是分不開的。通過化簡我們知道了這樣做就可以用加法電路設(shè)計出其他的電路,這是經(jīng)過理論推導的,不是無本之木。硬件的精巧設(shè)計與軟件分不開用加法電路設(shè)計出其他電路是經(jīng)過理論推導在實際產(chǎn)品開發(fā)的過程中,硬件和軟件其實是相輔相成的,硬件是程序最底層的執(zhí)行者,如果硬件功能非常強大,那么它就可以支撐更復雜的軟件算法,如果硬件功能不行,那么在其上應用的軟件會處處受限。所以,對于同學們來說,硬件電路和軟件編程都要好好學,將來會受益。硬件軟件執(zhí)行者硬件功能強大:支撐更復雜的軟件算法硬件功能不行:應用的軟件會處處受限我們再回到二進制的算術(shù)運算。在進行加、減、乘、除的運算時,老師還要再特別提醒一下:01加02減04除03乘算術(shù)運算04除進行加法運算時,要注意可能會有進位,尤其是最高位向更高位的進位,它會產(chǎn)生什么?對,溢出,產(chǎn)生溢出會影響計算結(jié)果,這個要特別注意。進行減法運算時,要注意可能會有借位,尤其要注意的是最高位向更高位的借位,同樣會導致溢出。乘法運算要注意的問題是,通常乘法運算的結(jié)果會比乘數(shù)和被乘數(shù)的字長長,01加02減1+1=0(有進位)0-1=1(有借位)算術(shù)運算注意溢出注意溢出03乘00001011×0100=00101100B所以要特別注意用多大的字長來保存結(jié)果,關(guān)于這一點,請同學們留意我們的匯編語言是如何進行乘法運算的。01加02減1+1=0(有進位)0-1=1(有借位)算術(shù)運算注意溢出注意溢出04除03乘00001011×0100=00101100B注意注意保存結(jié)果的字長留意匯編語言如何進行乘法運算除法運算要注意的是,01加02減1+1=0(有進位)0-1=1(有借位)算術(shù)運算注意溢出注意溢出03乘00001011×0100=00101100B04除00001011÷0100=00000010B商=00000010B余數(shù)=11B第一除數(shù)不能是0,否則就無法計算出結(jié)果;第二除法的結(jié)果有商和余數(shù)兩個部分。要注意將這兩個內(nèi)容都保存下來。關(guān)于這兩點,同學們可以留意,計算機是如何處理除0的運算,以及商和余數(shù)分別保存在什么位置。01加02減03乘1+1=0(有進位)0-1=1(有借位)算術(shù)運算注意溢出注意溢出00001011×0100=00101100B04除注意除數(shù)不能是0結(jié)果有商和余數(shù)兩個部分留意計算機如何處理除0的運算商和余數(shù)分別保存在什么位置00001011÷0100=00000010B商=00000010B余數(shù)=11B下面來看一下無符號數(shù)的表示范圍,對于一個n比特的無符號數(shù)來說,它表示的范圍是0~2的n次方減1,比如當n=8的時候,他表示的范圍就是0~255,如果我們的運算結(jié)果超出了這個范圍,就會產(chǎn)生溢出無符號數(shù)的表示范圍范圍:0~2的n次方減1n比特的無符號數(shù)范圍:0~255n=8運算結(jié)果超出范圍則產(chǎn)生溢出判斷無符號數(shù)是否溢出的方法,就是當它的最高位向更高位有進位或借位的時候,它就會產(chǎn)生溢出,判斷無符號數(shù)是否溢出的方法1011011101001101+100000100最高位向更高位有進位或借位時則產(chǎn)生溢出舉個例子,比如我們要算183和77的和,它的計算結(jié)果是260,由于八個比特位能夠表示的最大正數(shù)是255。而260比255大,所以八個比特位是表示不了260的,至少要用九個比特位才能表示260這個數(shù)判斷無符號數(shù)是否溢出的方法1011011101001101+10000010018377+260八個比特位=255>255九個比特位因此最高位就會向更高位有進位,就是老師標注的地方。這個進位位不

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論