計算機組成原理期末複習【超實用】

計算機組成原理(第二版)唐朔飛  編著(課本有些地方還不錯,可以下載電子版看看)

b站2小時講解鏈接 https://www.bilibili.com/video/BV1x4411q7Fz/

五道解答題30‘=9’(9個知識點)+6’+6’+4’+5’ 

我依據老師的考題範圍手動整理,有什麼問題or想添加的知識點請在評論下方留言!實時更新,助諸位共進步!

一、解答題

1. 影響流水線性能的因素主要有哪幾種?請簡要加以說明。P348

    結構相關:是當多條指令進入流水線後,硬件資源滿足不了指令重疊執行的要求時產生的。不同指令爭用同一功能部件產生資源衝突。

    數據相關:是指令在流水線中重疊執行時,當後繼指令需要用到前面指令的執行結果時發生的。可能改變對操作數的讀寫訪問順序。

    控制相關:是當流水線遇到分支指令和其它改變PC值的指令時引起的。

2. 爲了保證DRAM的存儲信息不遭破壞,必須在電荷漏掉前就進行充電,稱爲刷新。常見的刷新方式有哪三種,試分析它們間的區別。P86

    集中刷新:是在規定的一個刷新週期內,對全部存儲單元集中一段時間逐行進行刷新,此刻必須停止讀/寫操作。

    分散刷新:是指對每行存儲單元的刷新分散到每個存儲週期內完成。

    異步刷新:是前兩種方式的結合,既可縮短“死時間”,又充分利用最大刷新間隔2ms的特點。

3. 說明計算機九大尋址方式及有效地址EA計算方法。P311

    立即尋址:無需尋址        隱含尋址:無需尋址       直接尋址:EA=A        間接尋址:EA=(A)         相對尋址:EA=(PC)+A

    基址尋址:EA=(BR)+A    變址尋址:EA=(IX)+A    寄存器尋址:EA=Rj    寄存器間接尋址:EA=(Rj)

4. 按傳輸信息的不同,系統總線可分爲哪幾類?並加以簡單描述。P43

    數據總線:用來傳輸各種功能部件間的數據信息,是雙向傳輸總線,其位數與機器字長、存儲字長有關,一般爲8/16/32位。

    地址總線:主要用來指出數據總線上的源數據或目的數據在主存單元的地址或I/O設備的地址。

    控制總線:用來發送各種控制信號的傳輸線,通常對任意控制線而言,它的傳輸是單向的。

5. 試說明具有Cache-主存結構的計算機,CPU在訪問存儲器時的工作流程。P110

    CPU欲讀取主存某字時,有兩種可能:一種是所需要的字已經在緩存中,即可直接訪問Cache;另一種是所需的字不在Cache內,此時需將該字所在的主存整個字塊一次調入Cache中(Cache與主存之間是字塊傳輸)。當Cache未滿時,主存塊可被調入緩存塊中,稱該主存塊與緩存塊建立了聯繫。當Cache已滿時,無法接收來自主存塊的信息,就由Cache內的替換機構按一定的算法從Cache內移除哪塊返回主存,並把新的主存塊調入Cache中。

6. 在寫操作時,要考慮Cache和主存的數據一致性的問題,試說明寫回法和寫直達法的區別。P113

    寫回法(拷回法):寫操作時只把數據寫入Cache而不寫入主存(減少了主存的寫操作次數),寫操作時間=訪Cache時間。但當(讀操作且Cache已滿時)Cache數據被替換出來時才寫回主存,增加了Cache複雜性。

     寫直達法(存直達法):寫操作時數據既寫入Cache又寫入主存,寫操作時間=訪存時間,它能隨時保證主存與Cache的數據始終一致,但增加了訪存次數。(讀操作時不涉及對主存的寫操作,更新策劃較容易實現。)

7. 說明補碼定點加減運算,判斷溢出的兩種方法。P239-240

     一位符號位判斷溢出:參加操作的兩個數(減法時即爲被減數和“求補”後的減數)符號相同,其結果的符號與原操作數的符號不同,即爲溢出。

     兩位符號位判斷溢出:若結果雙符號位相同,則未溢出;若雙符號位不同,則溢出。最高符號位爲真結果符號。

