计算机组成:结构化方法(原书第6版)

计算机组成:结构化方法(原书第6版) pdf epub mobi txt 电子书 下载 2025

[荷] Andrew S.Tanenbaum,[美] Todd Austin 著,刘卫东,宋佳兴 译
图书标签:
  • 计算机组成原理
  • 计算机体系结构
  • 数字逻辑
  • 汇编语言
  • 计算机硬件
  • 结构化方法
  • 计算机设计
  • 处理器
  • 存储器
  • 输入输出
想要找书就要到 新城书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 机械工业出版社
ISBN:9787111453802
版次:6
商品编码:11533365
品牌:机工出版
包装:平装
开本:16开
出版时间:2014-08-01
用纸:胶版纸
页数:775

具体描述

内容简介

本书采用结构化方法来介绍计算机系统,书的内容完全建立在“计算机是由层次结构组成的,每层完成规定的功能”这一概念之上。作者对本版进行了彻底的更新,以反映当今最重要的计算机技术以及计算机组成和体系结构方面的最新进展。书中详细讨论了数字逻辑层、微体系结构层、指令系统层、操作系统层和汇编语言层,并涵盖了并行体系结构的内容,而且每一章结尾都配有丰富的习题。本书适合作为计算机专业本科生计算机组成与结构课程的教材或参考书,也可供相关领域技术人员参考。

目录

