注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)硬件、外部設(shè)備與維護安騰體系結(jié)構(gòu):理解64位處理器和EPIC原理

安騰體系結(jié)構(gòu):理解64位處理器和EPIC原理

安騰體系結(jié)構(gòu):理解64位處理器和EPIC原理

定 價:¥49.80

作 者: James S.Evans,Gregory L.Trimper著;蔣敬旗[等]譯;蔣敬旗譯
出版社: 清華大學(xué)出版社
叢編項: 世界著名計算機教材精選
標 簽: 微處理器/CPU

ISBN: 9787302096085 出版時間: 2005-01-01 包裝: 平裝
開本: 26cm 頁數(shù): 416 字數(shù):  

內(nèi)容簡介

  本書全面介紹了新型64位安騰體系結(jié)構(gòu)及其具有突破性的性能。通過使用標準命令行工具和大量實例,循序漸進地介紹了安騰匯編語言,并結(jié)合當代計算機體系結(jié)構(gòu)的發(fā)展,詳細闡述了安騰體系結(jié)構(gòu)設(shè)計。本書涵蓋的內(nèi)容包括:·顯式并行指令計算(EPIC)的潛能·安騰體系結(jié)構(gòu)中的創(chuàng)新,例如寄存器棧引擎(RSE)和廣泛使用的謂詞等·過程調(diào)用以及過程調(diào)用機制·浮點操作·I/O技術(shù),包括從簡單的調(diào)試到文件的使用等·開主和源碼、Intel和HP-UX編譯程序的輸出優(yōu)化本書每章都包括翔實的數(shù)字、論述以及編程練習(xí),并且提供了大量的參考文獻和豐富的網(wǎng)上資源。本書可作為計算機及相關(guān)專業(yè)學(xué)生學(xué)習(xí)計算機體系結(jié)構(gòu)或匯編語言的教材,也是研究人員系統(tǒng)了解安騰體系結(jié)構(gòu)的必備資源。

作者簡介

  蔣敬旗,男,1967年7月生,2001年在北京理工大學(xué)計算機科學(xué)工程系獲計算機應(yīng)用技術(shù)專業(yè)工學(xué)博士學(xué)位。2001年1~6月在信息產(chǎn)業(yè)部數(shù)字技術(shù)研究中心技術(shù)總監(jiān)。2001年7月至2003年10月在中國科學(xué)院計算技術(shù)研究所做博士后研究工作。1993年曾獲大學(xué)英語專業(yè)文學(xué)學(xué)士學(xué)位?,F(xiàn)在海南省信息產(chǎn)業(yè)局、??谑锌茖W(xué)技術(shù)與信息產(chǎn)業(yè)局工作,同時兼任海南大學(xué)信息技術(shù)學(xué)院教授,國經(jīng)協(xié)經(jīng)濟研究院科學(xué)、藝術(shù)家、企業(yè)家聯(lián)誼會理事,中國自動化學(xué)會制造技術(shù)委員會常務(wù)委員,全國工業(yè)自動化系統(tǒng)與集成標準化技術(shù)委員會委員,全國集成電路標準化技術(shù)委員會委員,全國電氣信息結(jié)構(gòu)、文件編制和圖形符號標準化技術(shù)委員會委員,中國科學(xué)院博士后聯(lián)誼會資深理事,海南省電子商務(wù)協(xié)會顧問,海南省軟件行業(yè)協(xié)會專家組成員,海南省博士·院士產(chǎn)業(yè)促進會專家組成員等職。發(fā)表學(xué)術(shù)論文20余篇,出版三部著作。

圖書目錄

第1章 體系結(jié)構(gòu)和實現(xiàn)方法
1.1 類比:鋼琴的體系結(jié)構(gòu)
1.2 計算機語言的類型
1.3 為什么要學(xué)習(xí)匯編語言
1.4 二進制倍數(shù)的詞頭
1.5 指令集體系結(jié)構(gòu)
1.6 計算機體系結(jié)構(gòu)的生命周期
1.6.1 32位Intel體系結(jié)構(gòu)及其先前結(jié)構(gòu)
1.6.2 AlphaTM體系結(jié)構(gòu)及其先前結(jié)構(gòu)
1.6.3 安騰體系結(jié)構(gòu)及其先前結(jié)構(gòu)
1.6.4 體系結(jié)構(gòu)和實現(xiàn)方法的命名
1.7 SQUARES:第一個編程實例
1.7.1 C. FORTRAN和COBOL語言描述
1.7.2 安騰體系結(jié)構(gòu)的匯編語言描述
1.8 記數(shù)系統(tǒng)的回顧
1.8.1 位置系數(shù)和權(quán)值
1.8.2 二進制和十六進制表示
1.8.3 帶符號整數(shù)
本章總結(jié)
參考文獻
練習(xí)題
第2章 計算機結(jié)構(gòu)和數(shù)據(jù)表示
2.1 計算機結(jié)構(gòu)
2.1.1 中央處理器
2.1.2 存儲器
2.1.3 輸入輸出系統(tǒng)
2.2 指令的執(zhí)行
2.3 指令集體系結(jié)構(gòu)的類別
2.4 向64位體系結(jié)構(gòu)過渡
2.5 安騰體系結(jié)構(gòu)的信息單位和數(shù)據(jù)類型
2.5.1 整數(shù)
2.5.2 浮點數(shù)
2.5.3 字母數(shù)字字符
本章總結(jié)
參考文獻
練習(xí)題
第3章 匯編程序和調(diào)試程序
3.1 編程環(huán)境
3.2 程序開發(fā)步驟
3.3 比較源文件的不同
3.4 匯編語句的類型
3.4.1 語句格式
3.4.2 符號地址
3.4.3 匯編語言操作符的種類
3.5 符號匯編程序的功能
3.5.1 常量
3.5.2 符號或標識符
3.5.3 存儲器分配
3.5.4 單元計數(shù)器
3.5.5 表達式
3.5.6 控制語句
3.5.7 清單文件的組成部分
3.6 匯編過程
3.7 連接過程
3.8 調(diào)試程序
3.8.1 調(diào)試程序的功能
3.8.2 使用gdb Linux和HP-UX 運行SQUARES
3.8.3 使用adb HP-UX 運行SQUARES
3.8.4 調(diào)試命令舉例
3.9 編寫程序的約定
本章總結(jié)
參考文獻
練習(xí)題
第4章 安騰指令格式和尋址方式
4.1 安騰指令格式概述
4.1.1 指令包
4.1.2 指令位字段格式
4.1.3 安騰指令類型
4.2 整數(shù)算術(shù)指令
4.2.1 加法和減法
4.2.2 算術(shù)溢出
4.2.3 左移相加指令
4.2.4 算術(shù)操作的特殊情況
4.2.5 16位帶符號整數(shù)的乘法
4.2.6 全寬度的乘法和除法
4.3 安騰指令的位編碼
4.4 HEXNUM:使用算術(shù)指令
4.5 數(shù)據(jù)存取指令
4.5.1 安騰高速緩存結(jié)構(gòu)
4.5.2 整型存儲指令
4.5.3 整型裝入指令
4.5.4 長立即數(shù)傳送指令
4.5.5 存取簡單的記錄結(jié)構(gòu)
4.5.6 存取專用CPU寄存器
4.6 其他ALU指令
4.6.1 符號擴展指令
4.6.2 零擴展指令
4.6.3 寬度小于64位的指令
4.7 DOTPROD:使用數(shù)據(jù)存取指令
4.8 安騰尋址方式
4.8.1 立即尋址
4.8.2 寄存器直接尋址
4.8.3 寄存器間接尋址
4.8.4 自動增量尋址
4.8.5 安騰尋址方式小結(jié)
4.8.6 前面程序中的尋址細節(jié)
4.9 其他體系結(jié)構(gòu)中的尋址
4.9.1 基于寄存器間接尋址的方式
4.9.2 基于偏移尋址的方式
4.9.3 體系結(jié)構(gòu)尋址方式的比較
本章總結(jié)
參考文獻
練習(xí)題
第5章 比較. 轉(zhuǎn)移和判斷
5.1 控制流的硬件基礎(chǔ)
5.1.1 條件碼
5.1.2 狀態(tài)管理方法
5.1.3 謂詞寄存器
5.2 整數(shù)比較指令
5.2.1 帶符號比較和等式
5.2.2 無符號比較
5.3 程序轉(zhuǎn)移
5.3.1 普通轉(zhuǎn)移指令
5.3.2 轉(zhuǎn)移的時間考慮
5.3.3 if…then…else結(jié)構(gòu)
5.3.4 循環(huán)結(jié)構(gòu)
5.3.5 轉(zhuǎn)移的尋址范圍
5.3.6 局部性和程序性能
5.4 DOTLOOP:使用計數(shù)循環(huán)
5.5 暫停. 指令組和性能
5.5.1 DOTLOOP中的暫停和分組
5.5.2 數(shù)據(jù)相關(guān)性的簡化規(guī)則
5.5.3 安騰匯編程序處理暫停的方法
5.5.4 循環(huán)的局部標號
5.5.5 循環(huán). 轉(zhuǎn)移和整體性能
5.6 DOTCLOOP:使用循環(huán)計數(shù)寄存器
5.7 其他結(jié)構(gòu)化程序設(shè)計成分
5.7.1 無條件比較指令
5.7.2 嵌套的if…then…else結(jié)構(gòu)
5.7.3 多路轉(zhuǎn)移
5.7.4 簡單的分情況結(jié)構(gòu)
5.8 MAXIMUM:使用條件指令
本章總結(jié)
參考文獻
練習(xí)題
第6章 邏輯操作. 移位操作和字節(jié)操作
6.1 邏輯函數(shù)
6.1.1 兩個變量的布爾函數(shù)
6.1.2 邏輯指令
6.1.3 邏輯函數(shù)的應(yīng)用
6.1.4 一位測試指令
6.1.5 并行 邏輯 條件
6.1.6 加法的邏輯基礎(chǔ)
6.2 HEXNUM2:使用邏輯掩碼
6.3 位操作和字段操作
6.3.1 移位指令
6.3.2 移位操作的應(yīng)用
6.3.3 右移對指令
6.3.4 提取指令和存放指令
6.4 SCANTEXT:處理字節(jié)
6.5 整數(shù)乘法和除法
6.5.1 乘法的Booth算法
6.5.2 無符號乘法
6.5.3 使用已知倒數(shù)的除法
6.6 DECNUM:將整數(shù)轉(zhuǎn)換成十進制格式
6.7 使用C語言進行ASCII輸入和輸出
6.7.1 GETPUT:封裝C函數(shù)
6.7.2 IO_C:一個簡單的測試程序
6.7.3 其他概念
6.8 BACKWARD:使用字節(jié)操作
本章總結(jié)
參考文獻
練習(xí)題
第7章 子例程. 過程和函數(shù)
7.1 存儲器棧
7.1.1 CISC體系結(jié)構(gòu)的棧尋址
7.1.2 裝入/存儲體系結(jié)構(gòu)的棧尋址
7.1.3 安騰體系結(jié)構(gòu)的棧尋址
7.1.4 用戶定義的棧
7.2 DECNUM2:使用棧操作
7.3 寄存器棧
7.3.1 SPARC寄存器窗
7.3.2 安騰寄存器棧
7.3.3 alloc指令
7.3.4 寄存器棧引擎 RSE
7.3.5 存儲體寄存器
7.4 程序分段
7.4.1 源級模塊性
7.4.2 傳統(tǒng)子例程
7.4.3 協(xié)同例程
7.4.4 過程和函數(shù)
7.4.5 共享庫函數(shù)
7.5 調(diào)用約定
7.5.1 寄存器競爭和使用約定
7.5.2 調(diào)用和返回轉(zhuǎn)移指令
7.5.3 變元傳送:位置
7.5.4 變元傳送:方法
7.5.5 開始部分和結(jié)束部分
7.5.6 regstk命令
7.6 DECNUM3和BOOTH:建立一個函數(shù)
7.6.1 定義接口
7.6.2 BOOTH:可調(diào)用的函數(shù)
7.6.3 DECNUM3:測試程序
7.6.4 位置獨立的代碼
7.7 整數(shù)商和余數(shù)
7.7.1 高級語言使用的例程
7.7.2 Intel公司的開放源例程
7.8 RANDOM:一個可調(diào)用的函數(shù)
7.8.1 選擇一個算法
7.8.2 RANDOM:函數(shù)的開發(fā)
7.8.3 高級語言調(diào)用程序
本章總結(jié)
參考文獻
練習(xí)題
第8章 浮點操作
8.1 整數(shù)指令和浮點指令之間的并行性
8.2 浮點值的表示
8.2.1 IEEE特殊值
8.2.2 安騰浮點寄存器中的值
8.3 復(fù)制浮點數(shù)據(jù)
8.3.1 浮點存儲指令
8.3.2 浮點裝入指令
8.3.3 浮點裝入對指令
8.3.4 用于寄存器一寄存器復(fù)制的浮點偽指令
8.3.5 浮點合并指令
8.4 浮點算術(shù)指令
8.4.1 加法. 減法和乘法
8.4.2 熔絲型乘一加和乘一減指令
8.4.3 規(guī)范化為另一個特例
8.4.4 最大值和最小值操作
8.4.5 舍入. 異常和浮點控制
8.5 HORNER:計算一個多項式
8.6 基于浮點值的判斷
8.6.1 浮點比較指令
8.6.2 浮點類指令
8.7 浮點執(zhí)行部件中的整數(shù)操作
8.7.1 數(shù)據(jù)轉(zhuǎn)換指令
8.7.2 整數(shù)乘法指令
8.7.3 乘法策略
8.7.4 浮點邏輯指令
8.8 倒數(shù)和平方根的近似
8.8.1 浮點倒數(shù)的近似
8.8.2 倒數(shù)平方根的近似
8.8.3 浮點除法
8.8.4 Intel公司的開放源例程
8.9 APPROXPI:使用浮點指令
本章總結(jié)
參考文獻
練習(xí)題
第9章 文本的輸入和輸出
9.1 文件系統(tǒng)
9.1.1 Unix I/O軟件
9.1.2 Linux I/O軟件
9.2 鍵盤和顯示器I/O
9.2.1 未格式化的I/O行
9.2.2 格式化的I/O
9.3 SCANTERM:使用C的標準I/O
9.4 SORTSTR:排序串
9.5 文本文件I/O
9.5.1 目錄級的訪問
9.5.2 未格式化的I/O行
9.5.3 格式化的I/O
9.6 SCANFILE:文件的輸入輸出
9.7 SORTINT:對文件中的整數(shù)進行排序
9.8 二進制文件
本章總結(jié)
參考文獻
練習(xí)題
第10章 性能考慮
10.1 處理器級的并行性
10.1.1 簡化的指令流水線
10.1.2 超標量流水線
10.1.3 安騰2處理器流水線
10.1.4 流水線冒險
10.2 指令級并行性
10.2.1 RISC方法
10.2.2 VLIW思想
10.2.3 EPIC:體系結(jié)構(gòu)發(fā)展的一個方向
10.3 安騰處理器中的顯式并行性
10.3.1 指令模板
10.3.2 數(shù)據(jù)相關(guān)和猜測
10.3.3 控制相關(guān)和猜測
10.3.4 組合的控制和數(shù)據(jù)猜測
10.4 軟件流水線循環(huán)
10.4.1 傳統(tǒng)的循環(huán)展開
10.4.2 軟件流水線
10.4.3 循環(huán)式寄存器
10.4.4 循環(huán)階段
10.4.5 軟件流水線的轉(zhuǎn)移指令
10.5 按模調(diào)度一個循環(huán)
10.5.1 DOTCTOP:獨立實現(xiàn)的調(diào)度
10.5.2 DOTCTOP2:安騰2處理器的調(diào)度
10.5.3 進一步的考慮
10.6 程序優(yōu)化因素
10.6.1 指令寬度
10.6.2 尋址方式
10.6.3 指令能力
10.6.4 程序長度
10.6.5 將數(shù)據(jù)預(yù)取到高速緩存中
10.6.6 直接插入式函數(shù)的使用
10.6.7 指令重新排序
10.6.8 遞歸及相關(guān)因素
10.7 斐波納契數(shù)
10.7.1 FIB1:使用遞歸的函數(shù)
10.7.2 FIB2:無遞歸的函數(shù)
10.7.3 FIB3:使用寄存器棧的函數(shù)
10.7.4 TESTFIB:顯示遞歸的開銷
本章總結(jié)
參考文獻
練習(xí)題
第11章 查看編譯程序的輸出
11.1 類RISC系統(tǒng)的編譯程序
11.1.1 開放源碼編譯程序的優(yōu)化級別
11.1.2 Intel編譯程序的優(yōu)化級別
11.1.3 HP-UX編譯程序的優(yōu)化級別
11.1.4 附加的優(yōu)化可能性
11.2 編譯一個簡單程序
11.2.1 比較gcc和ecc Linux 的輸出
11.2.2 比較gcc和g77 Linux 的輸出
11.2.3 比較cc_bundled和f90 HP-UX 的輸出
11.3 優(yōu)化一個簡單程序
11.3.1 比較g77 Linux 的-O1級別和-O2級別的輸出
11.3.2 編譯程序信息
11.3.3 f90 HP-UX 的循環(huán)的長度和優(yōu)化
11.4 直接插入式優(yōu)化
11.5 剖面制導(dǎo)的優(yōu)化或其他優(yōu)化
11.6 調(diào)試經(jīng)過優(yōu)化的程序
11.7 重訪斐波納契數(shù)的遞歸
本章總結(jié)
參考文獻
練習(xí)題
第12章 并行操作
12.1 計算系統(tǒng)的分類
12.2 整數(shù)并行操作
12.3 整數(shù)乘法的應(yīng)用
12.3.1 源操作數(shù)32*32位得到32位無符號乘積
12.3.2 源操作數(shù)32*32位得到64位無符號數(shù)
12.4 機遇和挑戰(zhàn)
12.5 浮點并行操作
12.6 支持并行處理的信號量
12.6.1 先前的體系結(jié)構(gòu)
12.6.2 安騰體系結(jié)構(gòu)
本章總結(jié)
參考文獻
練習(xí)題
第13章 實現(xiàn)方法的變異
13.1 為什么改變實現(xiàn)方法
13.1.1 需求和機遇
13.1.2 摩爾定律的含義
13.1.3 期望體系結(jié)構(gòu)具有較長的生命周期
13.2 如何改變實現(xiàn)方法
13.3 最初的安騰處理器
13.3.1 與安騰2處理器的對比
13.3.2 高速緩存的層次結(jié)構(gòu)
13.3.3 執(zhí)行部件和發(fā)射端口
13.3.4 流水線
13.3.5 等待因子
13.3.6 轉(zhuǎn)移預(yù)測
13.3.7 其他區(qū)別和特征
13.4 軟件的主要作用
13.4.1 新的體系結(jié)構(gòu)
13.4.2 新的實現(xiàn)方法
13.4.3 新的指令或者更多的寄存器
13.5 IA-32指令集模式
13.6 確定擴展和實現(xiàn)方案
本章總結(jié)
參考文獻
練習(xí)題
附錄A 命令行環(huán)境
參考文獻
練習(xí)題
附錄B 推薦的系統(tǒng)資源
B.1 系統(tǒng)硬件
B.1.1 安騰工作站或服務(wù)器
B.1.2 IA-32 Linux系統(tǒng)上的Ski模擬器
B.1.3 Linux虛擬機上的Ski模擬器
B.1.4 其他模擬器
B.2 系統(tǒng)軟件
B.2.1 Linux
B.2.2 HP-UX
B.2.3 Ski模擬器
B.2.4 64位Windows
B.2.5 FreeBSD
B.2.6 OpenVMS
B.3 桌面客戶訪問軟件
B.3.1 Linux個人計算機
B.3.2 Macintosh個人計算機
B.3.3 Windows個人計算機
參考文獻
附錄C 安騰指令集
表C-1 按功能排列的安騰指令
表C-2 按匯編程序操作碼排列的安騰指令
參考文獻
附錄D 安騰寄存器及其用途
D.1 指令指示字
D.2 通用寄存器和NaT位
D.3 謂詞寄存器
D.4 轉(zhuǎn)移寄存器
D.5 浮點寄存器
D.6 應(yīng)用寄存器
D.7 狀態(tài)管理寄存器
D.8 系統(tǒng)信息寄存器
D.9 系統(tǒng)控制寄存器
參考文獻
附錄E 條件匯編和宏 GCC匯編程序
E.1 顯式停止的干擾
E.2 重復(fù)塊
E.2.1 簡單重復(fù)塊
E.2.2 使用.irp命令的不定重復(fù)塊
E.2.3 使用.irpc命令的不定重復(fù)塊
E.3 條件匯編
E.4 宏的處理
E.4.1 宏的定義
E.4.2 宏的調(diào)用
E.4.3 定位參數(shù)的處理
E.4.4 默認值和關(guān)鍵詞參數(shù)的處理
E.4.5 串參數(shù)的處理
E.5 宏標號的使用
E.6 遞歸宏
E.7 目標文件段
E.8 MONEY:用于說明段的宏
本章總結(jié)
參考文獻
練習(xí)題
附錄F 直接插入式匯編
F.1 HP-UX的C編譯程序
F.2 用于Linux的GCC編譯程序
F.3 Intel的Linux編譯程序
參考文獻
參考文獻匯總
部分練習(xí)題答案及提示
術(shù)語表

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號