計算機組成原理1_第1頁
計算機組成原理1_第2頁
計算機組成原理1_第3頁
計算機組成原理1_第4頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、實用標準文案計算機組成原理課程設計報告題目: 計算機組成原理算法實現(xiàn)(一)_專業(yè)學生 姓 名班級學號指導 教 師發(fā)放 日 期精彩文檔實用標準文案目錄目錄.11 課程設計目的 .22 課程設計內容與要求 .22.1系統(tǒng)設計內容 .22.2設計要求 .23 系統(tǒng)的總體設計 .23.1系統(tǒng)的設計目標 .23.2主體功能 .33.3各個模塊系統(tǒng)流程圖 .43.3.1主界面流程圖 .43.3.2定點整數(shù)的機器表示 .43.3.3定點整數(shù)的變形補碼加減運算.53.3.4定點整數(shù)的原碼乘法流程圖.83.3.5浮點數(shù)的加減運算 .94實驗結果和測試 .114.1進入主頁面測試 .114.2定點整數(shù)的機器表示

2、.134.3定點整數(shù)的變形補碼加減運算.154.4定點整數(shù)的原碼乘法 .164.5浮點數(shù)的加減運算 .175實驗小結 .196參考文獻 .20精彩文檔實用標準文案1 課程設計目的本課程設計是在學完本課程教學大綱規(guī)定的全部內容、完成所有實踐環(huán)節(jié)的基礎上,旨在深化學生學習的計算機組成原理課程基本知識,進一步領會計算機組成原理的一些算法,并進行具體實現(xiàn),提高分析問題、解決問題的綜合應用能力。2 課程設計內容與要求2.1 系統(tǒng)設計內容題目:計算機組成原理算法實現(xiàn)(一)功能:能夠實現(xiàn)定點整數(shù)的機器數(shù)表示、定點整數(shù)的變性補碼加減運算、定點整數(shù)的原碼一位乘法運算和浮點數(shù)的加減運算。2.2 設計要求( 1)、

3、系統(tǒng)進入(主)窗體設計:菜單需要在輸入口令正確后方可激活使用。口令輸入錯誤時要給出重新輸入口令的提示,三次口令輸入錯誤應禁止使用。( 2)、口令輸入正確后可以根據(jù)不同的菜單選擇不同的操作指令進行不同的操作計算。主要的操作指令有: 定點整數(shù)的機器表示、 定點整數(shù)的變形補碼加減運算、 定點整數(shù)的原碼乘法以及浮點數(shù)的加減運算。3系統(tǒng)的總體設計3.1 系統(tǒng)的設計目標該體統(tǒng)的設計主要完成系統(tǒng)的各個窗體設計以及個窗體中的方法計算。 在進入主窗體時設置口令,口令正確后可以進入主窗體中點擊不同的菜單欄實現(xiàn)不同的計算。( 1)該系統(tǒng)要完成定點整數(shù)的機器表示, 當點擊輸入按鈕時可以輸入一串二進制數(shù)。 然后點擊不同

4、的按鈕實現(xiàn)該二進制數(shù)的原碼、 反碼、補碼、移碼的運算,并可以返回到主窗體。( 2)該系統(tǒng)要完成整數(shù)的變形碼加減運算, 可以點擊輸入進入運算階段, 分別輸入第一個數(shù)和第二個數(shù)然后點擊加法進行加法運算, 點擊減法進行減法運算。 并可以返回到主窗體。( 3)該系統(tǒng)可以完成定點整數(shù)的原碼乘法, 點擊輸入按鈕進行運算根據(jù)提示分別輸入被乘數(shù)和乘數(shù),點擊乘法按鈕進行乘法運算并查看乘法結果。最后可以返回到主窗體。( 4)該系統(tǒng)可以進行浮點數(shù)的加減運算, 點擊輸入按鈕輸入第一個數(shù)的階碼和第二個數(shù)精彩文檔實用標準文案的階碼。分別點擊加法、減法求出加法、減法的階碼并且可以查看各數(shù)的尾數(shù)。計算完成后并可以返回到主窗體

5、。3.2 主體功能該體統(tǒng)的主體功能主要有以下幾個重要的模塊,進入主窗體進行口令認證模塊、定點整數(shù)的機器表示模塊、 定點整數(shù)的變形補碼加減運算模塊、 定點整數(shù)的原碼乘法模塊和浮點數(shù)加減運算。其主要的模塊下又分為各個小的計算模塊, 主要總體模塊詳細設計模塊圖如下所示:總體功能實現(xiàn)輸入口令定 點 整定 點 整定點浮點幫數(shù) 的 變整數(shù)數(shù)的數(shù) 的 機形 補 碼的原加減器表示加 減 運碼乘運算助算法輸 入分 別 輸分 別 輸分 別 輸一 個入 二 個入 被 乘入 二 個二 進二 進 制數(shù) 和 乘數(shù) 的 階制數(shù)數(shù)數(shù)碼 和 尾碼原補反移返加減返乘返加加減減返碼碼碼碼回法法回法回法法法法回顯運運運運運結階尾階尾