Structured Computer Organization, Sixth Edition
出版者的话
译者序
前言
第1章 概述 1
1.1 结构化计算机组成 1
1.1.1 语言、层次和虚拟机 1
1.1.2 现代多层次计算机 3
1.1.3 多层次计算机的演化 5
1.2 计算机体系结构的里程碑 8
1.2.1 第零代——机械计算机(1642—1945) 8
1.2.2 第一代——电子管计算机(1945—1955) 10
1.2.3 第二代——晶体管计算机(1955—1965) 12
1.2.4 第三代——集成电路计算机(1965—1980) 14
1.2.5 第四代——超大规模集成电路计算机(1980年至今) 15
1.2.6 第五代——低功耗和无所不在的计算机 17
1.3 计算机家族 18
1.3.1 技术和经济推动 18
1.3.2 计算机扫视 20
1.3.3 一次性计算机 21
1.3.4 微型控制器 22
1.3.5 移动计算机和游戏计算机 23
1.3.6 个人计算机 24
1.3.7 服务器 25
1.3.8 大型主机 26
1.4 系列计算机举例 26
1.4.1 x86体系结构简介 27
1.4.2 ARM体系结构简介 31
1.4.3 AVR体系结构简介 32
1.5 公制计量单位 33
1.6 本书概览 34
习题 35
第2章 计算机系统组成 38
2.1 处理器 38
2.1.1 CPU组成 39
2.1.2 指令执行 40
2.1.3 RISC和CISC 42
2.1.4 现代计算机设计原则 43
2.1.5 指令级并行 44
2.1.6 处理器级并行 47
2.2 主存储器 50
2.2.1 存储位 50
2.2.2 内存编址 51
2.2.3 字节顺序 52
2.2.4 纠错码 53
2.2.5 高速缓存 56
2.2.6 内存封装及其类型 58
2.3 辅助存储器 59
2.3.1 层次存储结构 59
2.3.2 磁盘 60
2.3.3 IDE盘 62
2.3.4 SCSI盘 63
2.3.5 RAID盘 64
2.3.6 固盘 67
2.3.7 只读光盘 68
2.3.8 可刻光盘 71
2.3.9 可擦写光盘 73
2.3.10 DVD 73
2.3.11 Blu-Ray 74
2.4 输入/输出设备 75
2.4.1 总线 75
2.4.2 终端 78
2.4.3 鼠标 81
2.4.4 游戏控制器 83
2.4.5 打印机 84
2.4.6 电信设备 88
2.4.7 数码相机 94
2.4.8 字符编码 95
2.5 小结 99
习题 99
第3章 数字逻辑层 103
3.1 门和布尔代数 103
3.1.1 门 103
3.1.2 布尔代数 105
3.1.3 布尔函数的实现 107
3.1.4 等价电路 108
3.2 基本数字逻辑电路 110
3.2.1 集成电路 111
3.2.2 组合逻辑电路 111
3.2.3 算术电路 114
3.2.4 时钟 118
3.3 内存 119
3.3.1 锁存器 119
3.3.2 触发器 121
3.3.3 寄存器 122
3.3.4 内存组成 123
3.3.5 内存芯片 125
3.3.6 RAM和ROM 128
3.4 CPU芯片和总线 130
3.4.1 CPU芯片 130
3.4.2 计算机总线 132
3.4.3 总线宽度 134
3.4.4 总线时钟 135
3.4.5 总线仲裁 138
3.4.6 总线操作 141
3.5 CPU芯片举例 143
3.5.1 Intel Core i7 143
3.5.2 德州仪器的OMAP4430片上系统 147
3.5.3 Atmel的ATmega168微控制器 150
3.6 总线举例 152
3.6.1 PCI总线 152
3.6.2 PCI Express 159
3.6.3 通用串行总线USB 162
3.7 接口电路 165
3.7.1 输入/输出接口 165
3.7.2 地址译码 166
3.8 小结 169
习题 169
第4章 微体系结构层 173
4.1 微体系结构举例 173
4.1.1 数据通路 174
4.1.2 微指令 178
4.1.3 微指令控制:Mic-1 180
4.2 指令系统举例:IJVM 183
4.2.1 栈 183
4.2.2 IJVM内存模型 185
4.2.3 IJVM指令集 186
4.2.4 将Java编译为IJVM 189
4.3 实现举例 190
4.3.1 微指令和符号 190
4.3.2 用Mic-1实现IJVM 193
4.4 微体系结构层设计 201
4.4.1 速度与价格 202
4.4.2 缩短指令执行路径长度 203
4.4.3 带预取的设计:Mic-2 208
4.4.4 流水线设计:Mic-3 211
4.4.5 七段流水线设计:Mic-4 215
4.5 提高性能 217
4.5.1 高速缓存 218
4.5.2 分支预测 222
4.5.3 乱序执行和寄存器重命名 226
4.5.4 推测执行 230
4.6 微体系结构层举例 232
4.6.1 Core i7 CPU的微体系结构 232
4.6.2 OMAP4430 CPU的微体系结构 236
4.6.3 ATmega168微控制器的微体系结构 240
4.7 Core i7、OMAP4430和ATmega168三种CPU的比较 241
4.8 小结 242
习题 243
第5章 指令系统层 246
5.1 指令系统层概述 247
5.1.1 指令系统层的性质 247
5.1.2 存储模式 249
5.1.3 寄存器 250
5.1.4 指令 251
5.1.5 Core i7指令系统层概述 251
5.1.6 OMAP4430 ARM指令系统层概述 253
5.1.7 ATmega168 AVR指令系统层概述 255
5.2 数据类型 256
5.2.1 数值数据类型 257
5.2.2 非数值数据类型 257
5.2.3 Core i7的数据类型 258
5.2.4 OMAP4430 ARM CPU的数据类型 258
5.2.5 ATmega168 AVR CPU的数据类型 259
5.3 指令格式 259
5.3.1 指令格式设计准则 260
5.3.2 扩展操作码 261
5.3.3 Core i7指令格式 263
5.3.4 OMAP4430 ARM CPU指令格式 264
5.3.5 ATmega168 AVR指令格式 266
5.4 寻址 267
5.4.1 寻址方式 267
5.4.2 立即寻址 267
5.4.3 直接寻址 267
5.4.4 寄存器寻址 267
5.4.5 寄存器间接寻址 267
5.4.6 变址寻址 269
5.4.7 基址变址寻址 270
5.4.8 栈寻址 270
5.4.9 转移指令的寻址方式 272
5.4.10 操作码和寻址方式的关系 273
5.4.11 Core i7的寻址方式 274
5.4.12 OMAP4430 ARM CPU的寻址方式 276
5.4.13 ATmega168 AVR的寻址方式 276
5.4.14 寻址方式讨论 276
5.5 指令类型 277
5.5.1 数据移动指令 277
5.5.2 双操作数指令 278
5.5.3 单操作数指令 279
5.5.4 比较和条件转移指令 280
5.5.5 过程调用指令 281
5.5.6 循环控制指令 282
5.5.7 输入/输出指令 283
5.5.8 Core i7指令系统 285
5.5.9 OMAP4430 ARM CPU指令系统 287
5.5.10 ATmega168 AVR指令系统 289
5.5.11 指令集比较 291
5.6 控制流 291
5.6.1 顺序控制流和转移 291
5.6.2 过程 292
5.6.3 协同过程 295
5.6.4 陷阱 297
5.6.5 中断 297
5.7 详细举例:汉诺塔 300
5.7.1 Core i7汇编语言实现的汉诺塔 300
5.7.2 OMAP4430 ARM汇编语言实现的汉诺塔 302
5.8 IA-64体系结构和Itanium 2 303
5.8.1 IA-32的问题 303
5.8.2 IA-64模型:显式并行指令计算 304
5.8.3 减少内存访问 305
5.8.4 指令调度 305
5.8.5 减少条件转移:判定 307
5.8.6 推测加载 308
5.9 小结 309
习题 310
第6章 操作系统层 314
6.1 虚拟内存 314
6.1.1 内存分页 315
6.1.2 内存分页的实现 316
6.1.3 请求调页和工作集模型 319
6.1.4 页置换策略 320
6.1.5 页大小和碎片 321
6.1.6 分段 322
6.1.7 分段的实现 324
6.1.8 Core i7的虚拟内存 326
6.1.9 OMAP4430 ARM CPU的虚拟内存 329
6.1.10 虚拟内存和高速缓存 331
6.2 硬件虚拟化 331
6.3 操作系统层I/O指令 333
6.3.1 文件 333
6.3.2 操作系统层I/O指令的实现 335
6.3.3 目录管理指令 337
6.4 用于并行处理的操作系统层指令 338
6.4.1 进程创建 339
6.4.2 竞争条件 339
6.4.3 使用信号量的进程同步 342
6.5 操作系统实例 345
6.5.1 简介 345
6.5.2 虚拟内存实例 350
6.5.3 操作系统层I/O举例 352
6.5.4 进程管理实例 361
6.6 小结 365
习题 366
第7章 汇编语言层 371
7.1 汇编语言简介 371
7.1.1 什么是汇编语言 372
7.1.2 为什么使用汇编语言 372
7.1.3 汇编语言语句的格式 373
7.1.4 伪指令 374
7.2 宏 376
7.2.1 宏定义、调用和扩展 376
7.2.2 带参数的宏 377
7.2.3 高级特性 378
7.2.4 汇编器中宏处理的实现 378
7.3 汇编过程 379
7.3.1 两趟汇编的汇编器 379
7.3.2 第一趟扫描 379
7.3.3 第二趟扫描 382
7.3.4 符号表 384
7.4 链接和加载 385
7.4.1 链接器的处理过程 386
7.4.2 目标模块的结构 388
7.4.3 绑定时间和动态重定位 389
7.4.4 动态链接 390
7.5 小结 393
习题 393
第8章 并行计算机体系结构 396
8.1 片内并行 397
8.1.1 指令级并行 397
8.1.2 片内多线程 402
8.1.3 单片多处理器 406
8.2 协处理器 410
8.2.1 网络处理器 411
8.2.2 图形处理器 416
8.2.3 加密处理器 418
8.3 共享内存的多处理器 418
8.3.1 多处理器与多计算机 418
8.3.2 内存语义 424
8.3.3 UMA对称多处理器体系结构 426
8.3.4 NUMA多处理器系统 432
8.3.5 COMA多处理器系统 439
8.4 消息传递的多计算机 440
8.4.1 互联网络 441
8.4.2 MPP——大规模并行处理器 443
8.4.3 集群计算 450
8.4.4 多计算机的通信软件 454
8.4.5 调度 456
8.4.6 应用层的共享内存 457
8.4.7 性能 461
8.5 网格计算 465
8.6 小结 467
习题 468
参考文献 471
附录A 二进制数 479
附录B 浮点数 487
附录C 汇编语言程序设计 493
索引 534

