微算機原理與應用一書,使用x86與x64微處理器系列為例,期望建立讀者一個完整的微算機原理與相關的基本知識,進而能夠使用與設計各種微處理器系統。由淺入深將x86微處理器的指令分類,並且以豐富的程式實例,闡述每一個指令的動作與應用。相同的分類方法可以引用於學習其它微處理器。內容包含計算機結構與組合語言、CPU軟體模式、基本組合語言程式設計、組合語言程式設計、副程式與巨集指令、CPU硬體模式、記憶器元件與界面設計、中斷要求與處理、I/O基本結構與界面、浮點數與多媒體運算指令組、PC系統I/O裝置與界面。 微算機原理與應用一書可以當作微算機基本原理或是微算機原理與應用等課程的教科書,或是當作自我進修及實務上的參考用書。
目錄
第一章簡介1
1.1 微處理器與微算機1
1.1.1 個人計算機系統結構2
1.1.2 嵌入式微處理器系統5
1.1.3 PC 架構演進6
1.2 x86/x64 微處理器8
1.2.1 4/8 位元微處理器9
1.2.2 16 位元微處理器9
1.2.3 32 位元微處理器架構10
1.2.4 64 位元微處理器12
1.3 文數字碼與數碼14
1.3.1 文數字碼14
1.3.2 數碼16
1.4 數系轉換17
1.4.1 二進制數目系統17
1.4.2 十六進制數目系統21
1.5 二進制算術25
1.5.1 二進制的四則運算25
1.5.2 數目表示法27
1.5.3 2 補數算術運算28
1.6 浮點數算術30
1.6.1 浮點數表示方法31
1.6.2 浮點數的四則運算35
參考資料37
習題38
第二章計算機結構與組合語言41
2.1 計算機基本功能與原理41
2.1.1 基本程式設計觀念41
2.1.2 儲存程式計算機44
2.1.3 更詳細的微算機基本動作45
2.2 CPU 基本組織與動作46
2.2.1 RTL 語言46
2.2.2 簡化的x86 微處理器軟體模式48
2.2.3 一個簡化的x86 微處理器RTL 架構49
2.2.4 指令的執行50
2.2.5 基本的x86 組合語言指令54
2.3 組譯程式與組合語言程式56
2.3.1 基本組合語言程式例56
2.3.2 組合語言程式結構57
2.3.3 組合語言常數與運算子58
2.3.4 基本組譯程式假指令59
2.4 組合語言程式的建立與測試62
2.4.1 組合語言程式的建立與測試62
2.4.2 命令行(command line) 環境63
2.4.3 視窗(window) 環境67
2.4.4 64 位元組合語言程式的建立與除錯74
2.5 組譯程式與組譯程序77
2.5.1 組譯程式77
2.5.2 組譯程序與實例79
參考資料82
習題82
第三章CPU 軟體模式85
3.1 規劃模式85
3.1.1 通用暫存器85
3.1.2 節區暫存器88
3.1.3 狀態暫存器與指令指示器88
3.2 資料類型與記憶器組織90
3.2.1 資料格式與記憶器組織90
3.2.2 資料類型93
3.3 x86 實際位址的產生96
3.3.1 x86 微處理器記憶器管理概觀96
3.3.2 x86/x64 有效位址與實際位址轉換101
3.3.3 x86 微處理器的記憶器模式102
3.4 定址方式108
3.4.1 16 位元定址方式108
3.4.2 32 位元定址方式117
3.4.3 64 位元定址方式128
3.5 指令格式與編碼129
3.5.1 基本指令格式130
3.5.2 MOD R/M 位元組131
3.5.3 SIB 位元組133
3.5.4 REX 指令前標135
參考資料137
習題137
第四章基本組合語言程式設計141
4.1 定址方式與指令使用141
4.1.1 定址方式格式141
4.1.2 使用指令的基本概念144
4.2 資料轉移指令145
4.2.1 基本資料轉移指令146
4.2.2 節區暫存器相關指令154
4.2.3 其它資料轉移指令155
4.3 算術運算指令156
4.3.1 二進制算術運算157
4.3.2 單運算元指令165
4.3.3 乘法與除法運算166
4.3.4 併裝BCD 算術170
4.4 分歧(跳躍) 指令173
4.4.1 條件性分歧(跳躍) 指令173
4.4.2 無條件分歧(跳躍) 指令180
4.4.3 迴路指令182
參考資料186
習題186
第五章組合語言程式設計191
5.1 邏輯運算指令191
5.1.1 基本動作191
5.1.2 邏輯運算指令193
5.2 位元運算指令199
5.2.1 基本位元運算指令199
5.2.2 位元掃描運算指令205
5.3 移位與循環移位指令208
5.3.1 移位與循環移位指令基本動作208
5.3.2 移位與循環移位指令210
5.3.3 雙精確制移位指令214
5.4 符號擴展與其相關指令217
5.4.1 基本符號擴展指令217
5.4.2 特殊的符號擴展指令218
5.5 字元串運算指令220
5.5.1 基本字元串指令220
5.5.2 REP 前標與字元串指令224
5.6 CPU 控制與旗號位元指令229
5.6.1 CPU 控制指令230
5.6.2 旗號位元指令232
參考資料233
習題234
第六章副程式與巨集指令237
6.1 程式設計技巧238
6.1.1 模組化程式設計238
6.1.2 結構化程式設計239
6.1.3 結構化程式假指令242
6.2 程式的連結與外部變數252
6.2.1 程式的連結與重置位252
6.2.2 外部變數253
6.3 副程式255
6.3.1 堆疊255
6.3.2 副程式呼叫與歸回指令259
6.3.3 巢路副程式261
6.3.4 副程式參數傳遞方式263
6.3.5 可重入與遞迴副程式268
6.3.6 高階語言支援指令273
6.4 巨集指令274
6.4.1 巨集指令定義與擴展274
6.4.2 標記問題與局部標記279
6.4.3 巢路巨集指令281
6.4.4 其它相關假指令282
參考資料288
習題289
第七章CPU 硬體模式293
7.1 8086 硬體模式293
7.1.1 內部功能293
7.1.2 硬體界面295
7.1.3 基本時序(最小模式系統) 302
7.1.4 基本CPU 模組306
7.2 x86/x64 微處理器架構312
7.2.1 微處理器設計技術313
7.2.2 基本微處理器架構320
7.2.3 多核心基本微處理器架構324
7.3 PC 系統架構325
7.3.1 雙晶片組PC 系統架構326
7.3.2 單晶片組PC 系統架構329
7.3.3 輸入/輸出裝置330
參考資料335
習題336
第八章記憶器元件與界面設計337
8.1 CPU 與記憶器界接337
8.1.1 記憶器容量與語句寬度的擴充338
8.1.2 記憶器位址解碼原理339
8.1.3 位址解碼電路設計343
8.2 SRAM 350
8.2.1 商用SRAM 元件351
8.2.2 SRAM 與CPU 界接356
8.3 快閃記憶器360
8.3.1 商用快閃記憶器元件(28C 系列) 361
8.3.2 快閃記憶器元件與CPU 界接368
8.4 DRAM 371
8.4.1 非同步DRAM 元件371
8.4.2 DRAM 資料更新方法377
8.4.3 更新電路的設計策略379
8.4.4 同步DRAM 元件381
8.4.5 DDR SDRAM 383
參考資料386
習題387
第九章中斷要求與處理391
9.1 中斷要求與處理391
9.1.1 中斷的主要應用391
9.1.2 中斷要求類型392
9.1.3 CPU 對外部中斷要求的反應393
9.1.4 x86 微處理器的外部中斷要求394
9.1.5 x86 微處理器的中斷類型395
9.1.6 x86/x64 微處理器中斷轉移控制398
9.2 可規劃中斷要求控制器(82C59A) 401
9.2.1 硬體界面401
9.2.2 內部功能401
9.2.3 82C59A 與CPU 界接403
9.2.4 82C59A 的規劃404
9.2.5 82C59A 串接模式411
9.2.6 APIC 413
9.3 中斷服務程式414
9.3.1 鍵盤推動程式設計414
9.3.2 巢路中斷要求結構419
9.4 軟體中斷與例外處理420
9.4.1 軟體中斷420
9.4.2 例外425
參考資料427
習題428
第十章I/O 基本結構與界面431
10.1 I/O 基本結構431
10.1.1 I/O 裝置與界面電路432
10.1.2 輸入埠與輸出埠433
10.1.3 獨立式I/O 結構436
10.1.4 記憶器映成I/O 結構439
10.1.5 I/O 埠位址解碼442
10.2 I/O 資料轉移啟動方式447
10.2.1 I/O 資料轉移啟動方式448
10.2.2 輪呼式(程式) I/O 448
10.2.3 中斷I/O 449
10.2.4 直接記憶器存取(DMA) 450
10.3 並列資料轉移454
10.3.1 同步並列資料轉移455
10.3.2 閃脈控制方式455
10.3.3 交握式控制方式457
10.4 串列資料轉移461
10.4.1 基本概念462
10.4.2 非同步串列資料轉移464
10.4.3 同步串列資料轉移468
10.4.4 資訊錯誤的偵測與更正471
10.5 串列界面標準474
10.5.1 EIA-232 (RS-232) 界面標準475
10.5.2 I2C 匯流排界面標準478
10.5.3 SPI 界面480
10.5.4 PCIe 匯流排482
參考資料484
習題486
第十一章浮點數與多媒體運算指令組489
11.1 FPU 軟體模式489
11.1.1 內部功能與規劃模式490
11.1.2 資料類型494
11.1.3 指令格式498
11.2 基本指令組與程式設計499
11.2.1 資料轉移指令組499
11.2.2 加法與減法運算指令501
11.2.3 乘法與除法運算指令505
11.2.4 其它數學函數指令507
11.2.5 比較指令509
11.3 高等指令組與程式設計511
11.3.1 超越函數指令511
11.3.2 常數指令516
11.3.3 處理器控制指令517
11.4 SIMD 多媒體處理器520
11.4.1 多媒體處理器的演進520
11.4.2 規劃模式521
11.4.3 重疊算術與飽和算術523
參考資料525
習題525
第十二章PC 系統I/O 裝置與界面527
12.1 映像顯示系統527
12.1.1 文字模式顯示器527
12.1.2 界面卡與推動程式531
12.2 繪圖模式顯示器535
12.2.1 基本原理535
12.2.2 彩色繪圖模式538
12.2.3 GPU 542
12.2.4 顯示器種類與界面544
12.3 列表機界面549
12.3.1 列表機種類549
12.3.2 列表機界面550
12.3.3 PC 列表機界面552
12.4 輔助記憶器系統553
12.4.1 磁性記憶器基本原理554
12.4.2 軟式磁碟記憶器555
12.4.3 硬式磁碟記憶器559
12.4.4 固態硬碟561
12.4.5 光碟記憶器562
12.5 相關匯流排界面564
12.5.1 SATA 與eSATA 564
12.5.2 USB 566
參考資料568
習題569
附錄A 8086 微處理器電氣特性573
A.1 8086 微處理器電氣特性574
附錄B x86 微處理器與x87 FPU 指令表579
B.1 x86 微處理器指令表579
B.2 x87 FPU 指令表593
第一章簡介1
1.1 微處理器與微算機1
1.1.1 個人計算機系統結構2
1.1.2 嵌入式微處理器系統5
1.1.3 PC 架構演進6
1.2 x86/x64 微處理器8
1.2.1 4/8 位元微處理器9
1.2.2 16 位元微處理器9
1.2.3 32 位元微處理器架構10
1.2.4 64 位元微處理器12
1.3 文數字碼與數碼14
1.3.1 文數字碼14
1.3.2 數碼16
1.4 數系轉換17
1.4.1 二進制數目系統17
1.4.2 十六進制數目系統21
1.5 二進制算術25
1.5.1 二進制的四則運算25
1.5.2 數目表示法27
1.5.3 2 補數算術運算28
1.6 浮點數算術30
1.6.1 浮點數表示方法31
1.6.2 浮點數的四則運算35
參考資料37
...
購物須知
關於二手書說明:
商品建檔資料為新書及二手書共用,因是二手商品,實際狀況可能已與建檔資料有差異,購買二手書時,請務必檢視商品書況、備註說明及書況影片,收到商品將以書況影片內呈現為準。若有差異時僅可提供退貨處理,無法換貨或再補寄。
商品版權法律說明:
TAAZE 單純提供網路二手書託售平台予消費者,並不涉入書本作者與原出版商間之任何糾紛;敬請各界鑒察。
退換貨說明:
二手書籍商品享有10天的商品猶豫期(含例假日)。若您欲辦理退貨,請於取得該商品10日內寄回。
二手影音商品(例如CD、DVD等),恕不提供10天猶豫期退貨。
二手商品無法提供換貨服務,僅能辦理退貨。如須退貨,請保持該商品及其附件的完整性(包含書籍封底之TAAZE物流條碼)。若退回商品無法回復原狀者,可能影響退換貨權利之行使或須負擔部分費用。
訂購本商品前請務必詳閱
退換貨原則、
二手CD、DVD退換貨說明。