本書內容包括:計算機系統引論,計算機中信息的表示與運算,處理器,控制器,總線技術等。
目前計算機的發展已經進入“后PC”時代,移動互聯網、物聯網、智能手機的快速發展,不僅改變了計算機的形態,而且提高了對計算機相關專業學生的知識結構和能力水平的要求。培養計算機相關專業學生對計算機系統的全面認知與設計開發能力已經成為國際計算機教育領域的普遍共識。
通過本書的學習,讀者不僅可以了解計算機硬件以及核心軟件操作系統的工作原理和協同技術,而且可以掌握匯編語言程序設計的基本方法,對計算機系統有全面的認知,初步具備計算機系統的設計開發能力和解決問題的能力,建立起計算思維和創新意識。
本書內容新穎、全面,實用性強。它的特點是:
①內容全面,深度適宜,與技術發展保持同步。
本書涵蓋了計算機組成原理、操作系統和匯編語言程序設計三門課程的全部內容,介紹了Unicode字符集、多核處理器和鐵電存儲器等前沿技術。事實上,本書還覆蓋了截至2014年10月的計算機技術的最新成果。
②通過全面認識計算機系統,培養學生的計算思維和創新意識,提高他們解決問題的能力。
前言
第1章 計算機系統引論1
1.1 計算機系統概論1
1.1.1 計算機系統中的硬件和軟件1
1.1.2 馮·諾依曼計算機模型3
1.1.3 計算機硬件的基本組成5
1.1.4 計算機的體系結構、組成與實現6
1.1.5 操作系統與計算機系統的層次結構9
1.2 計算機的發展歷程12
1.3 計算機系統的分類17
1.3.1 概述 17
1.3.2 弗林分類法18
1.4 計算機的性能評價指標19
1.5 微處理器與微型計算機25
1.5.1 微處理器與微型計算機的產生與發展25
1.5.2 多核處理器28
1.6 中國計算機事業的發展歷程30
1.7 計算機的應用及發展趨勢32
1.7.1 計算機的應用32
1.7.2 計算機發展的動力36
1.7.3 計算機的發展趨勢37
第2章 計算機中信息的表示與運算40
2.1 數據的表示40
2.1.1 定點數的表示40
2.1.2 浮點數的表示44
2.2 定點數的運算50
2.2.1 邏輯運算50
2.2.2 移位運算51
2.2.3 加法與減法運算53
2.2.4乘法運算57
2.2.5除法運算63
2.2.6算術邏輯單元67
2.3浮點數的運算71
2.3.1浮點數加、減運算71
2.3.2浮點數乘、除運算74
2.4面向錯誤檢測與糾錯的數據編碼74
2.5字符與字符串79
2.6面向存儲與傳輸的數據編碼83
第3章處理器87
3.1處理器的指令集87
3.1.1概述87
3.1.2指令的操作碼與操作數88
3.1.3 尋址方式89
3.1.4指令的基本功能與指令集設計93
3.1.5指令的格式98
3.1.6面向多媒體處理的增強指令101
3.2處理器的組成與工作過程103
3.2.1處理器的基本功能和基本組成103
3.2.2 計算機的工作過程107
3.2.3采用流水線技術的處理器108
3.3從CISC到RISC114
3.3.1RISC產生的背景114
3.3.2RISC的定義116
3.3.3 指令級并行技術117
3.4Intel 80x86系列微處理器125
3.4.1Intel 8086/8088 微處理器125
3.4.2Intel 80286、80386和80486
微處理器133
3.4.3 Intel Pentium系列微處理器136
3.5ARM系列微處理器139
3.5.1 概述 139
3.5.2ARM微處理器的模式、工作
狀態和寄存器組織140
3.5.3ARM微處理器的存儲器組織
和尋址方式143
3.5.4ARM微處理器的指令集146
第4章控制器153
4.1概述153
4.2硬布線控制器158
4.3微程序控制器161
第5章總線技術167
5.1 概述 167
5.2 總線的設計與實現170
5.3總線控制173
5.3.1總線仲裁173
5.3.2總線通信控制177
5.4 總線的性能指標180
5.5 總線標準183
5.5.1微型計算機的系統總線標準183
5.5.2 微型計算機的局部總線標準186
5.5.3 I/O總線標準舉例187
第6章 存儲系統190
6.1 存儲器的分類與性能評價190
6.1.1 存儲器的分類190
6.1.2 存儲器的性能評價190
6.2 存儲器訪問的局部性原理與層次
結構的存儲系統191
6.2.1 存儲器訪問的局部性原理191
6.2.2 層次結構的存儲系統191
6.3 半導體存儲器193
6.3.1 隨機訪問半導體存儲器193
6.3.2 只讀存儲器200
6.4 主存儲器203
6.4.1 主存儲器的組成203
6.4.2 提高主存儲器訪問帶寬的方法206
6.4.3Pentium微處理器的主存儲器
組成209
6.4.4存儲芯片的發展210
6.5 高速緩沖存儲器213
6.5.1 Cache的工作原理213
6.5.2地址映像與變換216
6.5.3 替換算法221
6.5.4 寫入策略223
6.5.5 兩級Cache與分裂型Cache224
6.5.6 Cache的性能評價224
第7章 8086/8088匯編語言程序設計228
7.1 引言228
7.1.1匯編語言的基本概念與學習
匯編語言的重要性228
7.1.28086/8088匯編語言的
基本語法229
7.2 順序程序設計233
7.2.1概述233
7.2.2尋址方式的表示234
7.2.3表達式的使用236
7.2.4 屬性取代符238
7.2.5 屬性分離符/數值回送操作符239
7.2.6運算符的優先級241
7.2.7 乘除法運算的實現241
7.2.8 算術移位和邏輯移位243
7.3 分支結構程序設計244
7.4循環結構程序設計247
7.5 字符串操作程序設計254
7.6宏、條件匯編與重復匯編257
7.7 子程序設計263
7.8 8086/8088微處理器的其他指令
與應用270
第8章計算機的外部設備274
8.1 輸入設備274
8.1.1 鍵盤274
8.1.2 鼠標276
8.2 輸出設備277
8.2.1 陰極射線管顯示器277
8.2.2 平板顯示器282
8.2.3 打印機283
8.3 輔存設備285
8.3.1 硬盤285
8.3.2 光盤288
8.3.3 U盤和固態硬盤289
第9章 I/O接口291
9.1 I/O技術的發展291
9.2 I/O接口的組成與工作原理293
9.3 中斷系統297
9.3.1 中斷的處理過程297
9.3.2中斷屏蔽300
9.3.3 中斷控制器8259A302
9.3.4 8086/8088微處理器的中斷
系統304
9.4 DMA技術306
9.5 通道技術309
第10章 操作系統概述311
10.1 操作系統的概念、特征、功能和
提供的服務311
10.1.1 操作系統的概念311
10.1.2 操作系統的特征312
10.1.3 操作系統的功能313
10.1.4 操作系統提供的服務313
10.2 操作系統的發展與分類314
10.2.1 操作系統的發展314
10.2.2 操作系統的分類317
10.3 操作系統的運行環境318
10.3.1 內核態與用戶態318
10.3.2 中斷與異常318
10.3.3 系統調用318
10.3.4 操作系統的啟動過程319
10.4 現代操作系統的新發展320
第11章 I/O管理321
11.1 概述321
11.2 I/O核心子系統324
11.2.1 I/O調度324
11.2.2 高速緩存與緩沖區325
11.2.3 設備分配與回收325
11.2.4 假脫機技術326
11.2.5 I/O出錯處理327
第12章 文件管理328
12.1 文件系統基礎328
12.1.1 文件概念328
12.1.2 文件的邏輯結構329
12.1.3 目錄結構330
12.1.4 文件共享332
12.1.5 文件的訪問控制333
12.2 文件系統的實現335
12.2.1 文件系統的層次結構335
12.2.2 目錄的實現336
12.2.3 文件的實現336
12.3 磁盤組織與管理340
12.3.1 磁盤的組織340
12.3.2 磁盤調度算法341
12.3.3 磁盤中物理塊的優化分布342
12.3.4 磁盤的錯誤處理343
第13章 進程管理與處理器調度345
13.1 進程的狀態與轉換345
13.2 進程的組織與控制347
13.2.1 進程組織347
13.2.2 進程控制348
13.3 進程的同步與互斥351
13.4 進程間通信362
13.5 死鎖及其處理363
13.6 處理器調度366
13.7 線程的概念與多線程模型370
第14章 內存管理與虛擬存儲器373
14.1 內存管理基礎373
14.2 連續分配的內存管理375
14.3 非連續分配的內存管理378
14.3.1 段式存儲管理378
14.3.2 頁式存儲管理379
14.3.3 段頁式存儲管理381
14.4 虛擬存儲器382
14.5 頁面替換與頁面分配386
14.5.1 頁面替換386
14.5.2 頁面分配387
14.6 Cache與虛擬存儲器的協同390
附錄394
附錄A 圖靈機模型394
附錄B 圖靈獎歷年獲得者394
附錄C 數制及其轉換397
附錄D EBCDIC碼400
附錄E 8086/8088指令格式401
附錄F 相聯存儲器402
參考文獻404