本書是計(jì)算機(jī)組成的入門級(jí)教程,全面地介紹了計(jì)算機(jī)組成結(jié)構(gòu)、操作、性能的基本概念,還介紹了有關(guān)外圍設(shè)備、處理器系列模型以及嵌入式系統(tǒng)的一些主要內(nèi)容。書中知識(shí)具有很強(qiáng)的實(shí)用性,并涵蓋了當(dāng)今許多先進(jìn)的技術(shù)和設(shè)計(jì)思想。
本書特別適合作為電子和計(jì)算機(jī)專業(yè)的本科生關(guān)于計(jì)算機(jī)組成與嵌入式系統(tǒng)方面的入門教材。
作者簡介
第1章 計(jì)算機(jī)的基本結(jié)構(gòu)
1.1 計(jì)算機(jī)的類型
1.2 功能部件
1.2.1 輸入設(shè)備
1.2.2 存儲(chǔ)器
1.2.3 運(yùn)算器
1.2.4 輸出設(shè)備
1.2.5 控制器
1.3 基本操作概念
1.4 數(shù)的表示及算術(shù)運(yùn)算
Computer Organization and Embedded Systems, Sixth Edition
出版者的話
譯者序
前言
作者簡介
第1章 計(jì)算機(jī)的基本結(jié)構(gòu)
1.1 計(jì)算機(jī)的類型
1.2 功能部件
1.2.1 輸入設(shè)備
1.2.2 存儲(chǔ)器
1.2.3 運(yùn)算器
1.2.4 輸出設(shè)備
1.2.5 控制器
1.3 基本操作概念
1.4 數(shù)的表示及算術(shù)運(yùn)算
1.4.1 整數(shù)
1.4.2 浮點(diǎn)數(shù)
1.5 字符表示
1.6 性能
1.6.1 技術(shù)
1.6.2 并行性
1.7 發(fā)展歷程
1.7.1 第一代計(jì)算機(jī)
1.7.2 第二代計(jì)算機(jī)
1.7.3 第三代計(jì)算機(jī)
1.7.4 第四代計(jì)算機(jī)
1.8 結(jié)束語
1.9 問題解析
習(xí)題
參考文獻(xiàn)
第2章 指令集體系結(jié)構(gòu)
2.1 存儲(chǔ)單元和地址
2.1.1 按字節(jié)尋址能力
2.1.2 大端和小端分配
2.1.3 字的對(duì)齊
2.1.4 訪問數(shù)和字符
2.2 存儲(chǔ)器操作
2.3 指令和指令序列
2.3.1 寄存器傳送標(biāo)記
2.3.2 匯編語言符號(hào)
2.3.3 RISC和CISC指令集
2.3.4 RISC指令集介紹
2.3.5 指令執(zhí)行和線性序列
2.3.6 轉(zhuǎn)移
2.3.7 生成存儲(chǔ)器地址
2.4 尋址方式
2.4.1 變量和常數(shù)的實(shí)現(xiàn)
2.4.2 間接和指針
2.4.3 變址和數(shù)組
2.5 匯編語言
2.5.1 匯編指示
2.5.2 程序的匯編和執(zhí)行
2.5.3 數(shù)的表示
2.6 堆棧
2.7 子程序
2.7.1 子程序嵌套及處理器堆棧
2.7.2 參數(shù)傳遞
2.7.3 堆棧的結(jié)構(gòu)
2.8 其他指令
2.8.1 邏輯指令
2.8.2 移位和循環(huán)移位指令
2.8.3 乘法和除法
2.9 處理32位的立即值
2.10 CISC指令集
2.10.1 其他尋址方式
2.10.2 條件碼
2.11 RISC和CISC風(fēng)格
2.12 實(shí)例程序
2.12.1 向量點(diǎn)積程序
2.12.2 字符串搜索程序
2.13 機(jī)器指令的編碼
2.14 結(jié)束語
2.15 問題解析
習(xí)題
第3章 基本輸入/輸出
3.1 訪問I/O設(shè)備
3.1.1 I/O設(shè)備接口
3.1.2 程序控制I/O
3.1.3 一個(gè)RISC風(fēng)格的I/O程序示例
3.1.4 一個(gè)CISC風(fēng)格的I/O程序示例
3.2 中斷
3.2.1 中斷的允許與禁止
3.2.2 處理多臺(tái)設(shè)備
3.2.3 控制I/O設(shè)備行為
3.2.4 處理器控制寄存器
3.2.5 中斷程序示例
3.2.6 異常
3.3 結(jié)束語
3.4 問題解析
習(xí)題
第4章 軟件
4.1 匯編過程
4.2 裝載及執(zhí)行目標(biāo)程序
4.3 連接程序
4.4 庫
4.5 編譯器
4.5.1 編譯器優(yōu)化
4.5.2 組合不同語言編寫的程序
4.6 調(diào)試器
4.7 使用高級(jí)語言實(shí)現(xiàn)輸入/輸出任務(wù)
4.8 匯編語言與C語言的交互
4.9 操作系統(tǒng)
4.9.1 引導(dǎo)程序
4.9.2 管理應(yīng)用程序的執(zhí)行
4.9.3 中斷在操作系統(tǒng)中的使用
4.10 結(jié)束語
習(xí)題
參考文獻(xiàn)
第5章 基本處理部件
5.1 一些基本概念
5.2 指令的執(zhí)行
5.2.1 Load指令
5.2.2 算術(shù)及邏輯運(yùn)算指令
5.2.3 Store指令
5.3 硬件組件
5.3.1 寄存器文件
5.3.2 ALU
5.3.3 數(shù)據(jù)通路
5.3.4 取指令部分
5.4 指令的讀取和執(zhí)行步驟
5.4.1 轉(zhuǎn)移
5.4.2 等待存儲(chǔ)器
5.5 控制信號(hào)
5.6 硬件控制
5.6.1 數(shù)據(jù)通路控制信號(hào)
5.6.2 存儲(chǔ)器延遲的處理
5.7 CICS風(fēng)格的處理器
5.7.1 使用總線實(shí)現(xiàn)互連
5.7.2 微程序控制
5.8 結(jié)束語
5.9 問題解析
習(xí)題
第6章 流水線
6.1 基本概念——理想情況
6.2 流水線結(jié)構(gòu)
6.3 流水線問題
6.4 數(shù)據(jù)依賴性
6.4.1 操作數(shù)轉(zhuǎn)發(fā)
6.4.2 用軟件處理數(shù)據(jù)依賴性
6.5 存儲(chǔ)器延遲
6.6 轉(zhuǎn)移延遲
6.6.1 無條件轉(zhuǎn)移
6.6.2 條件轉(zhuǎn)移
6.6.3 轉(zhuǎn)移延遲槽
6.6.4 轉(zhuǎn)移預(yù)測
6.7 資源限制
6.8 性能評(píng)估
6.8.1 停頓和時(shí)間代價(jià)的影響
6.8.2 流水線的段數(shù)
6.9 超標(biāo)量操作
6.9.1 轉(zhuǎn)移和數(shù)據(jù)依賴性
6.9.2 無序執(zhí)行
6.9.3 執(zhí)行完成
6.9.4 調(diào)度操作
6.10 CISC處理器中的流水線
6.10.1 ColdFire處理器中的流水線
6.10.2 Intel處理器中的流水線
6.11 結(jié)束語
6.12 問題解析
習(xí)題
參考文獻(xiàn)
第7章 輸入/輸出組織結(jié)構(gòu)
第8章 存儲(chǔ)器系統(tǒng)
第9章 算術(shù)運(yùn)算
第10章 嵌入式系統(tǒng)
第11章 片上系統(tǒng)——案例研究
第12章 并行處理及性能
參考文獻(xiàn)
附錄A 邏輯電路
附錄B Altera Nios II處理器
附錄C ColdFire處理器
附錄D ARM處理器
附錄E Intel IA-32體系結(jié)構(gòu)
索引
第1章 計(jì)算機(jī)的基本結(jié)構(gòu)
1.1 計(jì)算機(jī)的類型
1.2 功能部件
1.2.1 輸入設(shè)備
1.2.2 存儲(chǔ)器
1.2.3 運(yùn)算器
1.2.4 輸出設(shè)備
1.2.5 控制器
1.3 基本操作概念
1.4 數(shù)的表示及算術(shù)運(yùn)算
Computer Organization and Embedded Systems, Sixth Edition
出版者的話
譯者序
前言
作者簡介
第1章 計(jì)算機(jī)的基本結(jié)構(gòu)
1.1 計(jì)算機(jī)的類型
1.2 功能部件
1.2.1 輸入設(shè)備
1.2.2 存儲(chǔ)器
1.2.3 運(yùn)算器
1.2.4 輸出設(shè)備
1.2.5 控制器
1.3 基本操作概念
1.4 數(shù)的表示及算術(shù)運(yùn)算
1.4.1 整數(shù)
1.4.2 浮點(diǎn)數(shù)
1.5 字符表示
1.6 性能
1.6.1 技術(shù)
1.6.2 并行性
1.7 發(fā)展歷程
1.7.1 第一代計(jì)算機(jī)
1.7.2 第二代計(jì)算機(jī)
1.7.3 第三代計(jì)算機(jī)
1.7.4 第四代計(jì)算機(jī)
1.8 結(jié)束語
1.9 問題解析
習(xí)題
參考文獻(xiàn)
第2章 指令集體系結(jié)構(gòu)
2.1 存儲(chǔ)單元和地址
2.1.1 按字節(jié)尋址能力
2.1.2 大端和小端分配
2.1.3 字的對(duì)齊
2.1.4 訪問數(shù)和字符
2.2 存儲(chǔ)器操作
2.3 指令和指令序列
2.3.1 寄存器傳送標(biāo)記
2.3.2 匯編語言符號(hào)
2.3.3 RISC和CISC指令集
2.3.4 RISC指令集介紹
2.3.5 指令執(zhí)行和線性序列
2.3.6 轉(zhuǎn)移
2.3.7 生成存儲(chǔ)器地址
2.4 尋址方式
2.4.1 變量和常數(shù)的實(shí)現(xiàn)
2.4.2 間接和指針
2.4.3 變址和數(shù)組
2.5 匯編語言
2.5.1 匯編指示
2.5.2 程序的匯編和執(zhí)行
2.5.3 數(shù)的表示
2.6 堆棧
2.7 子程序
2.7.1 子程序嵌套及處理器堆棧
2.7.2 參數(shù)傳遞
2.7.3 堆棧的結(jié)構(gòu)
2.8 其他指令
2.8.1 邏輯指令
2.8.2 移位和循環(huán)移位指令
2.8.3 乘法和除法
2.9 處理32位的立即值
2.10 CISC指令集
2.10.1 其他尋址方式
2.10.2 條件碼
2.11 RISC和CISC風(fēng)格
2.12 實(shí)例程序
2.12.1 向量點(diǎn)積程序
2.12.2 字符串搜索程序
2.13 機(jī)器指令的編碼
2.14 結(jié)束語
2.15 問題解析
習(xí)題
第3章 基本輸入/輸出
3.1 訪問I/O設(shè)備
3.1.1 I/O設(shè)備接口
3.1.2 程序控制I/O
3.1.3 一個(gè)RISC風(fēng)格的I/O程序示例
3.1.4 一個(gè)CISC風(fēng)格的I/O程序示例
3.2 中斷
3.2.1 中斷的允許與禁止
3.2.2 處理多臺(tái)設(shè)備
3.2.3 控制I/O設(shè)備行為
3.2.4 處理器控制寄存器
3.2.5 中斷程序示例
3.2.6 異常
3.3 結(jié)束語
3.4 問題解析
習(xí)題
第4章 軟件
4.1 匯編過程
4.2 裝載及執(zhí)行目標(biāo)程序
4.3 連接程序
4.4 庫
4.5 編譯器
4.5.1 編譯器優(yōu)化
4.5.2 組合不同語言編寫的程序
4.6 調(diào)試器
4.7 使用高級(jí)語言實(shí)現(xiàn)輸入/輸出任務(wù)
4.8 匯編語言與C語言的交互
4.9 操作系統(tǒng)
4.9.1 引導(dǎo)程序
4.9.2 管理應(yīng)用程序的執(zhí)行
4.9.3 中斷在操作系統(tǒng)中的使用
4.10 結(jié)束語
習(xí)題
參考文獻(xiàn)
第5章 基本處理部件
5.1 一些基本概念
5.2 指令的執(zhí)行
5.2.1 Load指令
5.2.2 算術(shù)及邏輯運(yùn)算指令
5.2.3 Store指令
5.3 硬件組件
5.3.1 寄存器文件
5.3.2 ALU
5.3.3 數(shù)據(jù)通路
5.3.4 取指令部分
5.4 指令的讀取和執(zhí)行步驟
5.4.1 轉(zhuǎn)移
5.4.2 等待存儲(chǔ)器
5.5 控制信號(hào)
5.6 硬件控制
5.6.1 數(shù)據(jù)通路控制信號(hào)
5.6.2 存儲(chǔ)器延遲的處理
5.7 CICS風(fēng)格的處理器
5.7.1 使用總線實(shí)現(xiàn)互連
5.7.2 微程序控制
5.8 結(jié)束語
5.9 問題解析
習(xí)題
第6章 流水線
6.1 基本概念——理想情況
6.2 流水線結(jié)構(gòu)
6.3 流水線問題
6.4 數(shù)據(jù)依賴性
6.4.1 操作數(shù)轉(zhuǎn)發(fā)
6.4.2 用軟件處理數(shù)據(jù)依賴性
6.5 存儲(chǔ)器延遲
6.6 轉(zhuǎn)移延遲
6.6.1 無條件轉(zhuǎn)移
6.6.2 條件轉(zhuǎn)移
6.6.3 轉(zhuǎn)移延遲槽
6.6.4 轉(zhuǎn)移預(yù)測
6.7 資源限制
6.8 性能評(píng)估
6.8.1 停頓和時(shí)間代價(jià)的影響
6.8.2 流水線的段數(shù)
6.9 超標(biāo)量操作
6.9.1 轉(zhuǎn)移和數(shù)據(jù)依賴性
6.9.2 無序執(zhí)行
6.9.3 執(zhí)行完成
6.9.4 調(diào)度操作
6.10 CISC處理器中的流水線
6.10.1 ColdFire處理器中的流水線
6.10.2 Intel處理器中的流水線
6.11 結(jié)束語
6.12 問題解析
習(xí)題
參考文獻(xiàn)
第7章 輸入/輸出組織結(jié)構(gòu)
第8章 存儲(chǔ)器系統(tǒng)
第9章 算術(shù)運(yùn)算
第10章 嵌入式系統(tǒng)
第11章 片上系統(tǒng)——案例研究
第12章 并行處理及性能
參考文獻(xiàn)
附錄A 邏輯電路
附錄B Altera Nios II處理器
附錄C ColdFire處理器
附錄D ARM處理器
附錄E Intel IA-32體系結(jié)構(gòu)
索引
Computer Organization and Embedded Systems, Sixth Edition
出版者的話
譯者序
前言
作者簡介
第1章 計(jì)算機(jī)的基本結(jié)構(gòu)
1.1 計(jì)算機(jī)的類型
1.2 功能部件
1.2.1 輸入設(shè)備
1.2.2 存儲(chǔ)器
1.2.3 運(yùn)算器
1.2.4 輸出設(shè)備
1.2.5 控制器
1.3 基本操作概念
1.4 數(shù)的表示及算術(shù)運(yùn)算
Computer Organization and Embedded Systems, Sixth Edition
出版者的話
譯者序
前言
作者簡介
第1章 計(jì)算機(jī)的基本結(jié)構(gòu)
1.1 計(jì)算機(jī)的類型
1.2 功能部件
1.2.1 輸入設(shè)備
1.2.2 存儲(chǔ)器
1.2.3 運(yùn)算器
1.2.4 輸出設(shè)備
1.2.5 控制器
1.3 基本操作概念
1.4 數(shù)的表示及算術(shù)運(yùn)算
1.4.1 整數(shù)
1.4.2 浮點(diǎn)數(shù)
1.5 字符表示
1.6 性能
1.6.1 技術(shù)
1.6.2 并行性
1.7 發(fā)展歷程
1.7.1 第一代計(jì)算機(jī)
1.7.2 第二代計(jì)算機(jī)
1.7.3 第三代計(jì)算機(jī)
1.7.4 第四代計(jì)算機(jī)
1.8 結(jié)束語
1.9 問題解析
習(xí)題
參考文獻(xiàn)
第2章 指令集體系結(jié)構(gòu)
2.1 存儲(chǔ)單元和地址
2.1.1 按字節(jié)尋址能力
2.1.2 大端和小端分配
2.1.3 字的對(duì)齊
2.1.4 訪問數(shù)和字符
2.2 存儲(chǔ)器操作
2.3 指令和指令序列
2.3.1 寄存器傳送標(biāo)記
2.3.2 匯編語言符號(hào)
2.3.3 RISC和CISC指令集
2.3.4 RISC指令集介紹
2.3.5 指令執(zhí)行和線性序列
2.3.6 轉(zhuǎn)移
2.3.7 生成存儲(chǔ)器地址
2.4 尋址方式
2.4.1 變量和常數(shù)的實(shí)現(xiàn)
2.4.2 間接和指針
2.4.3 變址和數(shù)組
2.5 匯編語言
2.5.1 匯編指示
2.5.2 程序的匯編和執(zhí)行
2.5.3 數(shù)的表示
2.6 堆棧
2.7 子程序
2.7.1 子程序嵌套及處理器堆棧
2.7.2 參數(shù)傳遞
2.7.3 堆棧的結(jié)構(gòu)
2.8 其他指令
2.8.1 邏輯指令
2.8.2 移位和循環(huán)移位指令
2.8.3 乘法和除法
2.9 處理32位的立即值
2.10 CISC指令集
2.10.1 其他尋址方式
2.10.2 條件碼
2.11 RISC和CISC風(fēng)格
2.12 實(shí)例程序
2.12.1 向量點(diǎn)積程序
2.12.2 字符串搜索程序
2.13 機(jī)器指令的編碼
2.14 結(jié)束語
2.15 問題解析
習(xí)題
第3章 基本輸入/輸出
3.1 訪問I/O設(shè)備
3.1.1 I/O設(shè)備接口
3.1.2 程序控制I/O
3.1.3 一個(gè)RISC風(fēng)格的I/O程序示例
3.1.4 一個(gè)CISC風(fēng)格的I/O程序示例
3.2 中斷
3.2.1 中斷的允許與禁止
3.2.2 處理多臺(tái)設(shè)備
3.2.3 控制I/O設(shè)備行為
3.2.4 處理器控制寄存器
3.2.5 中斷程序示例
3.2.6 異常
3.3 結(jié)束語
3.4 問題解析
習(xí)題
第4章 軟件
4.1 匯編過程
4.2 裝載及執(zhí)行目標(biāo)程序
4.3 連接程序
4.4 庫
4.5 編譯器
4.5.1 編譯器優(yōu)化
4.5.2 組合不同語言編寫的程序
4.6 調(diào)試器
4.7 使用高級(jí)語言實(shí)現(xiàn)輸入/輸出任務(wù)
4.8 匯編語言與C語言的交互
4.9 操作系統(tǒng)
4.9.1 引導(dǎo)程序
4.9.2 管理應(yīng)用程序的執(zhí)行
4.9.3 中斷在操作系統(tǒng)中的使用
4.10 結(jié)束語
習(xí)題
參考文獻(xiàn)
第5章 基本處理部件
5.1 一些基本概念
5.2 指令的執(zhí)行
5.2.1 Load指令
5.2.2 算術(shù)及邏輯運(yùn)算指令
5.2.3 Store指令
5.3 硬件組件
5.3.1 寄存器文件
5.3.2 ALU
5.3.3 數(shù)據(jù)通路
5.3.4 取指令部分
5.4 指令的讀取和執(zhí)行步驟
5.4.1 轉(zhuǎn)移
5.4.2 等待存儲(chǔ)器
5.5 控制信號(hào)
5.6 硬件控制
5.6.1 數(shù)據(jù)通路控制信號(hào)
5.6.2 存儲(chǔ)器延遲的處理
5.7 CICS風(fēng)格的處理器
5.7.1 使用總線實(shí)現(xiàn)互連
5.7.2 微程序控制
5.8 結(jié)束語
5.9 問題解析
習(xí)題
第6章 流水線
6.1 基本概念——理想情況
6.2 流水線結(jié)構(gòu)
6.3 流水線問題
6.4 數(shù)據(jù)依賴性
6.4.1 操作數(shù)轉(zhuǎn)發(fā)
6.4.2 用軟件處理數(shù)據(jù)依賴性
6.5 存儲(chǔ)器延遲
6.6 轉(zhuǎn)移延遲
6.6.1 無條件轉(zhuǎn)移
6.6.2 條件轉(zhuǎn)移
6.6.3 轉(zhuǎn)移延遲槽
6.6.4 轉(zhuǎn)移預(yù)測
6.7 資源限制
6.8 性能評(píng)估
6.8.1 停頓和時(shí)間代價(jià)的影響
6.8.2 流水線的段數(shù)
6.9 超標(biāo)量操作
6.9.1 轉(zhuǎn)移和數(shù)據(jù)依賴性
6.9.2 無序執(zhí)行
6.9.3 執(zhí)行完成
6.9.4 調(diào)度操作
6.10 CISC處理器中的流水線
6.10.1 ColdFire處理器中的流水線
6.10.2 Intel處理器中的流水線
6.11 結(jié)束語
6.12 問題解析
習(xí)題
參考文獻(xiàn)
第7章 輸入/輸出組織結(jié)構(gòu)
第8章 存儲(chǔ)器系統(tǒng)
第9章 算術(shù)運(yùn)算
第10章 嵌入式系統(tǒng)
第11章 片上系統(tǒng)——案例研究
第12章 并行處理及性能
參考文獻(xiàn)
附錄A 邏輯電路
附錄B Altera Nios II處理器
附錄C ColdFire處理器
附錄D ARM處理器
附錄E Intel IA-32體系結(jié)構(gòu)
索引