8. 說明Cache-主存的地址映像有哪三種方式,說明他們的基本映像原理。P117

    直接映射:將主存空間按Cache的尺寸分區,每區內相同的塊號映像到Cache中相同的塊位置。優:實現簡單;缺:不夠靈活

    全相連映射:主存中的每一個字塊可映射到Cache任何一個字塊位置上,當訪問一個塊中的數據時,塊地址要與Cache塊表中的所有地址標記進行比較以確認是否命中。

    組相連映射:是直接映射和全相連映射的一種折中方案,這種方案將存儲空間分爲若干組,各組間是直接映射,而組內各塊間是全相連映射。

9. 試說明指令週期,機器週期,時鐘週期之間的關係。P386

     一個指令週期包含若干個機器週期,一個機器週期又包含若干個時鐘週期(節拍),每個指令週期內的機器週期數可以不等,每個機器週期內的節拍數也可以不等。

10. 試說明單譯碼方式(線選法)和雙譯碼方式(重合法)的區別。P75

      存儲芯片內的地址譯碼器有兩種方式:一種是線選法,適用於地址線較少的芯片。地址信號只需經過一個方向的譯碼器就可以選中某一存儲單元的所有位,結構較簡單。

      另一種是重合法,適用於地址線較多的芯片。地址線分爲兩組,分別經行地址譯碼器和列地址譯碼器,通過兩者“與”選中存儲單元才能進行讀/寫。

11. 分別說明一下名詞MAR,MDR,CU,IR,PC的中文名稱及該器件的主要功能。P14-16

     MAR是存儲器地址寄存器,用來存放欲訪問的存儲單元的地址,其位數對應存儲單元的個數。

     MDR是存儲器數據寄存器,用來存放從存儲體某單元取出or存入的代碼,其位數與存儲字長相等。

如4K × 8位的存儲芯片,有log2(4K)=12條地址線,8條數據線

     CU是控制單元,用來分析當前指令所需完成的操作,併發出各種微操作命令序列,用以控制所有被控對象。

     IR是指令寄存器,用來存放當前指令,IR的內容來自MDR。

     PC是程序計數器,用來存放當前欲執行指令的地址,它與主存的MAR間有一條直接通道且具有自動加1功能,即可自動形成下一條指令的地址。

12. 計算機的五大基本組成是什麼?P9

      運算器:用來完成算術運算和邏輯運算,並將運算的中間結果暫存在運算器裏。

      存儲器:用來存放數據和程序。

      控制器:用來控制、指揮程序和數據的輸入、運行以及處理運算的結果。

      輸入設備:用來將人們熟悉的信息形式轉換爲機器能識別的信息形式,常見的有鍵盤、鼠標等。

      輸出設備:可將機器運算結果轉換爲人們熟悉的信息形式,如打印機輸出等。

13. 設某計算機採用微程序控制器,試說明微程序控制器的基本工作原理(即CPU執行指令時的操作過程)。P405

      首先將用戶程序的首地址送到PC,然後進入

      取指階段:①將取指週期微程序首地址M→CMAR

                        ②取微指令:將對應控存M地址單元中的第一條微指令讀到控存數據寄存器中,記爲CM(CMAR)→CMDR

                        ③產生微操作指令:第一條微指令的操作控制字段中爲“1”的各位發出控制信號,如PC→MAR、I→R,命令主存    接收程序首地址並進行讀操作。

                        ④形成下一條微指令的地址:此微指令的順序控制字段指出了下一條微指令的地址爲M+1,將M+1送至CMAR,即Ad(CMDR)→CMAR

                        ⑤取下一條微指令:將對應控存M+1地址單元中的第二條微指令讀到CMDR中,即CM(CMAR)→CMDR

                        ⑥產生微操作指令:由第二條微指令的操作控制字段中對應“1”的各位發出控制信號,如M(MAR)→MDR使對應主存2000H地址單元中的第一條機器指令從主存中讀出,送至MDR中。

                        ⑦形成下一條微指令地址:將第二條微指令下地址字段指出的地址M+2送至CMAR,即Ad(CMDR)→CMAR

      執行階段:①取數指令微程序首地址的形成:當取數指令存入IR後,其操作碼OP(IR)直接送到微地址形成部件,該部件的輸出即爲取數指令微程序的首地址P,且將P送至CMAR,記作OP(IR)→微地址形成部件→CMAR

                        ②取微指令:將對應控存P地址單元中的微指令讀到CMDR中,記爲CM(CMAR)→CMDR

                        ③產生爲操作命令:由微指令操作控制字段中對應“1”的各位發出控制信號,如Ad(IR)→MAR、I→R,命令主存讀操作數。

                        ④形成下一條微指令地址:將此條微指令下地址字段指出的P+1送至CMAR,即Ad(CMDR)→CMAR