前言/序言





《计算机体系结构:概念与实践》 引言 在数字时代的浪潮中,计算机已成为现代社会不可或缺的基石。从我们日常使用的智能手机、个人电脑,到支撑全球经济运转的超级服务器,再到驱动人工智能发展的强大计算集群,这一切的背后都离不开对计算机体系结构深刻而系统的理解。本书《计算机体系结构:概念与实践》旨在为读者提供一个全面、深入的视角,揭示计算机系统从硬件层面到软件抽象的各个层次是如何协同工作,共同构建出我们今天所熟知的计算世界。我们不局限于理论的陈述,更注重通过大量的实践案例和设计思想,让读者真正掌握计算机体系结构的核心原理及其在实际应用中的体现。 本书的定位与目标 本书面向的读者群体广泛,包括但不限于计算机科学与技术、软件工程、电子工程等相关专业的本科生、研究生,以及对计算机底层原理感兴趣的软件开发人员、系统工程师、硬件工程师等。我们的核心目标是: 1. 建立坚实的理论基础: 深入剖析现代计算机体系结构的关键组成部分,包括指令集架构(ISA)、处理器设计(流水线、乱序执行、多核)、存储器层次结构(缓存、主存)、输入/输出(I/O)系统以及互连网络等。 2. 理解设计权衡: 强调在计算机体系结构设计中存在的各种权衡,例如性能与功耗、成本与复杂度、通用性与专用性等,以及这些权衡如何塑造了不同的计算机设计。 3. 培养系统思维: 帮助读者认识到计算机系统是一个多层次、多组件的复杂系统,理解不同层次之间的接口和交互关系,以及它们如何共同影响整体系统的行为。 4. 掌握性能分析与优化: 教授读者如何理解和量化计算机系统的性能,以及如何通过对体系结构特性的理解来进行性能瓶颈分析和优化。 5. 洞察未来发展趋势: 探讨当前和未来计算机体系结构面临的挑战与机遇,例如异构计算、专用加速器、内存计算、量子计算等前沿领域。 本书的主要内容 本书的结构设计力求逻辑清晰,循序渐进,从宏观到微观,从基础到高级,层层递进。 第一部分:基础概念与指令集架构(ISA) 在深入探讨具体硬件实现之前,理解计算机工作的基本语言——指令集架构(ISA)是至关重要的。本部分将: 概述计算机系统概述: 介绍计算机系统的基本组成,包括处理器(CPU)、存储器(Memory)、输入/输出设备(I/O)以及它们之间的互联。我们将从宏观角度审视计算机系统的层次结构,理解软件与硬件之间的抽象边界。 指令集架构(ISA): ISA 是软件与硬件之间的接口。我们将详细讲解 ISA 的重要性,包括指令的类型(数据传送、算术逻辑运算、控制流等)、寻址模式、数据类型以及寄存器模型。我们将探讨 RISC(精简指令集计算机)和 CISC(复杂指令集计算机)的设计哲学及其演变。通过对不同 ISA 的分析,理解其对处理器设计和软件性能的影响。 汇编语言与机器语言: 介绍汇编语言作为机器语言的符号表示,并讲解如何通过汇编指令与硬件进行交互。理解编译和链接过程如何将高级语言转化为可执行的机器码。 第二部分:处理器设计与性能 处理器是计算机的心脏,其设计直接决定了计算机的计算能力。本部分将深入剖析现代处理器的设计技术: 指令流水线: 学习流水线技术如何通过将指令执行过程分解为多个阶段,实现指令级别的并行,从而提高指令吞吐量。我们将分析流水线中的冒险(结构冒险、数据冒险、控制冒险)及其解决方法,例如转发(Forwarding)和分支预测(Branch Prediction)。 动态调度与超标量处理: 介绍动态调度技术,如 Tomasulo 算法,如何通过重排序指令来处理数据依赖,实现指令级并行。进一步讲解超标量处理器如何通过多条流水线同时执行多条指令,以及其设计挑战。 多核处理器: 随着摩尔定律的放缓,多核处理器已成为主流。我们将探讨多核处理器的设计,包括核心之间的通信、缓存一致性(Cache Coherence)以及共享存储器模型。理解多核架构如何通过并行处理来提升整体性能,以及软件如何适应多核环境。 指令集架构的演进与扩展: 探讨指令集架构在性能提升、功耗降低以及支持新兴计算范式(如向量指令、AI 加速指令)方面的演进,例如 SIMD(单指令多数据)指令集。 第三部分:存储器系统 高效的存储器系统是发挥处理器性能的关键。本部分将详细介绍存储器层次结构的设计与优化: 存储器层次结构: 阐述寄存器、缓存(Cache)、主存储器(RAM)和磁盘存储之间的层次关系,以及它们在访问速度、容量和成本上的权衡。理解局部性原理(Temporal Locality 和 Spatial Locality)是缓存设计的基础。 缓存设计: 深入探讨缓存的工作原理,包括映射方式(直接映射、组相联、全相联)、块大小、写策略(写回、写通)、写分配策略以及替换算法(LRU、FIFO)。我们将分析缓存未命中(Cache Miss)的原因及其对性能的影响,并介绍多级缓存的设计。 虚拟存储器: 讲解虚拟存储器如何通过内存管理单元(MMU)和页表,为每个进程提供独立的、连续的地址空间,以及其在内存保护、多任务处理和程序加载中的作用。分析缺页中断(Page Fault)的处理过程。 存储器一致性与并行性: 在多处理器系统中,如何保证多个处理器对共享数据的访问顺序一致性是一个重要问题。本部分将讨论存储器模型(Memory Model)和缓存一致性协议(如 MESI)。 第四部分:I/O 系统与互连网络 高效的数据输入输出和处理器之间的通信是现代计算机系统不可或缺的部分。 输入/输出(I/O)系统: 介绍不同类型的 I/O 设备(磁盘、网络接口、显示器等)及其接口标准。讲解 I/O 的工作方式,包括程序 I/O、中断驱动 I/O 和直接存储器访问(DMA)。分析 I/O 性能的瓶颈以及如何进行优化。 总线与互连网络: 探讨处理器、存储器和 I/O 设备之间的数据传输路径,包括系统总线、PCIe 等高速互连技术。对于大规模并行系统,我们将介绍网络拓扑结构、路由算法和流量控制等互连网络的设计概念。 第五部分:新兴趋势与实践 计算机体系结构领域在不断发展,以应对新的计算需求和技术挑战。本部分将展望未来: 异构计算与专用加速器: 讨论 GPU、FPGA、ASIC 等专用加速器如何在特定任务上提供远超通用 CPU 的性能和能效。分析异构计算平台的编程模型和体系结构挑战。 功耗与能效: 随着计算能力的增长,功耗管理和能效成为关键的设计指标。我们将探讨低功耗设计技术,以及如何在性能和功耗之间取得平衡。 面向特定应用的体系结构: 探讨为人工智能(AI)、大数据分析、图形处理等特定应用设计的定制化体系结构,以及这些设计如何利用硬件特性来加速特定算法。 未来展望: 简要介绍内存计算(In-memory Computing)、神经形态计算(Neuromorphic Computing)、量子计算等可能颠覆现有计算模式的未来技术方向。 本书的特色 理论与实践相结合: 本书不仅提供详实的理论讲解,还通过大量的图示、表格和清晰的解释,帮助读者理解抽象概念。 循序渐进的学习路径: 内容组织由浅入深,确保读者能够逐步建立对复杂体系结构的认知。 强调设计权衡: 深入分析不同设计选择背后的原因和优劣,培养读者的批判性思维和工程实践能力。 面向前沿: 涵盖了当前最热门和最具潜力的计算机体系结构发展方向。 结论 《计算机体系结构:概念与实践》将带领您踏上一段探索计算机系统内在奥秘的旅程。通过学习本书,您将不仅能够理解现有的计算机是如何工作的,更能为未来计算机系统的设计和优化打下坚实的基础。我们相信,掌握计算机体系结构,就是掌握了驱动数字时代前进的核心技术。

