圖書簡介
本書共分12章。第1章~第10章主要論述計算機的基本組成原理和結構,內容包括數制和碼制,基本邏輯部件,構成計算機系統的中央處理器(CPU)、存儲器系統以及輸入輸出(I/O)系統等。第11章討論了計算機系統和基於網際網路的套用。第12章介紹了計算機硬體技術的發展及其實施基礎。
本書可作為理工科大學生學習“計算機組成與結構”課程或“計算機組成原理”課程的教材,也可供計算機研發和套用領域的工程技術人員參考。
圖書目錄
第1章 計算機系統概論1
1.1 計算機的誕生和發展1
1.2 計算機的硬體3
1.3 計算機的軟體6
1.4 計算機網路基礎8
習題11
第2章 計算機的邏輯部件12
2.1 計算機中常用的組合邏輯電路12
2.1.1 三態電路12
2.1.2 異或門及其套用13
2.1.3 加法器14
2.1.4 解碼器18
2.1.5 數據選擇器18
2.2 時序邏輯電路19
2.2.1 觸發器19
2.2.2 暫存器和移位暫存器21
2.2.3 計數器21
2.3 陣列邏輯電路22
2.3.1 唯讀存儲器(ROM)23
2.3.2 可程式序邏輯陣列(PLA)24
2.3.3 可程式序陣列邏輯(PAL)26
2.3.4 通用陣列邏輯(GAL)28
2.3.5 門陣列(GA)、宏單元陣列(MCA)和標準單元陣列(SCA)28
2.3.6 現場可程式序門陣列(FPGA)30
習題30
第3章 運算方法和運算部件32
3.1 數據的表示方法和轉換32
3.1.1 數值型數據的表示和轉換32
3.1.2 十進制數的編碼與運算35
3.2 帶符號的二進制數據在計算機中的表示方法及加減法運算36
3.2.1 原碼、補碼、反碼及其加減法運算36
3.2.2 加減法運算的溢出處理41
3.2.3 定點數和浮點數42
3.3 二進制乘法運算44
3.3.1 定點數一位乘法44
3.3.2 定點數二位乘法48
3.3.3 陣列乘法器50
3.4 二進制除法運算50
3.4.1 定點除法運算50
3.4.2 提高除法運算速度的方法舉例52
3.5 浮點數的運算方法54
3.5.1 浮點數的加減法運算54
3.5.2 浮點數的乘除法運算56
3.6 運算部件59
3.7 數據校驗碼60
3.7.1 奇偶校驗碼61
3.7.2 海明校驗碼62
3.7.3 循環冗餘校驗(CRC)碼64
習題67
第4章 主存儲器70
4.1 主存儲器分類、技術指標和基本操作70
4.2 讀/寫存儲器71
4.3 非易失性半導體存儲器79
4.4 存儲器的組成與控制81
4.5 多體交叉存儲器84
習題86
第5章 指令系統88
5.1 指令系統的發展88
5.2 指令格式89
5.2.1 指令格式89
5.2.2 指令操作碼的擴展技術90
5.2.3 指令長度與數據字長的關係92
5.3 定址方式93
5.4 指令類型96
5.4.1 指令的分類及功能96
5.4.2 雙字長運算(子程式舉例)103
5.4.3 指令系統的兼容性103
5.5 精簡指令系統計算機(RISC)和複雜指令系統計算機(CISC)104
5.5.1 CISC的特點104
5.5.2 RISC的產生與發展104
5.5.3 RISC的特點104
5.6 指令系統舉例105
5.6.1 SPARC的指令系統105
5.6.2 Pentium微處理器指令系統108
5.7 機器語言、彙編語言和高級語言111
習題112
第6章 中央處理器114
6.1 控制器的組成114
6.1.1 控制器的功能114
6.1.2 控制器的組成115
6.1.3 指令執行過程(運算器與控制器配合)117
6.2 微程式控制計算機的基本工作原理121
6.2.1 微程式控制的基本概念121
6.2.2 實現微程式控制的基本原理121
6.3 微程式設計技術130
6.3.1 微指令控制欄位的編譯法130
6.3.2 微程式流的控制132
6.3.3 微指令格式134
6.3.4 微程式控制存儲器和動態微程式設計135
6.3.5 微程式設計語言138
6.4 硬布線控制的計算機139
6.4.1 時序與節拍139
6.4.2 操作控制信號的產生141
6.4.3 硬布線控制器的組成143
6.4.4 硬布線控制邏輯設計中的若干問題144
6.4.5 控制器的控制方式146
6.5 流水線工作原理147
6.6 CPU舉例150
6.6.1 RISC的CPU150
6.6.2 Pentium微處理器158
6.7 計算機的供電159
習題161
第7章 存儲系統165
7.1 存儲系統的層次結構165
7.2 高速緩衝存儲器(cache)166
7.2.1 cache工作原理166
7.2.2 cache組織167
7.2.3 多層次cache170
7.3 虛擬存儲器171
7.3.1 主存-輔存層次信息傳送單位和存儲管理171
7.3.2 頁式虛擬存儲器172
7.3.3 段頁式虛擬存儲器174
7.3.4 虛擬存儲器工作的全過程175
7.3.5 存儲管理部件(MMU)177
7.4 相聯存儲器177
7.5 存儲保護178
習題179
第8章 輔助存儲器182
8.1 磁表面存儲器的種類與技術指標182
8.2 磁記錄原理與記錄方式183
8.2.1 磁記錄原理183
8.2.2 磁記錄介質與磁頭185
8.2.3 磁記錄方式187
8.3 磁碟存儲器191
8.3.1 磁碟存儲器的種類及基本結構191
8.3.2 硬磁碟驅動器(HDD)及硬磁碟控制器(HDC)191
8.3.3 磁碟cache194
8.3.4 磁碟陣列存儲器195
8.4 磁帶存儲器196
8.4.1 磁帶機的結構196
8.4.2 循環冗餘校驗碼(CRC)198
8.4.3 磁帶機的進展情況200
8.5 光碟存儲器201
8.5.1 光碟存儲器種類201
8.5.2 光碟存儲器的組成和讀寫原理202
8.6 固態盤203
習題204
第9章 輸入輸出(I/O)設備206
9.1 外部設備概述206
9.2 輸入設備206
9.2.1 鍵盤206
9.2.2 光筆、圖形板和畫筆(或遊動標)輸入208
9.2.3 滑鼠、跟蹤球和操作桿輸入208
9.2.4 觸控螢幕209
9.2.5 圖像輸入設備(攝像機、攝像頭和數位相機)209
9.2.6 條形碼210
9.2.7 光學字元識別(OCR)技術和語音文字輸入系統210
9.3 輸出設備--顯示器212
9.3.1 顯示技術中的有關術語212
9.3.2 顯示設備種類214
9.3.3 圖形和圖像顯示217
9.4 輸出設備--印表機217
9.4.1 點陣針式印表機218
9.4.2 雷射印表機219
9.4.3 噴墨印表機221
9.4.4 熱轉印打字機223
9.4.5 印表機的發展趨勢223
9.5 漢字處理技術224
9.5.1 漢字編碼標準224
9.5.2 漢字的輸入方法224
9.5.3 漢字的存儲226
9.5.4 漢字的輸出226
習題227
第10章 輸入輸出(I/?O)系統229
10.1 輸入輸出(I/O)系統概述229
10.1.1 輸入輸出設備的編址及設備控制器的基本功能229
10.1.2 I/O設備數據傳送控制方式230
10.2 程式中斷輸入輸出方式231
10.2.1 中斷的作用、產生和回響231
10.2.2 中斷處理233
10.2.3 程式中斷設備接口的組成和工作原理236
10.3 DMA輸入輸出方式237
10.3.1 DMA的3種工作方式238
10.3.2 DMA控制器組成238
10.3.3 DMA的數據傳送過程239
10.4 I/O通道控制方式240
10.5 匯流排結構241
10.5.1 匯流排類型242
10.5.2 匯流排組成242
10.5.3 微機匯流排244
10.6 外設接口248
10.6.1 ATA (IDE)和SATA接口248
10.6.2 SCSI、SAS和iSCSI接口250
10.6.3 光纖通道和InfiniBand253
10.6.4 PCMCIA254
10.6.5 串列通信接口USB和IEEE 1394254
10.6.6 Pentium處理器外圍接口(晶片組)介紹256
10.7 網路存儲--SAN和NAS257
習題259
第11章 計算機系統和基於網際網路的套用262
11.1 作業系統262
11.1.1 管理計算機系統中的硬體資源262
11.1.2 支持應用程式和人機對話264
11.2 計算機網路264
11.2.1 網際網路(Internet)層次結構264
11.2.2 網路作業系統265
11.2.3 實現計算機網路的硬體與技術266
11.2.4 Internet的套用269
11.3 客戶機/伺服器結構和瀏覽器/伺服器結構270
11.4 物聯網272
11.5 數據中心273
11.6 雲計算274
11.6.1 基本概念274
11.6.2 雲種類276
11.6.3 雲計算關鍵技術276
習題277
第12章 計算機系統硬體技術的發展及其實施基礎279
12.1 計算機系統的性能評測279
12.2 微機和微處理器的普及和發展281
12.2.1 微機和微處理器281
12.2.2 嵌入式計算機和片上系統287
12.2.3 智慧卡和射頻識別(RFID)標籤289
12.3 提高計算機系統性能的措施與實現291
12.3.1 伺服器的結構291
12.3.2 超級標量處理機、超級流水線處理機和超長指令字處理機293
12.3.3 向量處理機296
12.3.4 多處理機系統297
12.4 計算機硬體設計和實現導論301
12.4.1 計算機硬體的總體設計301
12.4.2 積體電路設計過程和VHDL304
12.4.3 電子設計自動化(EDA)308
習題312
習題答案314
參考文獻3291.1 計算機的誕生和發展1
1.2 計算機的硬體3
1.3 計算機的軟體6
1.4 計算機網路基礎7
習題10
第2章 計算機的邏輯部件11
2.1 計算機中常用的組合邏輯電路11
2.1.1 三態電路11
2.1.2 異或門及其套用12
2.1.3 加法器13
2.1.4 解碼器17
2.1.5 數據選擇器17
2.2 時序邏輯電路18
2.2.1 觸發器18
2.2.2 暫存器和移位暫存器20
2.2.3 計數器20
2.3 陣列邏輯電路21
2.3.1 唯讀存儲器(ROM)22
2.3.2 可程式序邏輯陣列(PLA)23
2.3.3 可程式序陣列邏輯(PAL)25
2.3.4 通用陣列邏輯(GAL)27
2.3.5 門陣列(GA)、宏單元陣列(MCA)和標準單元陣列(SCA)27
2.3.6 現場可程式序門陣列(FPGA)29
習題29
第3章 運算方法和運算部件31
3.1 數據的表示方法和轉換31
3.1.1 數值型數據的表示和轉換31
3.1.2 十進制數的編碼與運算34
3.2 帶符號的二進制數據在計算機中的表示方法及加減法運算35
3.2.1 原碼、補碼、反碼及其加減法運算35
3.2.2 加減法運算的溢出處理40
3.2.3 定點數和浮點數41
3.3 二進制乘法運算43
3.3.1 定點數一位乘法43
3.3.2 定點數二位乘法47
3.3.3 陣列乘法器49
3.4 二進制除法運算49
3.4.1 定點除法運算49
3.4.2 提高除法運算速度的方法舉例51
3.5 浮點數的運算方法53
3.5.1 浮點數的加減法運算53
3.5.2 浮點數的乘除法運算55
3.6 運算部件58
3.7 數據校驗碼59
3.7.1 奇偶校驗碼60
3.7.2 海明校驗碼61
習題66
第4章 主存儲器69
4.1 主存儲器分類、技術指標和基本操作69
4.2 讀/?寫存儲器70
4.3 非易失性半導體存儲器78
4.4 存儲器的組成與控制80
4.5 多體交叉存儲器83
習題85
第5章 指令系統87
5.1 指令系統的發展87
5.2 指令格式88
5.2.1 指令格式88
5.2.2 指令操作碼的擴展技術89
5.2.3 指令長度與數據字長的關係91
5.3 定址方式92
5.4 指令類型95
5.4.1 指令的分類及功能95
5.4.2 雙字長運算(子程式舉例)102
5.4.3 指令系統的兼容性102
5.5 精簡指令系統計算機(RISC)和複雜指令系統計算機(CISC)103
5.5.1 CISC的特點103
5.5.2 RISC的產生與發展103
5.5.3 RISC的特點103
5.6 指令系統舉例104
5.6.1 SPARC的指令系統104
5.6.2 Pentium微處理器指令系統107
5.7 機器語言、彙編語言和高級語言110
習題111
第6章 中央處理器113
6.1 控制器的組成113
6.1.1 控制器的功能113
6.1.2 控制器的組成114
6.1.3 指令執行過程(運算器與控制器配合)116
6.2 微程式控制計算機的基本工作原理120
6.2.1 微程式控制的基本概念120
6.2.2 實現微程式控制的基本原理120
6.3 微程式設計技術129
6.3.1 微指令控制欄位的編譯法129
6.3.2 微程式流的控制131
6.3.3 微指令格式133
6.3.4 微程式控制存儲器和動態微程式設計134
6.3.5 微程式設計語言137
6.4 硬布線控制的計算機138
6.4.1 時序與節拍138
6.4.2 操作控制信號的產生140
6.4.3 硬布線控制器的組成142
6.4.4 硬布線控制邏輯設計中的若干問題143
6.4.5 控制器的控制方式145
6.5 流水線工作原理146
6.6 CPU舉例149
6.6.1 RISC的CPU149
6.6.2 Pentium微處理器157
6.7 計算機的供電158
習題160
第7章 存儲系統164
7.1 存儲系統的層次結構164
7.2 高速緩衝存儲器(cache)165
7.2.1 cache工作原理165
7.2.2 cache組織166
7.2.3 多層次cache169
7.3 虛擬存儲器170
7.3.1 主存-輔存層次信息傳送單位和存儲管理170
7.3.2 頁式虛擬存儲器171
7.3.3 段頁式虛擬存儲器173
7.3.4 虛擬存儲器工作的全過程174
7.3.5 存儲管理部件(MMU)176
7.4 相聯存儲器176
7.5 存儲保護176
習題177
第8章 輔助存儲器179
8.1 磁表面存儲器的種類與技術指標179
8.2 磁記錄原理與記錄方式180
8.2.1 磁記錄原理180
8.2.2 磁記錄介質與磁頭182
8.2.3 磁記錄方式184
8.3 磁碟存儲器188
8.3.1 磁碟存儲器的種類及基本結構188
8.3.2 硬磁碟驅動器(HDD)及硬磁碟控制器(HDC)188
8.3.3 磁碟cache191
8.3.4 磁碟陣列存儲器192
8.4 磁帶存儲器193
8.4.1 磁帶機的結構193
8.4.2 循環冗餘校驗碼(CRC)195
8.4.3 數據流磁帶機的進展情況197
8.5 光碟存儲器198
8.5.1 光碟存儲器種類198
8.5.2 光碟存儲器的組成和讀寫原理199
8.6 固態盤200
習題200
第9章 輸入輸出(I/O)設備202
9.1 外部設備概述202
9.2 輸入設備202
9.2.1 鍵盤202
9.2.2 光筆、圖形板和畫筆(或遊動標)輸入204
9.2.3 滑鼠、跟蹤球和操作桿輸入204
9.2.4 觸控螢幕205
9.2.5 圖像輸入設備(攝像機、攝像頭和數位相機)205
9.2.6 條形碼206
9.2.7 光學字元識別(OCR)技術和語音文字輸入系統206
9.3 輸出設備--顯示器208
9.3.1 顯示技術中的有關術語208
9.3.2 顯示設備種類210
9.3.3 圖形和圖像顯示212
9.4 輸出設備--印表機213
9.4.1 點陣針式印表機213
9.4.2 雷射印表機214
9.4.3 噴墨印表機216
9.4.4 熱轉印打字機218
9.4.5 印表機的發展趨勢219
9.5 漢字處理技術219
9.5.1 漢字編碼標準219
9.5.2 漢字的輸入方法220
9.5.3 漢字的存儲221
9.5.4 漢字的輸出222
習題222
第10章 輸入輸出(I/?O)系統224
10.1 輸入輸出(I/O)系統概述224
10.1.1 輸入輸出設備的編址及設備控制器的基本功能224
10.1.2 I/O設備數據傳送控制方式225
10.2 程式中斷輸入輸出方式226
10.2.1 中斷的作用、產生和回響226
10.2.2 中斷處理228
10.2.3 程式中斷設備接口的組成和工作原理23
10.3 DMA輸入輸出方式232
10.3.1 DMA的3種工作方式233
10.3.2 DMA控制器組成233
10.3.3 DMA的數據傳送過程234
10.4 I/O通道控制方式235
10.5 匯流排結構236
10.5.1 匯流排類型237
10.5.2 匯流排組成237
10.5.3 微機匯流排239
10.6 外設接口243
10.6.1 ATA (IDE)和SATA接口243
10.6.2 SCSI、SAS和iSCSI接口245
10.6.3 光纖通道和InfiniBand248
10.6.4 PCMCIA249
10.6.5 串列通信接口USB和IEEE 1394249
10.6.6 Pentium處理器外圍接口(晶片組)介紹251
10.7 網路存儲--SAN和NAS252
習題254
第11章 計算機系統和基於網際網路的套用257
11.1 作業系統257
11.1.1 管理計算機系統中的硬體資源257
11.1.2 支持應用程式和人機對話259
11.2 計算機網路259
11.2.1 網際網路(Internet)層次結構259
11.2.2 網路作業系統260
11.2.3 實現計算機網路的硬體與技術261
11.2.4 Internet的套用264
11.3 客戶機/?伺服器結構和瀏覽器/?伺服器結構265
11.4 物聯網267
11.5 數據中心268
11.6 雲計算269
11.6.1 基本概念269
11.6.2 雲種類270
11.6.3 雲計算關鍵技術271
習題272
第12章 計算機系統硬體技術的發展及其實施基礎274
12.1 計算機系統的性能評測274
12.2 微機和微處理器的普及和發展276
12.2.1 微機和微處理器276
12.2.2 嵌入式計算機和片上系統281
12.2.3 智慧卡和射頻識別(RFID)標籤283
12.3 提高計算機系統性能的措施與實現286
12.3.1 伺服器的結構286
12.3.2 超級標量處理機、超級流水線處理機和超長指令字處理機287
12.3.3 向量處理機290
12.3.4 多處理機系統291
12.4 計算機硬體設計和實現導論295
12.4.1 計算機硬體的總體設計296
12.4.2 積體電路設計過程和VHDL298
12.4.3 電子設計自動化(EDA)301
習題304
習題答案306
參考文獻321
圖書前言
本書的第1章對計算機系統進行了綜述,第2章~第10章著重闡述構成一台計算機的基本原理。由於計算機技術發展很快,某些觀點會隨著計算機的發展而產生變化,因此希望讀者著重於基本原理的理解。例如,對於計算機的各個功能部件,應著重了解它們在整機中的作用以及由此而分配給各部件所要完成的任務,從而正確設計或選用硬體,而不致被眾多的、風格各異的計算機結構及組成所迷惑。根據摩爾定律,半導體晶片的集成度每隔18個月翻一番,計算機的功能和性能也隨之提高,由此可理解計算機技術的發展是必然的。這就可以說明為什麼過去僅在大型機中才採用的流水線組織、並行處理、cache和虛擬存儲器等技術可以移到微處理器晶片中去實現。隨著網際網路(Internet)的發展,計算機和網路已融為一體,對計算機的結構影響很大;更由於作業系統與硬體、網路和套用關係密切,因此在第11章中介紹了作業系統和計算機網路的基本概念,為後續課程的學習起引導作用。
第12章講述了計算機硬體技術的發展及其實施基礎,強調了計算機向高性能和普及套用方向發展的實現與採取的技術措施。目前計算機的硬體設計已深入到微電子領域,作為計算機、自動化、微電子和電子類其他專業的學生,今後會有一部分人從事硬體設計工作。因此在本章中介紹一些基礎知識。
本書的第1版經過當時的清華大學計算機系“計算機原理”教學小組討論、參與和試用。後來因計算機科技的發展以及進一步提高教學質量等原因,對本書進行了多次重大的修改、調整和補充。在本書第4版中,第2章和第12章的部分內容(硬體描述語言)由王爾乾編寫,蔡月茹提供了一部分習題和答案。在第5版中,第11章由楊蔚明編寫,楊健、葉郁和楊蔚明提供了與當前計算技術和套用相關的資料。王愛英對全書進行了修改和整理。在此向所有為本書的出版付出勞動的老師和同事們表示感謝。
最後向使用本書作為教材的老師和同學們以及廣大的讀者表示感謝,正是依靠你們,本書的作用才得以發揮。編 者2012年5月