尽管要写出一本能够同时满足电子工程系、电子与计算机工程系和计算机科学系的教材几乎是不可能的,但本书进行了有效的折中,它为电子工程系和电子与计算机工程系提供了足够的门级和部件级的知识,而这些内容也没有高深到使计算机科学系的学生望而却步的程度。
本书并不是一部传统的计算机体系结构教材。它超出了传统课程的范畴,涵盖了许多有趣、重要且相关的内容。作者的-一个重要目标是提供适合学生吸收的知识。很多时候,学生大学毕业后会发现他们的知识体系中有令人难堪的巨大空白。据我了解,目前还没有一本教材采用这种方法。例如,所有计算机体系结构教材都会介绍浮点运算,但却很少会讨论用于存储大量文本和视频信息的数据压缩的代码,更不会介绍MP3数据压缩这项工业界的核心技术。类似地,计算机体系结构教材很少覆盖面向多媒体应用的体系结构支撑等内容。
目录简要
下表列出了本书的各个章节,指明了它们的内容是怎样符合学习计划的,以及这些章节中是否含有可作为初级或高级背景知识的内容。
内容概要
第一部分:起始篇,这部分介绍了一些使读者能够讨论计算机体系结构的基本内容。第1章采用了一种不常见的方法来介绍计算机。笔者首先提出一个问题,接下来解决这个问题,然后设计出一个系统一一计算机来实现解决方案。我的目的是要说明计算机近似地模拟了人们解决问题的方法。因为计算机体系结构的很多内容是相互关联的,所以我给出了计算机系统的简要概述,这样就可以在详细讨论某些内容之前使用这些内容,比如Cache。
读者会看到将信息以二进制形式编码和表示的方法,例如书中介绍了有符号整数和无符号整数在计算机上的运算方法,描述了如何用浮点数表示非常大和非常小的值,还简要介绍了更复杂的数学函数。
第二部分:指令集体系结构,这是本课程的核心,包括三章内容。笔者首先介绍指令集的概念,然后讨论计算机体系结构的一些重要问题,例如计算机能够直接访问和处理的数据结构。第3章介绍ARM系列微处理器,它拥有真正简洁的体系结构,而且它的一些特点引出了几个有趣的话题,例如仅当满足特定条件时指令才会执行的条件执行,这些在该章中都有讨论。如果本书能够覆盖计算机体系结构的所有变化自然最好,但除非你决定将自己的后半生奉献给这一工作,否则不可能有足够的时间。大家将在第4章看到计算机体系结构的一些变化,例如能够极大地简化对复杂数据结构访问的存储器间接寻址模式,以及能够将传统代码压缩为其正常大小的一小半的特殊压缩编码处理器。
第二部分的最后一章将介绍处理器适应视频编码和解码等现代多媒体应用的方法。这一章还会简要介绍多媒体处理的背景,并解释为何高性能计算会如此重要。
第三部分:组成和效能,这部分与计算机组成有关;即,计算机是如何工作的以及它在内部是如何组织的。
第6章介绍计算机是如何工作的。这一章首先介绍微程序设计,这项技术使得设计任意复杂的计算机成为可能,目前它依然用于实现Intel IA32处理器中一些很复杂的指令。接下来将介绍流水线,这是所有现代计算机设计的基础。流水线就像工业上的生产线,指令在流水线上逐条执行,就像流过计算机-一样。然而,流水线在遇到非顺序执行的指令(分支)时会出现问题。这章的最后部分将介绍如何处理分支指令引起的问题。
需要获取这份《计算机组成原理》370页文档的小伙伴可以直接点赞后私信(文档)即可获取哦!