用户评价

评分

这本书的包装比我想象中要厚实一些,封面设计也挺有质感的。拿到手的时候就迫不及待地翻了翻,纸张的触感很舒服,不是那种廉价的滑腻感。印刷字体清晰,排版布局也比较合理,看起来不会眼花缭乱。封面上的书名和副标题都印得很端正,没有出现模糊或者错位的情况。封底有一些关于作者和本书内容的简要介绍,看得出来是经过仔细斟酌的,用词也比较专业。整体而言,在收到书的初印象上,这本书给我留下了一个扎实、专业的印象,让人觉得物有所值。虽然还没开始深入阅读,但仅从外观和触感上,就觉得它是一本值得细细品味的书籍。这种实体书特有的质感,是电子版无法完全替代的。希望里面的内容也能像它的外观一样令人满意,不辜负这份沉甸甸的期待。

评分

我个人觉得,这本书的叙述风格非常吸引人,充满了作者的个人风格和见解。它不像某些教科书那样死板,而是带着一种引导式的探索感,仿佛作者就在你耳边娓娓道来,将一个个计算机世界的奥秘娓娓道来。他善于用一些生活中的例子来解释抽象的计算机概念,比如将CPU的运作比作一个高效的工厂流水线,将内存的访问比作一个信息检索的图书馆。这种方式极大地降低了学习门槛,让我在轻松愉悦的氛围中,逐渐深入理解那些原本以为高深莫测的技术。同时,作者的语言也非常严谨,在风趣幽默的同时,又不失科学的准确性。他鼓励读者质疑,鼓励读者探索,这种开放性的教育理念,让我觉得这本书不仅仅是一本教材,更像是一位循循善诱的良师益友。

