計算機組成原理第一章思考題


1、什么是計算機系統、計算機硬件和計算機軟件?硬件和軟件哪個重要?

  計算機系統:由“硬件”和“軟件”兩大部分組成。(原書就只寫了這個,完全沒再解釋,總覺得應該會有更詳細全面的概念,可惜百度了很久也沒找到滿意的)

  計算機硬件:即計算機的實體部分,它由看得見摸得着的各種電子元件、各類光、電、機設備的實物組成,如主機、外設等等。

  計算機軟件:由人們事先編制成具有各類特殊功能的信息組成。通常可以分為兩大類:系統軟件和應用軟件。系統軟件又稱為系統程序,主要用來管理整個計算機系統,監視服務,使系統資源得到合理調度,確保高效運行。應用軟件又稱應用程序,他是用戶根據任務需要所編制的各種程序。

  很顯然缺一不可。

2、如何理解計算機系統的層次結構?

  

3、說明高級語言、匯編語言和機器語言的差別及其聯系。

  機器語言:用戶必須用二進制代碼0/1編寫程序。難度很大,但可以直接在機器上執行。

  匯編語言:符號式的程序設計語言。用符號ADD、SUB、MUL、DIV等分別表示加減乘除等操作,並用符號表示指令或數據所在存儲空間的地址,使程序員擺脫了二進制代碼程序。但是必須先將匯編語言程序翻譯成機器語言程序后,才能被機器接受和運行。這個翻譯過程是由機器系統軟件中的匯編程序來完成的。由於匯編語言擺脫不了實際機器的指令系統,因此,匯編語言沒有通用性,每台機器必須有一種與之相對應的匯編語言。

  高級語言:這類高級語言對問題的描述十分接近人們的習慣,並且還具有較強的通用性。程序員完全可以不必了解實際機器M1的機型、內部的具體組成及自身的指令系統,只要掌握這類高級語言本身所賦予的語法和語義,便可直接用這種語言編程,很方便。當然在進入M1機器運行前,必須先將高級語言翻譯成匯編語言(或其他中間語言程序),然后再將其翻譯成機器語言程序。通常,我們把高級語言程序翻譯成機器語言程序的軟件叫做翻譯程序。翻譯程序有兩種:一種叫編譯程序,另一種叫解釋程序。編譯程序將用戶編寫的高級語言程序(即源程序)的全部語句一次全部翻譯成機器語言程序,而后再執行機器語言程序。因此,只要源程序不變,就無需再次進行翻譯。

4、如何理解計算機組成和計算機體系結構?

  計算機體系結構是指那些能被程序員所見到的計算機系統的屬性,即概念性的結構與功能特性,通常是指用機器語言編程的程序員(也包括匯編語言)所看到的傳統機器的屬性,包括指令集、數據類型、存儲器尋址技術、I/O機理等等,大多屬於抽象的屬性。

  計算機組成是指如何實現計算機體系結構所體現的屬性,它包含了許多對程序員來說是透明的(即程序員不知道的)硬件細節。例如,指令系統體現了機器的屬性,這是屬於計算機結構的問題。但指令的實現,即如何取指令、分析指令、取操作數、如何運算、如何送結果等等,這些都屬於計算機組成問題。例如,一台機器是否具備乘法指令的功能,這是一個結構的問題,可是,實現乘法指令采用什么方式的問題,這是一個組成問題。實現乘法指令可以采用一個專門的乘法電路,也可以采用連續相加的加法電路來實現,這兩者的區別就是計算機組成的區別。

5、馮諾依曼計算機的特點是什么?

  • 計算機由運算器、存儲器、控制器和輸入設備、輸出設備五大部分組成。
  • 指令和數據以同等地位存放於存儲器內並可按地址尋訪
  • 指令和數據均用二進制碼表示
  • 指令由操作碼和地址碼組成,操作碼用來表示操作的性質,地址碼用來表示操作數所在存儲器當中的位置
  • 指令在存儲器內順序存放。通常,指令是順序執行的,在特定條件下,可根據運算結果或根據設定的條件改變執行順序。
  • 機器以運算器為中心,輸入輸出設備與存儲器的數據傳送通過運算器。

6、畫出計算機硬件組成框架圖,說明各部件的作用及計算機硬件的主要技術指標。

圖中各部件的功能是:

  • 運算器用來完成算術運算和邏輯運算,並將運算的中間結果暫存在運算器內;
  • 存儲器用來存放數據和程序;
  • 控制器用來控制、指揮程序和數據的輸入、執行以及處理運算結果;
  • 輸入設備用來將人們熟悉的信息形式轉換為機器能識別的信息形式,常見的有鍵盤、鼠標等。
  • 輸出設備可將機器運算結果轉換為人們熟悉的信息形式,如打印機輸出、顯示器輸出等。

  計算機的五大部件(又稱五大子系統)在控制器的統一指揮下,以存儲器為中心,大大調和了運算器與輸入輸出相差很多的速度。

  由於運算器和控制器在邏輯關系和電路結構上聯系十分緊密,尤其在大規模集成電路制作工藝出現后,這兩大部件往往制作在同一芯片上,因此,通常將它們合起來統稱為中央處理器,簡稱CPU。這樣,現代計算機可認為由三大部分組成:CPU、I/O設備、及主存儲器M.M。CUP和M.M合起來又可成為主機,I/O設備可叫做外部設備。

