計算機系統概論
計算機系統簡介
現代計算機系統由硬體(計算機的實體如主機、外設等)和軟體構成(由具有各類特殊功能的資訊(程式)組成
計算機軟體
-
系統軟體:用來管理整個計算機系統
-語言處理程式:Basic、C、Pascal
-作業系統:DOS、UNIX
-服務性程式:Word、PCTOOLS
-資料庫管理系統:SQL、Oracle
-網絡軟體:Windows NT
- 應用軟體:按任務需要編織成的各種程式、
計算機系統的層次結構
-
處理系統複雜的方法
-抽象:指進階的模型和低級的實體相對
- 層次結構
微指令系統:微程式機器M0
↑
硬體 機器語言:實際機器M1
↑
--------------------------------------------------------------
作業系統:虛拟機器
↑
軟體 彙編語言:虛拟機器M2
↑
進階語言:虛拟機器M3
計算機的基本組成
馮諾依曼計算機(第一台1949年)特點
- 五大組成部分:運算器、存儲器、輸入裝置、輸出裝置、控制器
- 指令和資料以同等地位存于存儲器,可按位址尋訪
- 指令和資料用二進制表示
- 指令由操作碼和位址碼組成
- 存儲程式(重點):程式存在存儲器當中
- 以運算器為中心
馮諾依曼計算機硬體框圖(以運算器為中心)
以存儲器為中心的計算機硬體框圖
現代計算機硬體框圖
系統複雜性管理的方法(3Y)
- 階層化(Hierachy):将被設計的系統劃分為多個子產品或子子產品
- 子產品化(Modularity):有明确定義的功能和接口
- 規則性(regularity):子產品更容易被重用
計算機的工作步驟
1、上機前的準備
- 建立數學模型
- 确定計算方法
- 編制解題程式
- 程式——運算的全部步驟
- 指令——每一個步驟
程式設計舉例:
計算ax^2+bx+c
取x至運算器中
乘以x在運算器中
乘以a在運算器中
将ax^2存儲在存儲器中
取b至運算器中
乘以x在運算器中
加ax^2在運算器中
加c在運算器中
-----------------------------------------------
轉化為(ax+b)x+c (算法中的改進)
取x至運算器中
乘以a在運算器中
加b在運算器中
乘以x在運算器中
加c在運算器中
指令格式舉例
取數 α [α]->ACC
操作碼 記憶體單元位址
000001 0000001000
存數 β [ACC]->β
加法 γ [ACC]+[γ]->ACC
乘法 Ω [ACC]*[Ω]->ACC
列印
停機
存儲器的基本組成
存儲體-存儲單元-存儲元件
- 存儲單元:存放一串二進制代碼
- 存儲字:存儲單元中二進制代碼的組合
- 存儲字長:存儲單元中的二進制代碼(存儲字)位數,存儲字長可以是8位、16位、32位等。
- 按位址尋訪
- MAR:存儲位址寄存器,反映存儲單元的個數
- MDR:存儲器資料寄存器,反映存儲字長
運算器的基本組成及操作過程
功能為加減乘除
控制器的基本組成
功能:解釋指令、保證指令的按序執行
主機完成一條指令的過程
以取數指令為例子
ax^2+bx+c程式的運作過程
- 将程式通過輸入裝置送至計算機
- 程式首位址->PC
- 啟動程式運作
- 取指令放入IR PC->MAR->M->MDR->IR, (PC)+1->PC
- 分析指令 OP(IR)->CU
- 執行指令 Ad(IR)->MAR-> M->MDR->ACC
- …
- 列印結果
- 停機
計算機硬體的主要激素名額
- 機器字長:CPU一次能處理資料的位數,與CPU中的寄存器位數有關
- 運算速度
- 主頻
- 核數,每個核支援的線程數
- 吉普森法
- CPI 執行一條指令所需時鐘周期數
- MIPS 每秒執行百萬條指令
- FLOPS 每秒浮點運算次數
- 存儲容量 存放二進制資訊的總位數
- 主存容量
- 存儲單元個數*存儲字長
- 位元組數
- 輔存容量
- 主存容量