评分

这本书的逻辑结构处理得非常出色,使得整个学习过程条理清晰,循序渐进。从最基础的数字逻辑开始,它逐步深入到更复杂的计算机系统架构,每一步都建立在前一步的基础上,确保读者能够扎实地掌握每一个概念。我尤其欣赏它在介绍不同组件时,是如何将它们有机地联系起来,展示它们是如何协同工作的。例如,当介绍CPU的设计时,它会立刻联系到内存的读写机制,以及I/O设备是如何与CPU进行交互的。这种全局性的视角,让我能够从宏观上把握整个计算机系统的构成,而不是孤立地看待每一个部分。这种设计使得学习过程不会感到突兀或断裂,而是像在攀登一座精心设计的阶梯,每一步都稳稳当当,最终抵达顶峰。

评分

这本书给我最直观的感受是它的内容深度。初翻,我被里面详尽的图表和精炼的文字所吸引。每一页都仿佛蕴含着作者多年的心血和对计算机底层运作机制的深刻洞察。那些细致入微的解释,将原本晦涩难懂的概念一一剖析,化繁为简。我特别喜欢书中对某个特定指令集的工作原理的阐述,它通过一系列生动的类比,将抽象的二进制代码和逻辑门电路转化为读者能够轻松理解的图景。这种将复杂转化为简单的能力,正是衡量一本优秀技术书籍的重要标准。而且,它并没有止步于理论的介绍,而是通过大量的实例和练习题,引导读者去动手实践,去真正掌握这些知识。这种理论与实践相结合的学习方式,对于我这样想要深入理解计算机原理的读者来说,无疑是宝贵的财富。

评分

这本书的价值远不止于其内容本身,更在于它所提供的学习体验。它非常注重培养读者的批判性思维和解决问题的能力。书中的每一个章节,都会留下一些开放性的问题,鼓励读者去思考“为什么”,去探索“有没有更好的方法”。这种设计,让我不仅仅是知识的接收者,更是知识的探索者。我常常在阅读完一章后,会花额外的时间去思考书中提出的问题,尝试自己去解答,或者去查阅更多的资料。这种主动学习的方式,极大地提升了我的学习效率和对知识的理解深度。而且,在某些关键的章节,作者还会引用一些历史性的研究,介绍某些技术是如何一步步发展而来的,这让我对计算机科学的发展历程有了更深刻的认识,也更加敬畏这些伟大的先驱。

评分

我基础太差,有点难

评分

服务好发货快

评分

这个系列很棒,推荐相关专业看一下

评分

送货非常快,包装非常好,就觉得京东最好了

评分

还没看 书应该是二手的 也懒得换了

评分

很好的书!

评分

很好的数,买了很多书,不一定看得完,就当打发时间吧!

评分

好书,好好看!

评分

包装还行,书也很新

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.cndgn.com All Rights Reserved. 新城书站 版权所有