6、示算算算算算果碼數(shù)碼數(shù)顯顯顯顯顯示示示示示圖 3-1 系統(tǒng)總體功能模塊圖精彩文檔實用標準文案3.3 各個模塊系統(tǒng)流程圖3.3.1 主界面流程圖開始Y輸入口令計數(shù)器是否大于三計數(shù)器加1N口令輸入錯誤重新輸入口令是否正N確輸入三次口令錯Y誤禁止使用激活菜單欄可以進行選擇計算結束圖 3-2 主界面流程圖3.3.2 定點整數(shù)的機器表示輸入一個二進制數(shù),當選擇不同按鈕時則對其進行相應的操作。如當選擇原碼計算時,則調用原碼運算函數(shù)對其進行運算,正數(shù)則將符號位置 0,其余位不變,若為負數(shù)則將其符號位置 1,其余位不變;當選擇反碼運算時,則調用反碼運算函數(shù)對其進行運算,正數(shù)則將保持不變, 若為負數(shù),也將其各位

7、取反;當選擇補碼按鈕時,正數(shù)的補碼仍為本身,而負數(shù)時則除符號位,各位取反末位加一;當選擇移碼按鈕時, 則根據(jù)移的位數(shù)進行相應的移位。精彩文檔實用標準文案定點整數(shù)的機器表示模塊的流程圖開始輸入一個二進制數(shù)選擇運算功能原碼Y進行原碼運算NY反碼進行反碼運算N補碼Y進行補碼運算N移碼進行移碼運算N返回Y結束圖 3-3 定點整數(shù)的機器表示流程圖3.3.3 定點整數(shù)的變形補碼加減運算計算方法補碼加法: X 補 +Y 補 =X+Y 補。該式表明,當有符號的兩個數(shù)采用補碼形式表示時,進行加法運算可以把符號位和數(shù)值位一起進行運算 (若符號位有進位, 則丟掉),結果為兩數(shù)之和的補碼形式。補碼減法:X 補-Y 補

8、=X 補+-Y 補。該式表明,求X-Y 補可以用 X 補與 -Y精彩文檔實用標準文案補相加來實現(xiàn)。 -Y 補是對減數(shù)進行求負操作。一般稱已知 Y 補求得 -Y 補的過程叫變補或求負。已知 +Y 補求 -Y 補的規(guī)則是全部位(含符號位)按位取反后再加 1。當負數(shù)用補碼表示后, 符號位作為數(shù)據(jù)的一部分一起參與運算, 運算器不用考慮參加加法運算的操作數(shù)的正負以及結果的正負,任意數(shù)的加法就可以化作正數(shù)加起來運算。關于溢出在定點整數(shù)機器中數(shù)的表示范圍是-128<x<127,如果運算過程中出現(xiàn)了大于127 或者小于 -128 的情況。雙符號位法:將符號位擴展為2 位,具體說就是對于正數(shù)兩個符號

9、位是“00”,對于負數(shù)兩個符號位是“ 11”。兩個符號位都看做數(shù)碼一樣參加運算。兩個數(shù)相加后,其結果的符號位出現(xiàn)“01”或“ 10”兩種組合時,表示發(fā)生溢出。符號位“ 01”,上溢出符號位“ 10”,下溢出符號位“ 00”或“ 11“,未溢出下面的問題是如何檢查加減運算中的溢出問題。通常有三種表述方式(說法):a. 兩個符號相同的補碼數(shù)相加,如果和的符號與加數(shù)的符號相反,或兩個符號相反的補碼數(shù)相減,差的符號與減數(shù)的符號相同,都屬于運算結果溢出。這種判別方法比較復雜,要區(qū)別加還是減兩種不同運算情況,還要檢查結果的符號與其中一個操作數(shù)的符號的同異,故很少使用;b. 兩個補碼數(shù)相加減時,若最高數(shù)值位

10、向符號位送的進位值與符號位送向更高位的進位值不相同,也是運算結果溢出。c. 在采用雙符號位(如定點小數(shù)的模 4 補碼)運算時,若兩個符號位的得值不同( 01 或10)則是溢出。 01 表明兩個正數(shù)相加,結果大于機器所能表示的最大正數(shù),稱為 " 上溢 " ; 10 表明兩個負數(shù)相加,結果小于機器所能表示的最小負數(shù),稱為 " 下溢 " ;雙符號位的高位符號位,不管結果溢出否, 均是運算結果正確的符號位, 這個結論在乘法運算過程中是很有實際意義的。請注意,在采用雙符號位的方案中,在寄存器和內存儲器存儲數(shù)據(jù)時,只需存一位符號,雙符號位僅用在加法器線路部分。精彩文

