計算機組成原理(第2版)唐朔飛編著(轉載請註明出處---https://www.cnblogs.com/qingl)編程
第一章緩存
1.2. 如何理解計算機的層次結構?異步
答:模塊化
虛擬機器M4(高級語言機器):用編譯程序翻譯成彙編語言程序。性能
虛擬機器M3(彙編語言機器):用匯編程序翻譯成機器語言程序。優化
虛擬機器M2(操做系統機器):用機器語言解釋操做系統。ui
傳統機器M1(機器語言機器):用微程序解釋機器指令。編碼
微程序機器M0(微指令系統):由硬件直接執行微指令。spa
1.5. 馮•諾依曼計算機的特色是什麼?操作系統
答:
l 計算機由運算器、控制器、存儲器、輸入設備、輸出設備五大部件組成;
l 指令和數據以同等地位存放於存儲器內,並可按地址訪問;
l 指令和數據均用二進制表示;
l 指令由操做碼、地址碼兩大部分組成,操做碼用來表示操做的性質,地址碼用來表示操做數在存儲器中的位置;
l 指令在存儲器中順序存放,一般自動順序取出執行;
l 機器以運算器爲中心(原始馮•諾依曼機)。
1.6. 畫出計算機硬件組成框圖,說明各部件的做用及計算機硬件的主要技術指標。
答:
計算機硬件組成框圖以下:
各部件的做用以下:
控制器:控制、指揮程序和數據的輸入、運行以及處理運算結果。
運算器:完成算術運算和邏輯運算,並將運算的中間結果暫時存在運算器內。
存儲器:存放數據和程序。
輸入設備:將人們熟悉的信息形式轉換爲機器能識別的信息形式。
輸出設備:將機器運算結果轉換爲人們熟悉的信息形式。
計算機硬件的主要技術指標有:
機器字長:指CPU一次能處理數據的位數。
存儲容量:指能存儲信息的最大容量,一般以字節數來衡量。通常包含主存容量和輔存容量。
運算速度:現廣泛採用單位時間內執行指令的平均條數來衡量。
1.8. 解釋下列英文縮寫的中文含義:
CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、I/O、MIPS、CPI、FLOPS
答:
CPU:Central Processing Unit,中央處理機(器),是計算機硬件的核心部件,主要由運算器和控制器組成。
PC:Program Counter,程序計數器,其功能是存放當前欲執行指令的地址,並可自動計數造成下一條指令地址。
IR:Instruction Register,指令寄存器,其功能是存放當前正在執行的指令。
CU:Control Unit,控制單元(部件),爲控制器的核心部件,其功能是產生微操做命令序列。
ALU:Arithmetic Logic Unit,算術邏輯運算單元,爲運算器的核心部件,其功能是進行算術、邏輯運算。
ACC:Accumulator,累加器,是運算器中既能存放運算前的操做數,又能存放運算結果的寄存器。
MQ:Multiplier-Quotient Register,乘商寄存器,乘法運算時存放乘數、除法時存放商的寄存器。
X:在此表示操做數寄存器,即運算器中工做寄存器之一,用來存放操做數;
MAR:Memory Address Register,存儲器地址寄存器,在主存中用來存放欲訪問的存儲單元的地址。
MDR:Memory Data Register,存儲器數據緩衝寄存器,在主存中用來存放從某單元讀出、或要寫入某存儲單元的數據。
I/O:Input/Output Equipment,輸入/輸出設備,爲輸入設備和輸出設備的總稱,用於計算機內部和外界信息的轉換與傳送。
MIPS:Million Instruction Per Second,每秒執行百萬條指令數,爲計算機運算速度指標的一種計量單位。
CPI:Cycle Per Instruction,執行一條指令所需的時鐘週期數。
FLOPS:Floating Point Operation Per Second,浮點運算次數每秒。
1.10. 指令和數據都存於存儲器中,計算機如何區分它們?
答:
計算機區分指令和數據有如下2種方法:
l 經過不一樣的時間段來區分指令和數據,即在取指令階段(或取指微程序)取出的爲指令,在執行指令階段(或相應微程序)取出的即爲數據。
l 經過地址來源區分,由PC提供存儲單元地址的取出的是指令,由指令地址碼部分提供存儲單元地址的取出的是操做數。
第三章
3.1. 什麼是總線?總線傳輸有何特色?爲了減輕總線負載,總線上的部件應具有什麼特色?
答:
總線是鏈接多個部件的信息傳輸線,是各部件共享的傳輸介質。
特色是:在某一時刻,只容許有一個部件向總線發送信息,而多個部件能夠同時從總線上接收相同的信息。
爲了減輕總線負載,總線上的部件應經過三態驅動緩衝電路與總線連通。
3.4. 爲何要設置總線判優控制?常見的集中式總線控制有幾種?各有何特色?哪一種方式響應時間最快?哪一種方式對電路故障最敏感?
答:
總線判優控制解決多個部件同時申請總線時的使用權分配問題;
常見的集中式總線控制有三種:鏈式查詢、計數器定時查詢、獨立請求方式;
鏈式查詢:連線簡單,易於擴充,對電路故障最敏感;
計數器定時查詢:優先級設置較靈活,對故障不敏感,但增長了控制線數,控制也較複雜;
獨立請求方式:響應速度快,優先次序控制靈活,但控制線數量多,總線控制複雜。
3.6. 試比較同步通訊和異步通訊。
答:
同步通訊:由統一時鐘控制數據傳送,控制方式簡單,靈活性差,當系統中各部件工做速度差別較大時,總線工做效率明顯降低。通常用於總線長度較短,各部件存取時間比較一致的場合。
異步通訊:不禁統一時鐘控制數據傳送,部件間採用應答方式進行聯繫,控制方式較同步複雜,靈活性高,適合在系統中各部件工做速度差別較大時採用。
3.8. 爲何說半同步通訊同時保留了同步通訊和異步通訊的特色?
答:
半同步通訊既能像同步通訊那樣由統一時鐘控制,又能像異步通訊那樣容許傳輸時間不一致,於是工做效率也介於二者之間。
3.9. 分離式通信有何特色,主要用於什麼系統?
答:
特色:
(1)各模塊欲佔用總線使用權都必須提出申請;
(2)在獲得總線使用權後,主模塊在先定的時間內向對方傳送信息,採用同步方式傳送,再也不等待對方的回答信號;
(3)各模塊在準備數據的過程當中都不佔用總線,使總線可接受其它模塊的請求;
(4)總線被佔用時都在作有效工做,不存在空閒等待時間,充分利用了總線的佔用,從而實現了總線在多個主、從模塊間進行信息交叉重疊並行傳送。
分離式通信主要用於大型計算機系統。
3.10. 什麼是總線標準?爲何要設置總線標準?你知道目前流行的總線標準有哪些?什麼叫plug and play?哪些總線有這一特色?
答:
總線標準:系統與各模塊,模塊與模塊之間的一個互聯的標準界面。
主要爲了解決不一樣廠家各種模塊化產品的兼容問題;
目前流行的總線標準有:ISA、EISA、PCI等;
plug and play:即插即用,USB、PCI等具備此功能。
3.13. 什麼是總線的數據傳輸速率,它與哪些因素有關?
答:
即總線帶寬,指單位時間內總線上傳輸數據的位數,一般用每秒傳輸信息的字節數來衡量。
它與總線寬度和總線頻率有關,總線寬度越寬,頻率越快,數據傳輸率越高。
第四章
4.3. 存儲器的層次結構主要體如今什麼地方?爲何要分這些層次?計算機如何管理這些層次?
答:
存儲器的層次結構主要體如今 緩存-主存 和 主存-輔存 這兩個存儲層次上。
緩存-主存 層次主要解決CPU和主存速度不匹配的問題。
主存-輔存 層次主要解決存儲系統的容量問題。
綜合上述兩個存儲層次的做用,從整個存儲系統來看,就達到了速度快、容量大、位價低的優化效果。
主存與緩存之間的信息調度功能所有由硬件和操做系統自動完成。而主存與輔存層次的調度目前普遍採用虛擬存儲技術實現。
4.4. 說明存取週期和存取時間的區別。
答:
存取週期:存儲器進行連續兩次獨立的存儲器操做所需的最小間隔時間。
存取時間:啓動一次存儲器操做到完成該操做所需的所有時間。
一般存儲週期大於存取時間。
4.9. 什麼叫刷新?爲何要刷新?說明刷新有幾種方法。
答:
刷新:對動態RAM按期進行的信息所有重寫過程;
刷新緣由:某些存儲單元長期得不到訪問,其存儲單元內的原信息會慢慢消失;
經常使用的刷新方法有三種:集中刷新、分散刷新、異步刷新。
集中刷新:在規定的一個刷新週期內,對所有存儲單元集中一段時間逐行進行刷新,存在CPU訪存「死區」。
分散刷新:對每行存儲單元的刷新分散到每一個存取週期內完成。
異步刷新:是前兩種方式的結合,它既可縮短「死時間」,又充分利用最大刷新間隔爲2 ms的特色。
4.25. 什麼是「程序訪問的局部性」?存儲系統中哪一級採用了程序訪問的局部性原理?
答:
CPU從主存取指令或取數據,在必定時間內,只是對主存局部地址區域的訪問。
存儲系統中 緩存-主存 層次和 主存-輔存 層次均採用了程序訪問的局部性原理。
4.33.簡要說明提升訪存速度可採起的措施。
答:
(1)採用高速元件。例如採用高性能存儲芯片。
(2)採用層次結構。
(3)調整主存結構。如採用單體多字系統或採用多體並行系統。
第五章
5.1. I/O設備有哪些編址方式?各有何特色?
答:
統一編址:佔用了存儲空間,減小了主存容量,但無須專用的I/O指令
不統一編址:又叫獨立編址,不佔用存儲空間,故不影響主存容量,但需設I/O專用指令。
5.10. 什麼是I/O接口,與端口有何區別?爲何要設置I/O接口?I/O接口如何分類?
答:
I/O接口一般是指主機與I/O設備之間設置的一個硬件電路及其相應的軟件控制,而端口是指接口電路中的一些寄存器。
設置I/O接口的理由:
1)經過接口可實現I/O設備的選擇
2)。。。。可實現數據緩衝
3)。。。。可實現數據串 - 並格式的轉換
4)。。。。可傳送命令
5)經過接口可監視設備的工做狀態
按數據傳送方式分類:並行接口和串行接口。
按功能選擇的靈活性分類:可編程接口和不可編程接口。
按通用性分類:通用接口和專用接口。
按數據傳送的控制方式分類:程序型接口和DMA型接口。
5.11簡述I/O接口的功能和基本組成
答:
功能:
1) 選址功能
2) 傳送命令的功能
3) 傳送數據的功能
4) 反映I/O設備工做狀態的功能
I/O接口的基本組成包括命令寄存器、命令譯碼器、數據緩衝寄存器、狀態標誌觸發器和屏蔽觸發器等。
5.14. 在什麼條件下,I/O設備能夠向CPU提出中斷請求?
答:
若I/O設備未被屏蔽(MASK=0),且當I/O設備工做已完成時(D=1),則中斷查詢信號將INTR置「1」,表示I/O設備向CPU發出中斷請求,該信號可送至排隊器進行優先級判斷。
5.16. 在什麼條件和什麼時間,CPU能夠響應I/O的中斷請求?
答:
當容許中斷觸發器EINT=1,且至少有一箇中斷請求被查到,則在一條指令執行完時,響應中斷。
5.35. 試從5個方面比較程序中斷方式和DMA方式的區別。
答:
1) 數據傳送:程序中斷方式靠程序傳送,DMA方式靠硬件傳送。
2) CPU響應時間:程序中斷方式是在一條指令執行結束時響應,而DMA方式可在指令週期內的任一存取週期結束時響應。
3) 程序中斷方式有處理異常事件的能力,DMA方式則沒有。
4) 程序中斷方式須要中斷現行程序,故須要保護現場;DMA方式不中斷現行程序,無須保護現場。
5) DMA的優先級比程序中斷方式的優先級高。
第六章
6.5. 已知[x]補,求[x]原和x。
[x1]補 = 1.1100; [x2]補 = 1.1001; [x3]補 = 0.1110; [x4]補 = 1.0000;
[x5]補 = 1,0101; [x6]補 = 1,1100; [x7]補 = 0,0111; [x8]補 = 1,0000;
解:
[x]補與[x]原、x的對應關係以下:
[x]補 |
1.1100 |
1.1001 |
0.1110 |
1.0000 |
1,0101 |
1,1100 |
0,0111 |
1,0000 |
[x]原 |
1.0100 |
1.0111 |
0.1110 |
無 |
1,1011 |
1,0100 |
0,0111 |
無 |
x |
-0.0100 |
-0.0111 |
0.1110 |
-1 |
-1011 |
-100 |
0,0111 |
-10000 |
6.10. 在整數定點機中,設機器數採用1位符號位,寫出±0的原碼、補碼、反碼和移碼,得出什麼結論?
解:
0的機器數形式以下:(假定機器數共8位,含1位符號位在內)
真值 |
原碼 |
補碼 |
反碼 |
移碼 |
+0 |
0 000 0000 |
0 000 0000 |
0 000 0000 |
1 000 0000 |
-0 |
1 000 0000 |
0 000 0000 |
1 111 1111 |
1 000 0000 |
結論:0的原碼和反碼分別有+0和-0兩種形式,補碼和移碼只有一種形式,且補碼和移碼數值位相同,符號位相反。
6.15. 什麼是機器零?若要求全0表示機器零,浮點數的階碼和尾數應採起什麼機器數形式?
答:
機器零指機器數所表示的零的形式。
它與真值零的區別是:機器零在數軸上表示爲「0」點及其附近的一段區域,即在計算機中小到機器數的精度達不到的數均視爲「機器零」,而真零對應數軸上的一點(0點)。若要求用「全0」表示浮點機器零,則浮點數的階碼應用移碼、尾數用補碼錶示。
第七章
7.21比較RISC和CISC
答:
與CISC機相比,RISC機的主要優勢以下:
1) 充分利用VLSI芯片的面積
2) 提升計算機運算速度
3) 便於設計,可下降成本,提升可靠性
4) 有效支持高級語言程序
5) 簡化了指令系統,指令數量少,但較難以兼容老機器
第八章
8.9 當遇到什麼狀況時流水線將受阻?舉例說明。
答:
流水線受阻通常有三種狀況:結構相關、數據相關和控制相關。
1) 結構相關是 多條指令進入流水線後, 硬件資源知足不了指令重疊執行的要求時產生的。
2) 數據相關是 指令在流水線中重疊執行時,當後繼指令須要用到前面指令的執行結果時發生的。
3) 控制相關是 當流水線遇到分支指令和其餘改變PC值得指令時引發的。
第九章
9.3. 什麼是指令週期、機器週期和時鐘週期?三者有何關係?
答:
指令週期:CPU取出並執行一條指令所需的所有時間;
機器週期:以訪問一次存儲器的時間定爲基準時間,這個基準時間就是機器週期。
時鐘週期:也稱爲振盪週期,定義爲時鐘脈衝的倒數。
指令週期一般用若干個機器週期表示,而機器週期又包含若干個時鐘週期。
9.9. 試比較同步控制、異步控制和聯合控制的區別。
答:
同步控制:任何一條指令或指令中任何一個微操做的執行都是事先肯定的,而且都受統一基準時標的時序信號控制。
異步控制:不存在基準時標信號,沒有固定的週期節拍和嚴格的時鐘同步。
聯合控制:同步控制和異步控制相結合就是聯合控制方式。這種方式對各類不一樣指令的微操做實行大部分統1、小部分區別對待的方法。
第十章
10.10. 微指令的操做控制有幾種編碼方式?各有何特色?哪種控制速度最快?
答:
1)直接編碼方式:含義清晰、速度快,但控存容量極大。
2)字段直接編碼方式:縮短了微指令的長度,但執行速度稍慢。
3)字段間接編碼方式:進一步縮短了微指令字長,但削弱了並行控制能力。
4)混合編碼:直接編碼和字段編碼的混合。
5)其餘。。
10.17. 解釋機器指令、微指令、微程序、毫微指令和毫微程序以及它們之間的對應關係。
答:
機器指令:由「0」,「1」代碼組成,能被機器直接運行。
微指令:用來解釋機器指令。
微程序:微指令的有序集合。一條機器指令的功能由一段微程序來實現。
毫微指令:用來解釋微指令的。
毫微程序:用來解釋微程序的。毫微程序由毫微指令組成。