沃新书屋 - 计算机体系结构精髓
本书资料更新时间:2025-05-04 02:18:43

计算机体系结构精髓

计算机体系结构精髓精美图片

计算机体系结构精髓书籍详细信息


内容简介:

暂无相关简介,正在全力查找中!


书籍目录:

出版者的话 译者序 前言 关于作者 第1章 简介及概览 1 1.1 体系结构的重要性 1 1.2 学习基础知识 1 1.3 本书结构 1 1.4 一笔带过的内容 2 1.5 术语:体系结构和设计 2 1.6 小结 2 第一部分 基础知识 第2章 数字逻辑基础 4 2.1 引言 4 2.2 数字计算装置 4 2.3 电气术语:电压和电流 4 2.4 晶体管 5 2.5 逻辑门 5 2.6 使用晶体管实现的“与非”逻辑门电路 7 2.7 表示逻辑门的符号 8 2.8 逻辑门互连的例子 8 2.9 实现二进制加法的数字电路 10 2.10 多逻辑门的集成电路 10 2.11 不只需要组合逻辑电路 11 2.12 维持状态的电路 11 2.13 传播延迟 12 2.14 使用锁存器构建存储器 12 2.15 触发器和波形图 13 2.16 二进制计数器 14 2.17 时钟和时序 15 2.18 反馈的重要概念 17 2.19 启动序列 18 2.20 软件迭代与硬件复制 18 2.21 门和芯片的最简化 19 2.22 使用闲置门 19 2.23 配电和散热 20 2.24 时序和时钟域 20 2.25 无时钟逻辑 21 2.26 电路规模和摩尔定律 21 2.27 电路板和层 22 2.28 抽象层次 23 2.29 小结 23 习题 23 第3章 数据和程序的表示 25 3.1 引言 25 3.2 数字逻辑与抽象的重要性 25 3.3 位和字节的定义 25 3.4 字节大小和可能的值 25 3.5 二进制位权表示法 26 3.6 位序 27 3.7 十六进制记法 28 3.8 十六进制和二进制常数记法 29 3.9 字符集 29 3.10 Unicode 30 3.11 无符号整数、溢出和下溢 30 3.12 给位和字节编号 31 3.13 有符号二进制整数 31 3.14 一个补码数字的例子 32 3.15 符号扩展 33 3.16 浮点数 33 3.17 IEEE浮点值的范围 34 3.18 特殊值 35 3.19 二进制编码的十进制表示 35 3.20 有符号数、分数和压缩BCD表示法 36 3.21 数据聚合 36 3.22 程序的表示 37 3.23 小结 37 习题 37 第二部分 处理器 第4章 处理器和计算引擎的多样性 40 4.1 引言 40 4.2 两种基本的体系结构 40 4.3 哈佛与冯·诺依曼体系结构 40 4.4 处理器的定义 41 4.5 处理器的范围 41 4.6 分层结构和计算引擎 42 4.7 传统处理器的结构 43 4.8 处理器的分类和角色 44 4.9 处理器技术 44 4.10 存储程序 45 4.11 取指–执行周期 45 4.12 程序转换 46 4.13 时钟速率和指令速率 46 4.14 控制:启动和停止 47 4.15 启动取指–执行周期 47 4.16 小结 48 习题 48 第5章 处理器类型和指令集 49 5.1 引言 49 5.2 数学能力、便利性和成本 49 5.3 指令集架构 49 5.4 操作码、操作数和结果 50 5.5 典型的指令格式 50 5.6 可变长度指令与固定长度指令 50 5.7 通用寄存器 51 5.8 浮点寄存器和寄存器标识 51 5.9 使用寄存器编程 51 5.10 寄存器存储体 52 5.11 复杂指令集和精简指令集 53 5.12 RISC设计和执行流水线 53 5.13 流水线和指令延迟 54 5.14 引起流水线停顿的其他原因 55 5.15 对程序员的影响 56 5.16 编程、停顿和无操作指令 56 5.17 转发 56 5.18 操作类型 57 5.19 程序计数器、取指–执行以及分支 57 5.20 子程序调用、参数以及寄存器窗口 58 5.21 一个示例指令集 59 5.22 极简化的指令集 61 5.23 正交性原则 61 5.24 条件码和条件分支 62 5.25 小结 62 习题 62 第6章 数据通路和指令执行 64 6.1 引言 64 6.2 数据通路 64 6.3 示例指令集 64 6.4 内存中的指令 66 6.5 移到下一条指令 67 6.6 取指令 68 6.7 解码指令 69 6.8 连接到寄存器单元 69 6.9 控制和协调 70 6.10 算术运算和复用 70 6.11 涉及存储器中数据的操作 71 6.12 执行过程的示例 72 6.13 小结 73 习题 73 第7章 操作数寻址和指令表示 75 7.1 引言 75 7.2 零、一、二或三地址设计 75 7.3 每指令零操作数 75 7.4 每指令单操作数 76 7.5 每指令两操作数 76 7.6 每指令三操作数 77 7.7 操作数来源和立即数 77 7.8 冯·诺依曼体系结构的瓶颈 77 7.9 显式和隐式操作数编码 78 7.10 组合多个值的操作数 79 7.11 权衡操作数的选择 79 7.12 内存中的值和间接引用 80 7.13 操作数寻址模式的示例 80 7.14 小结 81 习题 81 第8章 CPU:微码、保护和处理器模式 83 8.1 引言 83 8.2 中央处理器 83 8.3 CPU的复杂性 83 8.4 执行模式 84 8.5 向后兼容性 84 8.6 改变模式 84 8.7 特权和保护 85 8.8 多级保护 85 8.9 微码指令 86 8.10 微码变体 87 8.11 微码的优势 87 8.12 FPGA和指令集的改变 88 8.13 垂直微码 88 8.14 水平微码 88 8.15 水平微码的例子 89 8.16 水平微码程序示例 91 8.17 需要多个周期的操作 91 8.18 水平微码和并行执行 92 8.19 前瞻性和高性能执行 92 8.20 并行和执行顺序 93 8.21 乱序指令执行 93 8.22 条件分支和分支预测 94 8.23 对程序员的影响 94 8.24 小结 94 习题 95 第9章 汇编语言和编程范式 96 9.1 引言 96 9.2 高级程序设计语言的特征 96 9.3 低级程序设计语言的特征 97 9.4 汇编语言 97 9.5 汇编语言的语法和操作码 98 9.6 操作数顺序 99 9.7 寄存器名称 100 9.8 操作数类型 100 9.9 汇编语言的编程范式和语言风格 101 9.10 用汇编语言实现if语句 101 9.11 用汇编语言实现if-then-else语句 102 9.12 用汇编语言实现for循环语句 102 9.13 用汇编语言实现while循环语句 103 9.14 用汇编语言实现子程序调用 103 9.15 用汇编语言实现带参数的子程序调用 103 9.16 对程序员的影响 104 9.17 函数调用的汇编语言实现代码 104 9.18 汇编语言与高级语言间的交互 105 9.19 变量和存储的汇编代码 105 9.20 汇编语言代码样例 106 9.21 两次扫描的汇编器 110 9.22 汇编语言的宏 111 9.23 小结 113 习题 113 第三部分 存储器 第10章 内存与存储器 116 10.1 引言 116 10.2 定义 116 10.3 内存的关键方面 116 10.4 内存技术的特点 116 10.5 内存层级的重要概念 117 10.6 指令和数据存储 118 10.7 提取–保存范式 118 10.8 小结 119 习题 119 第11章 物理内存和物理寻址 120 11.1 引言 120 11.2 计算机内存的特点 120 11.3 静态和动态RAM技术 120 11.4 内存技术的两个主要度量 121 11.5 密度 121 11.6 读写性能的分离 121 11.7 延迟和内存控制器 122 11.8 同步和多数据速率技术 122 11.9 内存组织 123 11.10 内存访问和内存总线 123 11.11 字、物理地址和内存传输 124 11.12 物理内存操作 124 11.13 内存字大小和数据类型 125 11.14 字节寻址和将字节映射到字 125 11.15 使用2的幂 126 11.16 字节对齐和编程 126 11.17 内存大小和地址空间 127 11.18 使用字寻址的编程 127 11.19 内存大小和2的幂 128 11.20 指针和数据结构 128 11.21 内存转储 129 11.22 间接寻址和间接操作数 129 11.23 带有独立控制器的多个内存 130 11.24 内存的存储体 130 11.25 交叉存取 131 11.26 内容可寻址存储器 132 11.27 三态内容可寻址存储器 133 11.28 小结 133 习题 133 第12章 缓存器和缓存 135 12.1 引言 135 12.2 在存储层级上的信息传播 135 12.3 缓存的定义 135 12.4 缓存器的特征 135 12.5 缓存术语 136 12.6 最好和最坏情况下的缓存性能 136 12.7 一个典型请求序列的缓存性能 137 12.8 缓存替换策略 138 12.9 最近最少使用替换策略 138 12.10 多级缓存层级结构 138 12.11 预加载缓存 139 12.12 和内存一块使用的缓存 139 12.13 物理内存缓存 140 12.14 写直通策略和写回策略 140 12.15 缓存一致性 141 12.16 L1、L2和L3缓存 141 12.17 L1、L2和L3缓存的大小 142 12.18 指令和数据缓存 142 12.19 改良的哈佛体系结构 143 12.20 内存缓存的实现 143 12.21 直接映射的内存缓存 144 12.22 使用2的幂提高效率 145 12.23 直接映射缓存的硬件实现 146 12.24 组相联的内存缓存 147 12.25 对程序员的影响 148 12.26 小结 148 习题 148 第13章 虚拟内存技术与虚拟寻址 150 13.1 引言 150 13.2 虚拟内存的定义 150 13.3 内存的管理单元和地址空间 150 13.4 多个物理内存系统的接口 150 13.5 地址转换或者地址映射 151 13.6 避免算术计算 152 13.7 不连续的地址空间 152 13.8 虚拟内存的动机 153 13.9 多虚拟地址空间和多道程序 154 13.10 动态地创建虚拟地址空间 155 13.11 基址–界限寄存器 155 13.12 改变虚拟地址空间 155 13.13 虚拟内存和保护 156 13.14 分段 156 13.15 请求分页 157 13.16 请求分页的硬件和软件 157 13.17 页替换 157 13.18 分页术语和数据结构 158 13.19 分页系统中的地址转换 158 13.20 使用2的幂 159 13.21 存在位、使用位和修改位 159 13.22 页表的存储 160 13.23 分页效率和转换后备缓冲区 160 13.24 对程序员的影响 161 13.25 虚拟内存和缓存间的关系 162 13.26 虚拟内存缓存和缓存刷新 162 13.27 小结 163 习题 164 第四部分 输入和输出 第14章 输入/输出的概念和术语 166 14.1 引言 166 14.2 输入和输出设备 166 14.3 外部设备的控制 166 14.4 数据传输 167 14.5 串行与并行数据传输 167 14.6 自同步数据 168 14.7 全双工和半双工交互 168 14.8 接口的吞吐率和延迟 168 14.9 多路复用的基本思想 169 14.10 每个接口支持多个设备 169 14.11 从处理器角度看I/O 170 14.12 小结 170 习题 170 第15章 总线及总线架构 171 15.1 引言 171 15.2 总线的定义 171 15.3 处理器、I/O设备以及总线 171 15.4 物理连接 172 15.5 总线接口 173 15.6 控制、地址和数据线 173 15.7 提取–保存范式 174 15.8 提取–保存和总线宽度 174 15.9 多路复用 175 15.10 总线的宽度和数据项的大小 176 15.11 总线地址空间 176 15.12 潜在错误 177 15.13 地址的配置和插槽 177 15.14 多总线的问题 178 15.15 对设备使用提取–保存 178 15.16 接口的操作 179 15.17 不对称赋值和总线错误 179 15.18 统一内存和设备寻址 180 15.19 总线地址空间中的“洞” 180 15.20 地址映射 180 15.21 总线的程序接口 181 15.22 总线之间的桥 182 15.23 主总线和辅助总线 182 15.24 对程序员的影响 183 15.25 总线的替代者——交换结构 183 15.26 小结 184 习题 185 第16章 可编程的I/O和中断驱动的I/O 186 16.1 引言 186 16.2 I/O范式 186 16.3 可编程的I/O 186 16.4 同步 186 16.5 轮询 187 16.6 轮询的代码 187 16.7 控制和状态寄存器 189 16.8 使用结构来定义CSR 190 16.9 处理器的使用和轮询 190 16.10 中断驱动的I/O 191 16.11 中断机制和取指–执行 191 16.12 处理中断 192 16.13 中断向量 192 16.14 中断初始化和禁用中断 193 16.15 中断一个中断处理程序 193 16.16 中断的配置 194 16.17 动态的总线连接和可插拔设备 194 16.18 中断、性能和智能设备 195 16.19 直接内存访问 195 16.20 用缓冲链扩展DMA 196 16.21 分散读操作和聚集写操作 196 16.22 操作链 197 16.23 小结 197 习题 198 第17章 程序员视角的设备、输入/输出和缓冲 199 17.1 引言 199 17.2 设备驱动程序的定义 199 17.3 设备的独立、封装和隐藏 199 17.4 设备驱动程序的概念 200 17.5 两类设备 200 17.6 设备驱动程序的示例流程 201 17.7 输出操作队列 202 17.8 强制设备发出中断 202 17.9 输入操作队列 203 17.10 异步设备驱动程序和互斥 203 17.11 从应用程序看I/O 204 17.12 库/操作系统二元论 205 17.13 操作系统支持的I/O操作 205 17.14 I/O操作的成本 205 17.15 减少系统调用的开销 206 17.16 缓冲的关键概念 206 17.17 缓冲输出的实现 207 17.18 清空缓冲区 208 17.19 缓冲输入 208 17.20 缓冲的效率 209 17.21 与缓存的关系 209 17.22 一个例子:C语言的标准I/O库 209 17.23 小结 209 习题 210 第五部分 高级主题 第18章 并行 212 18.1 引言 212 18.2 并行性和流水线架构 212 18.3 并行的特征 212 18.4 微观与宏观 212 18.5 微观并行的例子 213 18.6 宏观并行的例子 213 18.7 对称与非对称 214 18.8 细粒度并行与粗粒度并行 214 18.9 显式并行与隐式并行 214 18.10 并行体系结构的类型(弗林分类法) 214 18.11 单指令流单数据流 215 18.12 单指令流多数据流 215 18.13 多指令流多数据流 216 18.14 通信、协同和竞争 218 18.15 多处理器的性能 218 18.16 对程序员的影响 220 18.17 冗余并行体系结构 221 18.18 分布式集群计算机 222 18.19 现代超级计算机 222 18.20 小结 223 习题 223 第19章 数据流水线 225 19.1 引言 225 19.2 流水线的概念 225 19.3 软件流水线 226 19.4 软件流水线的性能和开销 227 19.5 硬件流水线 227 19.6 硬件流水线如何提升性能 228 19.7 何时使用流水线 229 19.8 处理过程的概念划分 230 19.9 流水线架构 231 19.10 流水线的建立、延迟以及排空时间 231 19.11 超流水线架构的定义 231 19.12 小结 232 习题 232 第20章 功率与能耗 233 20.1 引言 233 20.2 功率的定义 233 20.3 能耗的定义 233 20.4 数字电路的功耗 234 20.5 CMOS数字电路的切换功耗 234 20.6 冷却、功耗密度和功率墙 235 20.7 能耗使用 236 20.8 功率管理 236 20.9 能耗使用的软件控制 238 20.10 选择何时睡眠和何时唤醒 239 20.11 睡眠模式和网络设备 240 20.12 小结 240 习题 241 第21章 评估性能 242 21.1 引言 242 21.2 测量计算能力和性能 242 21.3 计算能力的测量 242 21.4 应用相关的指令数 243 21.5 指令混合 244 21.6 标准化测试程序 244 21.7 I/O和内存瓶颈 245 21.8 硬件与软件的权衡 245 21.9 选择拟优化的部件——阿姆达尔定律 246 21.10 阿姆达尔定律和并行系统 246 21.11 小结 246 习题 247 第22章 体系结构的例子和层次 248 22.1 引言 248 22.2 体系结构的层次 248 22.3 系统级架构——个人电子计算机 248 22.4 总线互连和桥接 249 22.5 控制器芯片和物理架构 249 22.6 虚拟总线 250 22.7 连接速率 251 22.8 桥接功能和虚拟总线 252 22.9 板级架构 252 22.10 芯片级架构 253 22.11 片上功能单元的结构 254 22.12 小结 254 习题 255 第23章 硬件模块化 256 23.1 引言 256 23.2 模块化的动机 256 23.3 软件模块化 256 23.4 子程序的参数化调用 257 23.5 硬件扩展和并行 257 23.6 基本块复制 257 23.7 示例设计(重启器) 257 23.8 重启器的高层次设计 258 23.9 适应各种尺寸的构建块 258 23.10 并行互连 258 23.11 互连的例子 259 23.12 模块选择 259 23.13 小结 260 习题 260 附录A 用于计算机体系结构课程的实验练习 261 附录B 布尔代数化简法则 272 附录C x86汇编语言快速入门 273 附录D ARM寄存器定义和调用序列 286