14. 試說明漢明碼的校驗原理(即如何生成漢明碼,以及漢明碼的檢驗原理),默認偶校驗。P110

     漢明碼的生成步驟:①確定校驗位的位數 2^k ≥ n + k +1

                                     ②確定校驗位的位置

                                     ③分組

                                     ④生成校驗位的值

                                     ⑤得出結論

      檢驗原理:將已知的漢明碼按照前三步正常進行,到第四步時,用H接收P和D一起異或,然後把H倒序排列,若都爲0,即無錯。否則,該序列對應的二進制位置出錯。

15. 試說明循環冗餘校驗碼的校驗原理。P144

       循環冗餘校驗碼的生成步驟:①確定校驗位的位數 r

                                                      ②寫出信息多項式 M(x)

                                                      ③將信息多項式左移 r 位,得到 M(x)·x^r

                                                      ④用 M(x)·x^r 除以生成多項式 G(x),得到 r 位校驗位

                                                      ⑤M(x)·x^r+R(x) 得到CRC碼

     檢驗原理:根據餘數判出錯位,取反糾錯。

二、計算題

第6章  運算方法和運算部件

定點原碼一位乘:符號位單獨計算,運算數取絕對值參與計算。

定點原碼兩位乘:提高了乘法速度,但仍基於重複相加和移位的思想,且隨着乘數位數的↗,重複次數↗,仍影響乘法速度。計算較複雜,不常考,自行看書!

並行陣列乘法器:可大大提升乘法速度。(拓展)

定點補碼一位乘:分校正法比較法(Booth法)。校正法中被乘數符號任意,乘數分正、負兩種情況。若乘數爲正,則按原碼一位乘的算法計算,符號位不用另外計算,被乘數的符號位參與計算若乘數爲負,則按原碼一位乘的算法計算,被乘數和乘數取絕對值參與計算,最後加上 [-x]補 校正。雖然可將乘數和被乘數互換,使乘數保持+,不必校正,但當兩數均爲-時必須校正。∵Booth的運算規則不受乘數符號的約束 ∴控制線路較簡明,在計算機中普遍使用,常考!

定點補碼兩位乘:自行看書!

區別:補碼乘法中,乘積得符號位是在運算過程中自然形成的。而原碼乘法中,符號位與數值部分分開計算。

困擾作者得問題是:被乘數和乘數互換位置的其它情況在此不一 一列舉,以上三個例子,兩個源於書本,同一組數據,書上的校正法卻不能全部適用。望指點!

較複雜,不怎麼考,在此不贅述!

第四章  主存儲器

        

第七章  指令系統

教材P324

第3篇  中央處理器

教材P384

看下方!!

    ←參考P412例10.6,上題改正爲

已確定是對的!

第四章  存儲系統

書上P122原題!

鑑於我用公式寫易誤導大家,我上傳書上原解如下:

4.4  輔助存儲器

1. 若某磁盤有兩個記錄面,每面80個磁道,每磁道18扇區,每扇區存512字節,計算該磁盤的容量是多少?

解:         18×512×80×2B=1440KB

舉個栗子( o=^•ェ•)o

如果對你有幫助,可以給點小賞。記得關注我呦!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章