图书简介:
本书内容包括计算机中数据的表示,基本的运算方法与运算器的构成,中央处理器的指令系统、寻址方式及控制器等基础知识,以及构成计算机的其他组成部件(如总线、存储器、输入/输出技术与设备)。
本书共分为9章,第1章绪论主要介绍计算机的发展史以及计算机的基本组成和分类,第2章全面介绍计算机中的数据表示方法,包括数据编码、非数值数据的编码和检错与纠错编码。第3章包括定点数的运算方法、算术逻辑单元和浮点运算的方法。第4章着重讲解指令格式、存储及寻址方式、指令系统和精简指令集计算机。第5章讲解CPU的结构、指令系统设计、CPU执行指令的过程和CPU的部件设计等内容。第6章介绍流水线技术,包括流水线的性能分析、流水线中的相关、指令级并行和其他有关技术。第7章包括存储器的分类、主存储器、高速缓冲存储器、虚拟存储器等内容。第8章介绍输入/输出基本原理、中断方式、直接存储器存取、通道方式。第9章包括多机互联网络、对称多处理机系统、分布式共享存储器多机系统和多机系统其他结构形式等内容。综观全书,既有宏观的指导,也有微观细节的介绍;既有生动的实例讲解,也有典型经验的分享。
本书内容充实、简明扼要、重点突出,涵盖了计算机组成与结构的基本内容,并增加了一些新的内容。本书可作为高校理工科专业“计算机组成原理”或“计算机组成与系统结构”课程的教科书,也可作为从事计算机行业的一般工程技术人员的参考书。
前 言
本书是将“计算机组成原理”和“计算机系统结构”两门课的教材内容整合在一起构成的。原因在于先前的两门课的内容在许多地方是重复的,同时在新的教学计划中所分配的教学时间比较少,分成两门课实施起来困难较大,合成一门课更加适合于教学需求。
本书共分为9章,第1章绪论主要介绍计算机的发展史以及计算机的基本组成和分类,为后面章节做好铺垫。第2章全面介绍计算机中的数据表示方法,包括数据编码、非数值数据的编码和检错与纠错编码。第3章包括定点数的运算方法、算术逻辑单元和浮点运算的方法。第4章着重讲解指令格式、存储及寻址方式、指令系统和精简指令集计算机。第5章讲解CPU的结构、指令系统设计、CPU执行指令的过程和CPU的部件设计等内容。第6章介绍流水线技术,包括流水线的性能分析、流水线中的相关、指令级并行和其他有关技术。第7章包括存储器的分类、主存储器、高速缓冲存储器、虚拟存储器等内容。第8章介绍输入/输出基本原理、中断方式、直接存储器存取、通道方式。第9章包括多机互联网络、对称多处理机系统、分布式共享存储器多机系统和多机系统其他结构形式等内容。综观全书,既有宏观的指导,也有微观细节的介绍;既有生动的实例讲解,也有典型经验的分享。
本书着重说明计算机组成与系统结构中的基本原理、基本概念和基本方法,以便读者在学完本书之后,能够牢固地掌握基础知识。本书并不注重具体工程问题的实现细节,其软硬件解决方案留待“微型计算机原理及接口技术”课去解决。
本书可作为高校理工科专业“计算机组成原理”或“计算机组成原理与系统结构”课程的教科书,也可作为从事计算机行业的一般工程技术人员的参考书。
在本书的编写过程中,作者努力将基本概念及基本方法阐述清楚,简明扼要,通俗易懂,重点突出,同时融作者多年教学实践中的体会与心得。尽管做了努力,但由于水平有限,错误及不当之处在所难免,敬请读者批评指正。
编 者
目 录第1章 绪论 1
1.1 计算机的发展史 2
1.1.1 发展经历 2
1.1.2 摩尔定律 3
1.2 计算机的基本组成 5
1.2.1 硬件系统 5
1.2.2 软件系统 8
1.3 计算机的分层组织结构 9
1.3.1 计算机分层结构形式 9
1.3.2 计算机系统结构、
组成与实现 10
1.4 计算机的分类及性能描述 12
1.4.1 计算机的分类 12
1.4.2 计算机的性能描述 14
1.5 课后练习 21
第2章 计算机中的数据表示 23
2.1 数据编码 24
2.1.1 数值数据的编码 24
2.1.2 数据的浮点表示 31
2.1.3 BCD码 37
2.2 非数值数据的编码 39
2.2.1 ASCII码 39
2.2.2 汉字编码 41
2.3 检错与纠错编码 44
2.3.1 奇偶校验码 44
2.3.2 海明码 45
2.3.3 循环冗余校验码 47
2.4 课后练习 49
第3章 运算方法与运算器 52
3.1 定点数运算 53
3.1.1 加减运算 53
3.1.2 乘法运算 61
3.1.3 除法运算 69
3.2 算术逻辑单元 74
3.2.1 单元电路 74
3.2.2 算术单元 77
3.2.3 运算器的结构 79
3.3 浮点运算 80
3.3.1 浮点加减运算 80
3.3.2 浮点乘除运算 83
3.3.3 浮点运算的实现 86
3.4 课后练习 86
第4章 指令系统 91
4.1 指令格式 92
4.1.1 概述 92
4.1.2 指令信息及格式 93
4.1.3 指令设计 95
4.2 存储及寻址方式 99
4.2.1 主存中的数据存储方式 99
4.2.2 寻址方式 99
4.3 指令系统 108
4.3.1 传送指令 108
4.3.2 算术运算指令 109
4.3.3 逻辑运算指令 112
4.3.4 移位及循环移位指令 113
4.3.5 程序控制指令 114
4.3.6 处理器控制指令 116
4.3.7 串操作指令 116
4.3.8 位操作指令 117
4.3.9 其他指令 118
4.4 精简指令集计算机 118
4.4.1 指令系统的从简到繁 118
4.4.2 精简指令集计算机的
由来及特点 119
4.5 课后练习 120
第5章 中央处理器 123
5.1 CPU的结构 124
5.1.1 CPU的功能 124
5.1.2 构成CPU的主要部件 124
5.2 指令系统设计 127
5.2.1 设计CPU的寻址方式 127
5.2.2 指令的设计 128
5.3 CPU执行指令的过程 132
5.3.1 指令时序 132
5.3.2 指令执行过程分析 135
5.4 CPU的部件设计 142
5.4.1 熟悉部件的回顾 142
5.4.2 指令执行的详细说明 144
5.4.3 组合逻辑控制器设计 148
5.4.4 微程序控制器设计 150
5.5 课后练习 163
第6章 流水线技术 166
6.1 概述 167
6.1.1 流水线概述 167
6.1.2 流水线的分类 169
6.2 流水线的性能分析 172
6.2.1 吞吐率 172
6.2.2 加速比 175
6.2.3 效率 176
6.3 流水线中的相关 178
6.3.1 概述 178
6.3.2 结构相关 179
6.3.3 数据相关 181
6.3.4 控制相关 183
6.3.5 流水线的中断处理 189
6.3.6 带成功开销的流水线性能 191
6.4 指令级并行 191
6.4.1 指令级并行概述 191
6.4.2 提高指令级并行的方法 193
6.5 其他有关技术 202
6.5.1 超标量处理机 202
6.5.2 超流水线处理机 203
6.5.3 超标量超流水线处理机 204
6.5.4 超长指令字处理机 205
6.6 课后练习 206
第7章 存储系统 208
7.1 存储系统概述 209
7.1.1 存储系统的层次结构 209
7.1.2 存储器的分类 209
7.1.3 存储器的性能指标 210
7.2 主存储器 212
7.2.1 随机读写存储器 212
7.2.2 只读存储器 223
7.2.3 动态读写存储器 228
7.2.4 主存储器校验 235
7.2.5 其他存储器 240
7.3 高速缓冲存储器 244
7.3.1 工作原理 245
7.3.2 替换算法 251
7.3.3 主存与Cache内容的
一致性问题 252
7.3.4 Cache性能分析 253
7.3.5 Pentium的 Cache 255
7.4 虚拟存储器 256
7.4.1 虚拟存储器的概念 256
7.4.2 虚拟存储器的管理 256
7.4.3 几点说明 260
7.4.4 Pentium虚拟存储器 261
7.5 课后练习 262
第8章 输入/输出系统 265
8.1 总线 266
8.1.1 概述 266
8.1.2 总线的信息传送 268
8.1.3 典型总线介绍 272
8.2 输入/输出基本原理 280
8.2.1 外部设备 280
8.2.2 程序控制输入/输出技术 302
8.3 中断方式 306
8.3.1 中断的基本概念 306
8.3.2 中断优先级控制 309
8.4 直接存储器存取 311
8.4.1 DMA概述 311
8.4.2 DMA的一般过程 313
8.5 通道方式 314
8.5.1 通道方式的特点 314
8.5.2 通道的类型 315
8.5.3 通道的发展 315
8.6 课后练习 316
第9章 多机系统 318
9.1 概述 319
9.1.1 并行处理 319
9.1.2 并行计算机分类 319
9.2 多机互联网络 324
9.2.1 互联函数 324
9.2.2 静态互联网络 328
9.2.3 动态互联网络 332
9.3 对称多处理机系统 343
9.3.1 对称多处理机的构成 343
9.3.2 多机系统的性能分析 346
9.3.3 对称多处理机系统Cache的
一致性 348
9.3.4 多处理机系统的
调度与负载平衡 355
9.4 分布式共享存储器多机系统 361
9.4.1 分布式共享存储器多机
系统的结构 361
9.4.2 CC-NUMA系统 362
9.5 多机系统其他结构形式 364
9.5.1 大规模并行处理系统 364
9.5.2 集群系统 365
9.5.3 向量处理机 368
9.5.4 高性能计算机的发展 370
9.6 课后练习 374