作者简介:

道格拉斯·科莫(Douglas Comer) 世界知名的计算机网络和TCP/IP专家,普渡大学计算机科学杰出教授,ACM会士,获得了包括USENIX终身成就奖在内的众多奖项。曾担任思科公司首席研究副总裁,CSNET技术委员会主席,DARPA分布式系统架构委员会主席,以及《Software—Practice And Experience》期刊主编。他撰写了一系列突破性的教科书,这些书被翻译成16种语言,在工业界和学术界影响甚广。

其它内容:

暂无其它内容!


下载点评

  • MOBI(518+)
  • 可检索(460+)
  • 扫描(220+)
  • 科研(348+)
  • 可听读(933+)
  • 绝版(588+)
  • 免密(642+)
  • 珍藏(114+)
  • 分卷(955+)
  • 惊喜(803+)
  • 如获至宝(619+)
  • 原版(988+)
  • 语言啰嗦(799+)
  • 注释(749+)
  • 云同步(932+)
  • 重排(865+)
  • 强推(1286+)
  • 实用(347+)

下载评论

  • 用户1724503836: ( 2024-08-24 20:50:36 )

    优质的期刊资源,音频设计提升阅读体验,操作便捷。

  • 用户1725384355: ( 2024-09-04 01:25:55 )

    互动版电子书下载稳定,支持EPUB/AZW3格式导出,推荐下载。

  • 用户1726304394: ( 2024-09-14 16:59:54 )

    无损版本报告资源,PDF/TXT格式适配各种阅读设备,值得收藏。

  • 用户1744819310: ( 2025-04-17 00:01:50 )

    双语版电子书下载无延迟,支持EPUB/AZW3格式导出,操作便捷。

  • 用户1728514773: ( 2024-10-10 06:59:33 )

    流畅下载AZW3/TXT文件,高清小说推荐收藏,操作便捷。


相关书评

暂时还没有人为这本书评论!