【理論積累】計算機組成原理第一版【一】——計算機系統概論部分
計算機及其功能特點
- 計算機是電子計算機的統稱,有模擬計算機和數字計算機
- 模擬計算機處理的是連續變化的微電訊號物理量
- 數字計算機處理的是離散的微電訊號物理量
- 計算機是一種能夠按預先存入的工作程式連續自動進行資訊處理的微電子裝置
- 形態特徵:變換兩種微電訊號的物理實體
- 功能特徵:對二進位制數進行加工【運算】、儲存和傳輸
- 工作特徵:連續自動
- 條件特徵:儲存程式
- 程式:人們根據計算任務及其計算方法,採用一定方式描述的計算機的工作步驟
- 計算機的功能特點:對二進位制數進行運算【核心】、儲存和傳輸
- 快速性:計算機採用告訴邏輯元件,為快速處理資訊奠定了物質基礎
- 通用性:採用二進位制編碼方法,使得計算機不僅可以處理數值資料,也可以處理非數值資料
- 準確性:計算精度和計算方法
- 邏輯性:邏輯判斷和邏輯運算
- 儲存性:計算機擁有容量巨大的儲存部件
計算機發展的歷史
20世紀40年代中期到50年代後期:電子管計算機
20世紀50年代後期到60年代中期:電晶體計算機時代
20世紀60年代中期到70年代中期:積體電路計算機時代
20世紀70年代中期以後:超大規模積體電路計算機時代
20世紀80年代:微型計算機
1978——1984 16位定點微處理器階段
1985——1992 32位奠定微處理器階段
1993——2005 準64位浮點微處理器階段
2005以後——64位浮點微處理器階段
我國計算機發展
1953年 開始研究
1958年 第一臺計算機103型通用電子管電子計算機
1964年 電晶體計算機
1971年 積體電路計算機
1972年——1977年 20個型號的DJS系列機
1982年 快速發展
1983年 銀河I
1984年 新技術發展公司成立
1995年 曙光1000
1997年 銀河III
2009年 天河一號
2013年 天河二號
未來計算機的發展
計算機發展的方向
- 高效能化
- 專業微型化
- 功能綜合化
未來計算機的展望
未來計算機發展有兩條途徑:基礎元件不變體系結構改變和基礎元件改變體系結構更新
- 以積體電路為基礎的計算機
- 以新型基礎元件為基礎的計算機
計算機應用
- 計算機應用的發展
- 計算模式經歷了主機計算、個體計算、分散式計算和普適計算四個階段
- 相應的物件也由數值資料、字元資料擴充套件到多媒體資料、行為資料,從而推動了計算機應用範圍的不斷擴大
- 計算機應用的領域
- 科學計算機
- 資料處理
- 自動控制
- 輔助工作
- 異域通訊
- 人工智慧
計算機的工作原理
- 計算模型是完成計算任務所必須遵循的基於形式化描述戶的基本規則,對所有計算方法進行高度概括與抽象是計算模型建立的基礎
- 工作單元【計算機中的指令】之間存在處理次序與資料依賴等兩種關聯性,用於控制處理次序與資料依賴機制的資料傳遞與工作驅動是計算模型的基本內容
- 資料傳遞是指依賴資料以來關聯性,實現一個工作單元向另一個工作單元傳送資料,資料傳遞方式有共享儲存和專用儲存兩種
- 工作驅動是指依據處理次序關聯性,實現一個工作單元結束向另一個工作單元開始轉換
- 計算機的工作原理包含三個方面
- 按程式中指令的排列順序自動轉換工作單元來驅動程式執行,計算機則開完車程式所描述的計算任務
- 在啟動計算機計算之前,應把根據計算任務、由人工編制的程式及其所需要原始資料存入到計算機之中,使程式和原始資料域計算機融為一體
- 以布林代數為基礎,包含系列運算的計算任務所對應的程式採用二進位制編碼的指令來描述時,則可由指令來控制邏輯電路,實現對資訊的處理,稱為指令控制
- 馮諾依曼機型計算機
- 一臺完整的計算機【計算機系統】包括硬體【機器】和軟體【程式】兩個部分,只有硬體和軟體融於一提,計算機才能正常工作併發揮作用
- 計算機由運算器、儲存器、控制器、輸入裝置和輸出裝置等五大功能部件組成,運算器用於對資料進行運算,儲存器用於存放程式和資料,控制器用於控制指令和處理次序及其執行,輸入輸出裝置用於操作人員與機器進行資訊交換
- 程式是一串有序指令的集合,計算機僅能按程式中指令序列的順序自動逐條執行指令,但可通過轉移控制指令來改變程式指令的順序執行指令
- 指令和資料都採用二進位制編碼表示,且等同地預先存放在儲存器中,指令一般包含操作碼和地址碼兩部分
- 儲存器可記憶大量的二進位制數,這些二進位制數按位數相同且固定不變的儲存單元操作,每個儲存單元均有唯一對應的編號,且編號是按一維線性來編制的,即儲存器是以儲存單元為訪問單位的一維線性空間
- 計算機利用程式計數器來指示當前處理指令在儲存器中的儲存單元地址,由於程式指令序列在儲存器中是連續存放的,則程式計數器通過順序遞增來實現程式指令序列的順序,通過轉移控制指令改變程式計數器中的地址來改變程式指令的順序。
- 現代計算機存在兩個弱點
- 不考慮指令處理資源的情況下,指令直接關聯性的本質是資料依賴,而採用程式順序驅動時,則強加一個順序關聯,使得原本可以並行處理的指令必須序列處理
- 由於儲存單元採用一維線性來組織,資訊檢索速度有限,難以適應非數值資料的運算和儲存
- 計算機的工作過程
- 人工編制程式
- 機器執行程式
馮●諾依曼計算機體系結構
- 計算機體系結構作為一門學科,其研究內容主要有兩個方面
- 軟體和硬體功能分配或軟體與硬體介面的確定,即哪些功能由軟體完成,哪些功能由硬體完成
- 如何最佳最合理地實現分配硬體的功能
- 馮諾依曼體系
- 以運算器為中心,存在資料運算與資料輸入輸出序列進行的弊端,即當資料輸入輸出時,運算器不能進行資料運算
- 當運算器進行資料運算時,資料輸入輸出不能進行,從而導致功能部件的利用率低,計算機工作速度得不到有效提高
- 以儲存器為中心計算機的體系結構框架
- 具有層次計算機的體系結構框架
- 現代計算機的體系結構框架
計算機功能部件簡介
- 馮諾依曼體系結構的計算機分為運算器、儲存器、控制器、輸入裝置和輸出裝置
- 運算器是加工中心,用於資訊加工,即對資料進行算數運算和邏輯運算,又稱為執行部件,主要由算術邏輯運算單元、累加器和暫存器等組成
- 算數邏輯運算單元是具體完成算數與邏輯運算的部件,是運算器的核心
- 暫存器用於存放運算所需要的運算元,不同計算機的暫存器數量差異很大
- 累加器是特殊的暫存器,除用於存放運算運算元外,在連續運算中,還用於存放中間結果和最後結果,累加器也由此而得名
- 控制器是指揮中心,用於控制計算機各部件或期間自動協調地動作,主要由控制單元、程式計數器和指令暫存器等組成
- 控制器工作的實質是解釋程式,按程式中的指令序列,逐條地從存乎其中取出指令,經過分析譯碼,產生一組控制訊號【操作命令】,並把控制訊號發給各個部件或器件,控制各部件或器件的動作,使整機連續自動、有條不紊對資訊進行處理
- 控制單元是控制訊號的發源地,形成控制訊號的依據為指令編碼,機器狀態和時序訊號
- 程式計數器用來存放當前需要處理的指令地址,一旦利用當前程式計數器內容讀取了一條指令,則具有自動加1的功能
- 指令暫存器用來存放當前處理的指令,在指令處理期間,其內容不允許改變
- 儲存器是儲存中心,用來存放程式和資料,主要由儲存體、邏輯控制電路、資料域地址暫存器等組成
- 程式和資料在儲存器中都以二進位制形式來表示,統稱為資訊
- 儲存器由一定數量的儲存單元組成,一個儲存單元可儲存若干位二進位制數
- 單元地址:每個儲存單元對應一個固定不變的編號,二進位制編碼表示,是一一對應的關係
- 輸入輸出裝置
- 輸入裝置是將人們熟悉的資訊形式變換成計算機能接收並識別的資訊形式的裝置
- 輸出裝置是將計算機運算結果的二進位制資訊轉換成人們或其他裝置能接收和識別的資訊形式的裝置
- 輔助儲存器是計算機中重要的I/O裝置,既可以作為輸入裝置,也可以作為輸出裝置
- 細化的現代計算機組成結構框架
計算機實現與效能分類
- 計算機組成主要包括
- 功能部件內部結構及其並行性
- 附加部件或器件配置
- 部件互連及其技術引數的匹配
- 緩衝排隊技術或可靠性技術的選擇
- 資料通路寬度的確定
- 計算機實現:計算機組成的物理實現
- 有模組與地板等的劃分與連線
- 功能部件的物理結構
- 器件的物理效能
- 專用器件的設計
- 微組裝技術
- 製造技術與工藝
- 計算機組成實現層次
- 整體是由各部分分層組成實現的
- 計算機組成可分為系統、部件、器件、元件和物理五層
- 計算機中的部件一般有運算器、儲存器、控制器、介面和匯流排
- 計算機組成實現的層次
- 馮諾依曼體系結構的計算機由五大功能部件組成,功能部件之間需要通過傳輸線進行互連,為資訊互換奠定基礎
- 計算機功能部件之間的互連形式主要有共享匯流排型和專用傳輸線型等兩種
- 共享匯流排型又有單匯流排、雙匯流排、多匯流排之分
- 專用傳輸線型是指一組傳輸線僅能用於兩個功能部件進行資訊互換,該互連形式傳輸線繁多、互聯複雜、代價高、擴充套件性差、但資訊傳輸率高
- 單匯流排計算機的體系結構
- 計算機的效能一般採用一下三個指標來衡量
- 機器字長
- 主存容量
- 運算速度
- 機器字長:一次參與運算的二進位制的位數,又稱為基本字長,簡稱字長
- 機器字:一次參與運算的二進位制數稱為機器字
- 機器字長對計算機效能有三個方面的影響
- 運算精度:字長越長,運算精度越高,反之越低
- 資料表示範圍:字長越長,資料表示範圍越大,對付浮點格式,資料表示精度還可同時提高
- 運算速度:當資料字長大於基本字長時,需多次運算,從而降低了運算速度
- 主存容量:主存可以儲存的最大的二進位制位數
- 約定8位二進位制數為一個位元組,則主存容量通常以位元組為單位來計算
- 在主儲存器中,一個儲存單元所存放的二進位制位數稱為儲存字長,而存放的二進位制數稱為儲存字
- 儲存單元的數量稱為儲存字數
- 儲存容量=儲存字數*儲存字長
- 計算機的分類
- 按用途分類:通用計算機和專用計算機
- 通用計算機:適應多領域應用而設計的計算機
- 專用計算機是指為適應某種特殊應用而專門設計的計算機
- 規模效能分類:巨型計算機、大中型計算機、小型計算機、微型計算機、小巨型計算機、工作站和嵌入式計算機
- 巨型計算機是指運算速度達每秒億級以上浮點運算、主儲存容量百萬M位元組以上、字長32位以上、加個及其昂貴的計算機
- 大中型計算機是指運算速度每秒百或千萬級、主儲存容量百萬M位元組、字長32位以上、價格昂貴、指令豐富的計算機
- 小型計算機:效能與大中型計算機接近的小型計算機,價格適中、操作簡單、維護容易
- 微型計算機:面向個人或面向家庭的,結構緊湊、效能不高的計算機
- 小巨型計算機:巨型計算機縮小成個人計算機
- 工作站:介於微型計算機和小型計算機,用於特殊的專業領域
- 嵌入式計算機:作為某種裝置的一個部件,面向特定應用而設計開發的專用計算機
計算機系統及其軟體
- 計算機系統及其組成
- 計算機軟體的分類
- 系統軟體:用於對計算機軟硬體等資源進行管理、排程、見識和服務等的軟體集合,一般分為6類,作業系統,語言處理程式,標準庫程式,服務程式,資料庫管理軟體,網路軟體
- 作業系統:用於控制和管理計算機軟硬體等資源,自動排程使用者作業程式、處理各種中斷程式,為使用者提供友好使用介面的軟體
- 服務程式:擴充套件計算機硬體功能而配置的診斷程式、除錯程式
- 語言處理程式:將程式設計師編制的源程式翻譯成計算機硬體能直接識別執行的目標程式
- 標準庫程式:為方便使用者程式設計,預先按照標準格式編制的程式段集,使用者則可以選擇合適的程式段嵌入自己的程式中
- 資料庫管理軟體:使用者管理計算機系統中的資料檔案,以實現資料共享和高效檢索的軟體
- 網路軟體:用於對網路資源進行組織和管理,實現相互之間的通訊
- 應用軟體:使用者為解決某種應用問題而編制的程式
- 物理計算機與虛擬計算機
- 物理計算機:實際的計算機硬體
- 虛擬計算機:通過軟體擴充套件硬體功能的計算機
- 計算機系統的結構層次
- 計算機系統的結構層次
等級 |
基礎 |
描述 |
使用者 |
硬體邏輯級 |
機器指令譯碼 |
通過控制器形成微操作控制訊號序列,構建資料通路 |
邏輯設計者 |
機器語言級 |
指令系統 |
指令直接控制硬體裸機,完成使用者所需要的相對簡單的資訊處理 |
機器語言程式設計師 |
作業系統級 |
作業系統提供的外部輸入命令列 |
通過作業系統中一段程式進行解釋,通過硬體裸機,完成作業系統規定的相對簡單的資訊處理 |
作業系統操作員 |
組合語言級 |
組合語言 |
通過編寫組合語言程式,由彙編程式進行解釋,控制硬體邏輯,完成使用者所需要的相對簡單的資訊處理 |
組合語言程式設計師 |
高階語言級 |
高階語言 |
編寫高階語言程式,編譯軟體進行解釋,控制硬體裸機,完成使用者所需要的相對複雜的資訊處理 |
高階語言程式設計師 |
應用軟體級 |
應用軟體提供的外部輸入命令列 |
通過應用軟體中的一段程式進行解釋,控制硬體邏輯,完成應用軟體規定的極其複雜的資訊處理 |
應用軟體操作員 |