编写卓越代码所需的知识不是一本书就能够完全涵盖的。因此,本书聚焦于追求最佳代码所需要的计算机组成知识,提供90%的解决方案。剩下的10%需要额外学习,我的建议如下:
学习汇编语言 。至少熟练掌握一种汇编语言,它的很多细节通过单独学习计算机组成是无法掌握的。除非有使用汇编语言开发软件系统的计划,否则没有必要在软件的目标系统上学习汇编语言。最好在一台PC上学习80x86汇编语言,因为因特尔平台上有很多非常优秀的软件工具,我们可以借助于这些工具学习因特尔体系结构的汇编语言(比如高级汇编语言),这些工具在其他平台上找不到。学习汇编语言的目的并不是为了编写汇编代码,而是为了学习汇编范式。理解了80x86汇编语言,其他CPU(比如ARM或者IA-64系列)是如何运转的也就清楚了。
学习高级计算机体系结构。 计算机组成是计算机体系结构的一个子集,限于篇幅,本书没有覆盖这两个主题的全部内容。虽然不一定要知道如何设计CPU,但学习计算机体系结构对于理解一些本书未尽事宜有帮助。