計算機發展歷程程序員
從 1946 年世界上第一臺電子數字計算機( ENIAC )問世以來,計算機的發展經歷了四代。數據庫
摩爾定律:當價格不變時,集成電路上可容納的晶體管數目,約每一個18個月便會增長一倍,性能也將提高一倍。編程
機器字長是指計算機進行一次整數運算所能處理的二進制數據位數。緩存
到目前爲止,計算機中全部信息仍以二進制方式表示的理由是由物理器件的性能決定。併發
機器語言是計算機惟一能夠直接執行的語言彙編語言用助記符編寫,以便記憶。性能
解釋程序的特色是翻譯一句執行一句,邊翻譯邊執行;由高級語言轉化爲彙編語言的過程稱爲編譯,把彙編語言源程序翻譯成機器語言程序的過程稱爲彙編。測試
計算機系統層次結構spa
硬件系統和軟件系統共同構成了一個完整的計算機系統。操作系統
馮·諾依曼體系:計算機硬件系統由運算器、存儲器、控制器、輸入設備和輸出設備5大部件組成。早期的馮·諾依曼機以運算器爲中心,現代計算機已發展爲以存儲器爲中心。翻譯
CPU 能直接訪問的存儲器是主存儲器。存儲體存放二進制信息,地址寄存器(MAR)存放訪存地址,通過地址譯碼後找到所選的存儲單元。數據寄存器(MDR)是主存和其餘部件的中介機構,用於暫存要從存儲器中讀或寫的信息,時序控制邏輯用於產生存儲器操做所需的各類時序信號。
MAR 用於尋址,其位數對應着存儲單元的個數,如 MAR 爲 10 位,則有210個存儲單元,記爲1K。MAR 長度與 PC 的長度相等。
MDR 位數和存儲字長相等,通常爲字節的二次冪的整數倍。
MAR 與 MDR 雖然是存儲器的一部分,但在現代 CPU 中倒是存在於 CPU 中的;高速緩存也存在於 CPU 中。
運算器的核心是算術邏輯單元(ALU)。運算器包含若干通用寄存器,用於暫存操做數和中間結果,如累加器(ACC)、乘商寄存器(MQ)、操做數寄存器(X)、變址寄存器(IX)、基址寄存器(BR)等,其中前3個寄存器是必須有的。
運算器內還有程序狀態寄存器(PSW),它保留各種運算指令或測試指令的結果的各種狀態信息,以表徵系統運行狀態。
控制器是計算機的指揮中心,由其「指揮」各部件自動協調地進行工做。控制器由程序計算器(PC)、指令寄存器(IR)、和控制單元(CU)組成。
PC 用來存放當前欲執行指令的地址,可自動加1以造成下一條指令地地址,它與主存的 MAR 之間有一條直接通路。
IR 用來存放當前指令,其內容來自主存的 MDR。指令中的操做碼 OP(IR) 送至 CU,用以分析指令併發出各類微操做指令序列;而地址碼 Ad(IR)送往 MAR,用以取操做數。
數據庫管理系統(DBMS)是位於用戶和操做系統之間的一層數據管理軟件,是系統軟件;而數據庫系統(DBS)是指計算機系統中引入數據庫後的系統,通常由數據庫、數據庫管理系統、數據庫管理員和應用系統構成。
計算機的工做過程分爲如下幾個步驟:
下面以取數指令(即將指令地址碼指示的存儲單元中的操做數取出後送至運算器的 ACC 中)爲例進行說明,其信息流程以下:
取指令:PC → MAR → M → MDR →IR
分析指令:OP(IR) → CU
執行指令:Ad(IR) → MAR → M → MDR → ACC
此外,每取完一條指令,還須爲取下一條指令作準備,造成下一條指令的地址,即(PC)+ 1 → PC。
(PC)指程序計數器 PC 中存放的內容。PC → MAR 應理解爲 (PC)→ MAR ,即程序計數器中的值通過數據通路送到 MAR ,也即表示數據通路時括號可省略(由於只是表示數據流經的途徑,而不強調數據自己的流動)但運算時括號不能省略。OP(IR):取操做碼,Ad(IR):取地址碼。
馮·諾依曼機的基本工做方式是控制流驅動方式。
雖然指令和數據都以二進制形式存放在存儲器中,但 CPU 能夠根據指令週期的不一樣階段來區分是指令仍是數據,一般在取指階段取出的是指令,在執行階段取出的是數據。
軟件和硬件在邏輯上具備等效性,硬件實現具備更高的執行速度,軟件實現具備更好的靈活性。
因爲解釋程序要邊翻譯成機器語言邊執行,所以通常速度較編譯程序慢。
寄存器的設置對彙編語言不透明,彙編程序員要對寄存器進行直接操做。IR、MAR、MDR 對各種程序員都是透明的。
相聯存儲器(TLB)既能夠按照地址尋址又能夠按內容(一般是某些字段)尋址,爲與傳統存儲器區別,又稱按內容尋址的存儲器。
計算機的性能指標
主存容量,是指主存儲器所能存儲信息的最大容量,一般以字節來衡量,也能夠用字數 * 字長來表示存儲容量。其中,MAR 的位數反應存儲單元的個數,MAR 的位數反應可尋址範圍的最大值(而不必定是實際存儲器的存儲容量)。
例如,MAR 爲16位,表示216 = 65536,即存儲器體內有65536個存儲單元(可稱爲 64K 內存),若 MDR 爲32位,表示存儲容量爲 64K * 32 位(bit)。
運算速度
將程序固定在 ROM 中組成的部件稱爲固件。
當前設計高性能計算機的重要技術途徑是採用並行處理技術。
以上內容均來自王道書籍及相關課程等