译者序
序言
前言
计算机组织和在线设计
第1章 计算机概念和技术
1.1 引言
1.2 程序内部
1.3 内部的硬件
1.3.1 鼠标
1.3.2 显示器
1.3.3 打开机箱
1.3.4 数据的安全
1.3.5 与其他计算机通信
1.4 集成电路:推动创新
1.5 实例:制造Pentium芯片
1.6 谬误和陷讲
1.7 结论
1.8 历史回顾和参考文献
1.8.1 第一台电子计算机
1.8.2 商业发展
1.8.3 各代计算机
1.8.4 参考文献
1.9 重要术语
1.10 习题
第2章 性能评价
2.1 引言
2.2 性能测量
2.3 各种性能指标之间的关系
2.4 选择性能评价程序
2.5 性能比较与综合评价
2.6 实例:新型处理器的SPEC95基准程序及性能评价
2.7 谬误和陷阱
2.8 结论
2.9 历史回顾和参考文献
2.9.1 MIPS、MOPS以及FLOPS
2.9.2 早期综合性基准程序及核心基准程序的问题
2.9.3 将简单程序用于基准测试的问题
2.9.4 综合评价是不可靠的
2.9.5 SPEC基准程序集的性能
2.9.6 参考文献
2.10 重要术语
2.11 习题
第3章 指令:机器的语言
3.1 引言
3.2 计算机硬件的操作
3.3 计算机硬件的操作数
3.4 指令的计算机内表示
3.5 决策指令
3.5.1 循环
3.5.2 case和switch语句
3.6 计算机硬件对过程的支持
3.6.1 使用更多的寄存器
3.6.2 嵌套过程
3.6.3 为新数据分配空间
3.7 数据字以外
3.8 MIPS的其他寻址方式
3.8.1 常数据或立即数
3.8.2 分支和跳转指令的寻址
3.8.3 MIP寻址方式小结
3.8.4 机器语言的解码
3.9 启动程序
3.9.1 编译器
3.9.2 汇编程序
3.9.3 链接程序
3.9.4 加载程序
3.10 一个完整的例子
3.10.1 swap过程
3.10.2 sort过程
3.11 数组与指针
3.11.1 clear的数组版
3.11.2 clear的指针版
3.11.3 比较clear的两个版本
3.12 实例:PowerPC和80x86
3.12.1 IBM/Motorola PowerPC
3.12.2 Intel 80x86
3.13 谬误和陷阱
3.14 结论
3.15 历史回顾和参考文献
3.15.1 累加器体系结构
3.15.2 通用寄存器体系结构
3.15.3 紧凑代码和堆栈体系结构
3.15.4 高级语言计算机体系结构
3.15.5 精简指令集计算机体系结构
3.15.6 80x86简史
3.15.7 参考文献
3.16 重要术语
3.17 习题
第4章 计算机的算术运算
4.1 引言
4.2 带符号数与无符号数
4.3 加法与减法
4.4 逻辑运算
4.5 构造算术逻辑单元
4.5.1 1位ALU
4.5.2 32位ALU
4.5.3 MIPS的32位ALU
4.5.4 超前进位
4.6 乘法
4.6.1 第一种乘法算法及其硬件实现
4.6.2 第二种乘法算法及其硬件实现
4.6.3 第三种乘法算法及其硬件实现
4.6.4 带符号数乘法
4.6.5 布斯算法
4.6.6 MIPS中的乘法运算
4.6.7 小结
4.7 除法
4.7.1 第一种除法算法及其硬件实现
4.7.2 第二种除法算法及其硬件实现
4.7.3 第三种除法算法及其硬件实现
4.7.4 带符号数除法
4.7.5 MIPS中的除法运算
4.7.6 小结
4.8 浮点运算
4.8.1 浮点数表示方法
4.8.2 浮点数加法
4.8.3 浮点数乘法
4.8.4 MIPS的浮点指令
4.8.5 精确的算术运算
4.8.6 小结
4.9 实例:PowerPC和80x86中的浮点部件
4.9.1 PowerPC的乘累加指令
4.9.2 80x86的浮点体系结构
4.10 谬误和陷阱
4.11 结论
4.12 历史回顾和参考文献
4.12.1 有关浮点运算的第一场争论
4.12.2 浮点运算的差异性与可移植性
4.12.3 新不如旧
4.12.4 专家的烦恼
4.12.5 浮点运算的不断完善
4.12.6 最早采用IEEE754标准的芯片
4.12.7 IEEE754标准现状
4.12.8 参考文献
4.13 重要术语
4.14 习题
第5章 处理器:数据通路及其控制
第6章 利用流水线提高性能
第7章 存储器层次数结构
第8章 输入输出系统
第9章 多处理器
附录A 汇编程序、链接程序和SPIM模拟器
附录B 逻辑设计基础
附录C 控制器的硬件实现