本文档的原始英文版下载地址为:
https://cherry-creek.net/book/fasc1.pdf
Fascicle Number One is about MMIX, the long-promised replacement for MIX. Thirty years have passed since the MIX computer was designed, and computer architecture has been converging during those years towards a rather different style of machine. Therefore I decided in 1990 to replace MIX with a new computer that would contain even less saturated fat than its predecessor.
卷一的内容是关于MMIX的,它是MIX的替代技术,这是我很久以前的一个承诺。自从MIX计算机诞生以来,三十年过去了,在这段时间里,计算机体系结构已经逐渐汇聚到一个不同风格的体系结构。所以我在1990年代就决定设计一个新的计算机来取代MIX。和它的前任相比,这台新计算机更加精炼,没有多余的脂肪。
Many readers are no doubt thinking, "Why does Knuth replace MIX by another machine instead of just sticking to a high-level programming language? Hardly anybody uses assemblers these days." Such people are entitled to their opinions, and they need not bother reading the machine-language parts of my books. But the reasons for machine language that I gave in the preface to Volume 1, written in the early 1960s, remain valid today:
Moreover, if I did use a high-level language, what language should it be? In the 1960s I would probably have chosen Algol W; in the 1970s, I would then have had to rewrite my books using Pascal; in 1980s, I would surely have changed everything to C; in the 1990s, I would have had to switch to C++ and then probably to Java. In the 2000s, yet another language will not doubt be derigueur. I cannot afford the time to rewrite my books as languages go in and out of fashion; languages aren't the point of my books, the point is rather what you can do in your favaorite language. My books focus on timeless truths.
更重要的是,如果我决定使用一个高级编程语言,我应该用哪种编程语言呢?在1960年代,我可能会选择Algol W。在1970年代,我可能会使用Pacal重写我的书。在1980年代,我肯定会把我的书中的所有东西都变成C语言。到了1990年代,我可能会转向C++或者然后转向Java。到了2000年代,我肯定要使用当时流行的编程语言。我没有时间根据编程语言的流行或者不流行来重写我的书。编程语言不是我的著作的关注点,关键要点是你能使用你喜欢的编程语言做什么。我的书集中在永恒的真理。