11、檔實用標準文案下圖是關于定點整數(shù)的變形補碼加減運算流程圖開始輸入分別輸入二個二進制數(shù)分別求出這兩個數(shù)的補碼加法進行加法運算返回結束圖 3-4 定點整數(shù)的變形補碼加減運算流程圖減法進行減法運算精彩文檔實用標準文案3.3.4 定點整數(shù)的原碼乘法流程圖在定點計算中, 兩個原碼表示的數(shù)相乘的運算規(guī)則是: 乘積的符號位由兩數(shù)的符號位按異或運算得到,而乘積的數(shù)值部分則是兩個正數(shù)相乘之積。機器算法:機器中一種方法是多次采用“加法 - 移位“的方法來實現(xiàn),稱為串行乘法器,它的硬件結構簡單,但是速度慢,目前廣泛使用的是流水式陣容乘法器,稱為并行乘法器。無符號數(shù) m乘以 n 會產(chǎn)生 m*n個位積,出現(xiàn) m+n個列

12、和,并行乘法器的關鍵是快速產(chǎn)生 m*n個位積,對位積進行相加運算產(chǎn)生 m+n列和。定點整數(shù)的原碼乘法流程圖如下所示開始N輸入Y根據(jù)提示分別輸入乘數(shù)和被乘數(shù)N乘法Y進行乘法運算N返回Y結束精彩文檔實用標準文案3.3.5 浮點數(shù)的加減運算浮點數(shù)的加減運算分為六步: 0 操作數(shù)檢查浮點加減運算過程比定點運算過程復雜。如果判知兩個操作數(shù)X 或者 Y 中有一個數(shù)位 0,即可得知運算結果而沒有必要再進行后續(xù)的一系列操作以節(jié)省時間。 0 操作數(shù)檢查步驟則用來完成這一功能。參加加法運算的數(shù)據(jù)都是非零,進入下一步。比較階碼大小并完成對階為了便于直觀理解, 假設兩數(shù)均以補碼表示, 階碼采用雙符號位, 尾數(shù)采用單符

13、號位。兩浮點數(shù)進行加減, 首先要看兩個數(shù)階碼是否相同, 若二數(shù)階碼不同, 表示小數(shù)點位置沒有對齊,此時必須使兩個數(shù)階碼相同,這個過程叫做對階。對階操作規(guī)定使尾數(shù)右移, 尾數(shù)右移后階碼做相應增加,因此對階時,總是使小階向大階看齊。對階結束后, 即可進行尾數(shù)的求和運算。 無論加法運算還是減法運算, 都按加法進行操作,其方法與定點加減法運算完全一樣。結果規(guī)格化a. 采用雙符號位表示尾數(shù)時, 如果兩符號位 01 或 10 時,應將結果尾數(shù)右移一位, 階碼加 1.b. 如果尾數(shù)最高數(shù)值位與符號位相同,應將尾數(shù)右移,階碼減 1,直至數(shù)值位最高位與符號位相反。舍入運算浮點運算在對階或右規(guī)時, 尾數(shù)需要右移,

14、 被右移出去的位會被丟掉, 從而造成運算結果精度的損失。 為了減少這種精度損失, 可以將一定位數(shù)的移出位先保留起來, 稱為保護位,在規(guī)格化后用于舍入處理 IEEE754 標準列出了四種可選的舍入處理方法: 就近舍入、朝 +舍入、朝 - 舍入、朝 0 舍入。判斷結果是否溢出根據(jù)補碼的雙符號檢查溢出的方法確定階碼是否溢出。與定點數(shù)運算不同的是, 浮點數(shù)的溢出是以其運算結果的階碼的值是否產(chǎn)生溢出來判斷的。若階碼的值超過了階碼所能表示的最大正數(shù),則為上溢,進一步,若此時浮點數(shù)為正數(shù),則為正上溢,記為 +,若浮點數(shù)為負數(shù),則為負上溢,記為 - ;若階碼的值超過了階碼所能表示的最小負數(shù),則為下溢,進一步,

15、若此時浮點數(shù)為正數(shù),則為正下溢,若浮點數(shù)為負數(shù),則為負下溢。正下溢和負下溢都作為 0 處理。精彩文檔實用標準文案浮點數(shù)的加減運算如下圖所示開始輸入NY輸入第一個數(shù)的階碼輸入第二個數(shù)的階碼NN加法減法YY求出加法的階碼求出減法的階碼和和尾數(shù)尾數(shù)N返回Y結束精彩文檔實用標準文案4 實驗結果和測試4.1 進入主頁面測試( 1)在開始界面有口令設置只有口令正確才可以進行選擇運算, 不正確就會提示口令錯誤重新輸入。下圖是打開的開始界面圖 4-1 開始界面( 2)輸入口令時一共有三次機會, 如果三次都輸入錯誤則被禁止進入表示無權使用該系統(tǒng)圖 4-2 口令輸入錯誤的情況精彩文檔實用標準文案圖 4-3 三次口