衡量一台計算機的性能是由多項技術指標綜合確定的

  機器字長:機器字長是指CPU一次能處理數據的位數,通常與CPU的寄存器位數有關。字節越長,數的范圍也越大,精度也越高。機器的字長也會影響機器的運算速度。機器字長對硬件造價也有較大的影響。它將直接影響加法器(或ALU)、數據總線以及存儲字長的位數。

  存儲容量:存儲器的容量應該包括主存容量和輔存容量。即:存儲容量 = 存儲單元個數*存儲字長

  運算速度:計算機的運算速度跟很多因素有關,如機器的主頻、執行什么操作 、主存本身的速度(主存速度快、取指、取數就快)等等都有關。現在機器的運算速度,普遍采用單位時間內執行指令的平均條數來衡量,並用MIPS作為計量單位,即每秒執行百萬條指令。  

7、解釋以下概念:

主機:主機是指計算機除去輸入輸出設備以外的主要機體部分。也是用於放置主板及其他主要部件的控制箱體(容器Mainframe)。通常包括 CPU、內存、主板、光驅、電源、以及其他輸入輸出控制器和接口。

CPU:運算器和控制器往往制作在同一芯片上,合起來統稱為中央處理器,簡稱CPU。中央處理器(CPU,central processing unit)作為計算機系統的運算和控制核心,是信息處理、程序運行的最終執行單元。

主存:是存儲器子系統中的一類,用來存放程序和數據,它可以直接與CPU交換信息,包括存儲體、各種邏輯部件及控制電路等。另一類叫輔助存儲器,簡稱副存,又叫外存。

存儲單元、存儲元件、存儲基元、存儲元、存儲字長:存儲體由許多存儲單元組成,每個存儲單元又包含若干個存儲元件(存儲元),每個存儲元件能寄存一位二進制代碼“0”或“1”。所以一個存儲單元可存儲一串二進制代碼,這串二進制代碼為一個存儲字,這串二進制代碼的個數叫做存儲字長。

存儲容量:存儲器的容量應該包括主存容量和輔存容量。即:存儲容量 = 存儲單元個數*存儲字長

機器字長:是指CPU一次能處理數據的位數,通常與CPU的寄存器位數有關

指令字長:指令的字節長度

8、解釋英文代號:CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、IO、MIPS、CPI、FLOPS

CPU:運算器和控制器往往制作在同一芯片上,合起來統稱為中央處理器,簡稱CPU。

PC:指令計數器(Program Counter,PC),用來存放當前欲執行指令的地址,它與MAR之間有一條直接通路,且具有自動加1的功能,即可自動形成下一條指令的地址。

IR:指令寄存器,是中央處理器控制部件中的寄存器。IR的內容來自主存的MDR。IR中的操作碼(OP(IR))送至CU(記作OP(IR)→CU。(IR,Instruction Register)

CU:控制單元,用來解釋存儲器中的指令,並發出各種操作命令來執行指令。(Control Unit)

ALU:算術邏輯單元(簡稱算邏部件),用來完成算術邏輯運算。

ACC:累加器,是一個具有特殊用途的二進制8位寄存器,專門用來存放操作數或運算結果。

MQ:乘商寄存器,主要負責數據的乘法與除法運算並可保存運算結果,是運算器的基本組成部分。(Multiple—Quotient Register)

X:操作寄存器。

MAR:存儲器地址寄存器,用來存放預訪問的存儲單元的地址。(Memory Address Register)

MDR:是存儲器數據寄存器,用來存放從存儲體某單元取出的代碼或者准備往某存儲單元存入的代碼,其位數與存儲字長相等。(Memory Data Register)

I/O:I/O子系統包括各種外部設備及相應的接口。

MIPS:計量單位,每秒執行百萬條指令。如某機每秒能執行200萬條指令,則記作2MIPS。

CPI:計量單位,執行一條指令所需要的時鍾周期數(主頻的倒數)。

FLOPS:計量單位,每秒浮點運算次數來衡量運算速度。

9、計算機如何區分存儲器中的指令和數據:

方式一:通過不同時間段來區分指令和數據,即在取指令階段(或取值微指令)取出的為指令,在執行指令階段(或相應微程序)取出的即為數據。

方式二:通過地址來源區分,由PC提供存儲單元地址的取出的是指令,由指令地址碼部分提供存儲單元地址的取出的是操作數。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM