-
内容大纲
艾伦·克莱门茨编写的《计算机组成原理》其分三部分。第一部分从计算机组成和结构的有关概念、计算机的发展历程及存储程序计算机开始讲起,介绍了计算机系统的组成和体系结构的基本概念,然后讨论了数据在计算机中的表示方法和运算方法。第二部分讲解ISA的基本概念,并以ARM指令集为例介绍了ISA设计时需要考虑的主要问题,还介绍了另一个经典的RISC指令集MIPS,然后着重介绍了当前处理器为特定领域应用(比如多媒体应用)提供的支持。第三部分首先介绍了设计控制器的两种经典方法——微程序与组合逻辑,然后详细讨论了流水线技术、影响流水线性能的因素及一些可行的解决方法。
本书适合计算机科学、电子工程、电子与计算机工程及相关专业作为教学用书,也可供相关技术人员阅读参考。 -
作者介绍
艾伦·克莱门茨(Alan Clements)国际著名的计算机体系结构教育的推动者和践行者。他于1 997年获得英国拉夫堡大学(Loughborough University)博士学位,随后加入提赛德大学(University of Teesside)计算机科学系。在20世纪70~80年代,他编写了两本计算机体系结构领域的重要教材:《计算机硬件原理》(The Principles of Computer Hardware)和《微处理器系统设计》(Microprocessor Systems Design)。 2001年,他担任了计算机学会国际学生竞赛(CSIDC)主席,并于同年获得英国国家教学奖(National Teaching Fellowship),这是英国高等教育的最高奖项。由于在计算机体系结构教育方面的贡献,他于是2002年获得IEEE CS本科教学奖,2006年获得lEEE CS泰勒布斯教育奖(Taylor LBooth award)。2009年被选为IEEE Fellow。他在IEEE计算机学会担任了多个职务,并积极参加课程体系设计,撰写了关于未来计算机体系结构教育的论文,参加了CS/ACM 2001计算课程体系的编写和制定工作。2010乌Alan Clements从全职教学岗位退休。 -
目录
出版者的话
译者序
前言
本书导读
作者简介
第一部分 起始篇
第1章 计算机系统体系结构
1.1 什么是计算机系统体系结构
1.2 体系结构和组成
1.2.1 计算机系统和技术
1.2.2 计算机体系结构在计算机科学中的地位
1.3 计算机的发展
1.3.1 机械计算机
1.3.2 机电式计算机
1.3.3 早期的电子计算机
1.3.4 微机和PC革命
1.3.5 摩尔定律和进步的历程
1.3.6 存储技术发展
1.3.7 普适计算
1.3.8 多媒体计算机
1.4 存储程序计算机
1.4.1 问题描述
1.4.2 解决方法
1.4.3 构造一个算法
1.4.4 计算机需要通过什么来解决问题
1.4.5 存储器
1.5 存储程序的概念
1.6 计算机系统概览
1.6.1 存储层次
1.6.2 总线
1.7 现代计算
本章小结
习题
第2章 计算机算术
2.1 数据是什么
2.1.1 位与字节
2.1.2 位模式
2.2 数字
2.2.1 位置记数法
2.3 二进制运算
2.4 有符号整数
2.4.1 符号及值表示法
2.4.2 二进制补码运算
2.5 乘除法简介
2.5.1 移位运算
2.5.2 无符号二进制乘法
2.5.3 快速乘法
2.5.4 除法
2.6 浮点数
2.6.1 IEEE浮点数
2.7 浮点运算
2.8 浮点运算和程序员
2.8.1 浮点运算中的误差传播
2.8.2 生成数学函数
本章小结
习题
第二部分 指令集体系结构
第3章 体系结构与组成
3.1 存储程序计算机
3.1.1 扩展处理器:常量处理
3.1.2 扩展处理器:流控制
3.2 ISA的组成
3.2.1 寄存器
3.2.2 寻址方式概述
3.2.3 指令格式
3.2.4 操作码与指令
3.3 ARM指令集体系结构
3.3.1 ARM寄存器集
3.3.2 ARM指令集
3.4 ARM汇编语言
3.4.1 ARM程序结构
3.4.2 汇编器的实际考虑因素
3.4.3 伪指令
3.5 ARM数据处理指令
3.5.1 算术指令
3.5.2 位操作
3.5.3 移位操作
3.5.4 指令编码——洞察ARM体系结构
3.6 ARM的流控制指令
3.6.1 无条件分支
3.6.2 条件分支
3.6.3 测试与比较指令
3.6.4 分支与循环结构
3.6.5 条件执行
3.7 ARM寻址方式
3.7.1 立即数寻址
3.7.2 寄存器间接寻址
3.7.3 带偏移量的寄存器间接寻址
3.7.4 ARM的自动前索引寻址方式
3.7.5 ARM的自动后索引寻址方式
3.7.6 程序计数器相对寻址
3.7.7 ARM的load与store指令编码
3.8 子程序调用与返回
3.8.1 ARM对子程序的支持
3.8.2 条件子程序调用
3.9 ARM代码实例
3.9.1 计算绝对值
3.9.2 字节操作与拼接
3.9.3 字节逆转
3.9.4 乘以2n-1?
3.9.5 多条件的使用
3.9.6 只用一条指令
3.9.7 实现多段程序
3.9.8 简单位级逻辑操作
3.9.9 十六进制字符转换
3.9.10 输出十六进制字符
3.9.11 打印横幅
3.10 子程序与栈
3.10.1 子程序调用与返回
3.10.2 子程序嵌套
3.10.3 叶子程序
3.11 数据的大小与排列
3.11.1 数据组织与端格式
3.11.2 数据组织和
3.11.3 块移动指令
3.12 整合——将所有内容放在一起
本章小结
习题
第4章 指令集体系结构——广度和深度
4.1 数据存储和栈
4.1.1 存储和栈
4.1.2 通过栈传递参数
4.2 特权模式和异常
4.3 MIPS:另一?
4.3.1 MIPS数据处理指令
4.4 数据处理与数据传送
4.4.1 不可见的交换指令
4.4.2 双精度移位
4.4.3 压缩和解压缩指令
4.4.4 边界测试
4.4.5 位字段数据
4.4.6 循环
4.5 存储器间接寻址
4.6 压缩代码、RISC、Thumb和M
4.6.1 Thumb指令集体系结构
4.6.2 M
4.7 变长指令
本章小结
习题
第5章 计算机体系结构与多媒体
5.1 高性能计算应用
5.1.1 图像处理
5.2 多媒体的影响——重新使?
5.3 SIMD处理简介
5.3.1 SIMD技术的应用
5.4 流扩展和SIMD技术的发展
5.4.1 浮点软件扩展
5.4.2 Intel的第三层多媒体扩展
5.4.3 Intel SSE3和SSE4指令
5.4.4 ARM系列处理器的多媒体
指令
本章小结
习题
第三部分 组成和效能
第6章 处理器控制
6.1 通用数字处理器
6.1.1 微程序
6.1.2 生成微操作
6.2 RISC的组成
6.2.1 寄存器–寄存器数据通路
6.2.2 单周期直通计算机的控制
6.3 流水线简介
6.3.1 加速比
6.3.2 实现流水线
6.3.3 冒险
6.4 分支和分支开销
6.4.1 分支方向
6.4.2 流水线中分支的影响
6.4.3 分支开销
6.4.4 延迟分支
6.5 分支预测
6.6 动态分支预测
6.6.1 分支目标缓冲
6.6.2 两级分支预测
本章小结
习题
参考文献
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...