16、令輸入錯誤的情況(3)只有口令正確才可真正進入主界面進行下面的選擇各個功能運算。下圖是口令輸入正確的界面圖 4-4 主界面此圖和開始界面不同點在于: 開始界面的菜單欄是灰色的不可使用的,而主界面的菜精彩文檔實用標準文案單欄是黑色的可供選擇的可以使用的。4.2 定點整數(shù)的機器表示(1)進入主界面后選擇定點整數(shù)的機器表示,然后進行運算圖 4-5 定點整數(shù)的機器表示(2)根據(jù)提示輸入一個二進制數(shù)然后進行運算(注:要輸入一個帶符號的二進制整點整數(shù))根據(jù)提示可以依次求出原碼、反碼、補碼、移碼,并且可以通過返回鍵返回主界面進行其他的運算。圖 4-6 輸入二進制數(shù)和原碼精彩文檔實用標準文案圖 4-7 反碼的

17、計算圖 4-8 補碼的計算圖 4-9 移碼的計算精彩文檔實用標準文案4.3 定點整數(shù)的變形補碼加減運算(1)在菜單欄選擇定點整數(shù)的變形補碼加減運算,進行該算法的運算圖 4-10 定點整數(shù)的變形補碼加減運算(2)根據(jù)提示分別輸入第一個數(shù)和第二個數(shù)然后分別點擊加法、減法進行加法和減法的運算,并查看結果(注:要輸入二進制數(shù),不可隨便輸入) 。最后可以通過返回鍵返回主界面選擇其他算法計算。圖 4-11 加法運算精彩文檔實用標準文案圖 4-12 減法運算4.4 定點整數(shù)的原碼乘法(1)回到主界面在菜單欄選擇定點整數(shù)的原碼乘法進行運算圖 4-13 定點整數(shù)的原碼乘法界面(2)根據(jù)提示分別輸入被乘數(shù)和乘數(shù)并

18、查看結果精彩文檔實用標準文案圖 4-14 乘法結果4.5 浮點數(shù)的加減運算(1)在主界面選擇浮點數(shù)的加減運算進入運算階段圖 4-15 浮點數(shù)的加減運算界面(2)根據(jù)提示分別輸入兩個數(shù)的階碼和尾數(shù)當輸入的數(shù)超出界限則被提示輸入的階碼溢出精彩文檔實用標準文案圖 4-16 階碼溢出的情況只有正確輸入才有值可計算圖 4-17 加法的階碼尾數(shù)計算有的輸入可以計算加法的階碼但并不代表減法的階碼可以算出以下情況是輸出數(shù)索引超出數(shù)組界限不可計算圖 4-18 索引超出了數(shù)組界限的情況精彩文檔實用標準文案圖 4-19 浮點數(shù)的加減運算4.6 幫助回到主界面選擇幫助按鈕,窗口會給出幫助提示圖 4-20 幫助顯示5

19、實驗小結這周的課程設計就要結束了。從最開始的做題到現(xiàn)在的報告總結我完成一個過程。在這個過程里我領悟了很多。在最開始的做實驗報告時感覺挺難的之前根本就沒有寫過關于這種類型的實驗報告,而且是第一次使用C#來寫。雖然在中間寫的過程中還有很多不會的東西,但是通精彩文檔實用標準文案過查看書本和資料還有問同學和老師, 基本上都解決了。 其中有一部分的程序無法滿足題目的要求 在同學的幫助下最后得到了解決,通過這件事我感覺自己還有還有很多不足,仍然有一些有待提高的地方。我覺得課程設計的作用一方面是最基本的就是要完成這一科目,差不多也是對自己的一個階段性的總結;還有就是在整個設計的過程中,讓我們認真的獨立思考,在和同學交流的過程中也增強了我們的語言組織能力和彼此之間的友誼。通過課程設計讓我們不斷的發(fā)現(xiàn)自己的不足從而去改善,這是一種學習的態(tài)度, 不僅僅是在這次的課程設計中,在以后的無論生活還是學習方面都應該注意和努力改善。通過這次比較完整的一個程序的設計,我擺脫了單純的理論知識學習狀態(tài),和實際設計的結合鍛煉了我的綜合運用所學的基礎知識,解決實際問題的能力,同時也提高我查閱文獻資料、對程序整體的把握等其他能力水平, 而且通過對整體的掌控, 對局部的取舍,以及對細節(jié)的斟酌處理,都使我的能力得到了鍛煉, 經(jīng)驗得到了豐富。 這是我們都希

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論