the MIX architecture. Knuth considers the use of assembly language necessary for the speed and memory usage of algorithms to be judged. Critical response Knuth was awarded the 1974 Turing Award "for his major contributions to the analysis of algorithms […], and in particular for his contributions to the 'art of computer programming' through his well-known books in a continuous series by this title." American Scientist has included this work among "100 or so Books that shaped a Century of Science", referring to the twentieth century, Covers of the third edition of Volume 1 quote Bill Gates as saying, "If you think you're a really good programmer… read (Knuth's) Art of Computer Programming… You should definitely send me a résumé if you can read the whole thing." The New York Times referred to it as "the profession's defining treatise". Volumes Completed Volume 1 – Fundamental Algorithms Chapter 1 – Basic concepts Chapter 2 – Information structures Volume 2 – Seminumerical Algorithms Chapter 3 – Random numbers Chapter 4 – Arithmetic Volume 3 – Sorting and Searching Chapter 5 – Sorting Chapter 6 – Searching Volume 4A – Combinatorial Algorithms Chapter 7 – Combinatorial searching (part 1) Volume 4B – Combinatorial Algorithms Chapter 7 – Combinatorial searching (part 2) Planned Volume 4C... – Combinatorial Algorithms (chapters 7 & 8 released in several subvolumes) Chapter 7 – Combinatorial searching (continued) Chapter 8 – Recursion Volume 5 – Syntactic Algorithms Chapter 9 – Lexical scanning (also includes string search and data compression) Chapter 10 – Parsing techniques Volume 6 – The Theory of Context-Free Languages Volume 7 – Compiler Techniques Chapter outlines Completed Volume 1 – Fundamental Algorithms Chapter 1 – Basic concepts 1.1. Algorithms 1.2. Mathematical Preliminaries 1.2.1. Mathematical Induction 1.2.2. Numbers, Powers, and Logarithms 1.2.3. Sums and Products 1.2.4. Integer Functions and Elementary Number Theory 1.2.5. Permutations and Factorials 1.2.6. Binomial Coefficients 1.2.7. Harmonic Numbers 1.2.8. Fibonacci Numbers 1.2.9. Generating Functions 1.2.10. Analysis of an Algorithm 1.2.11. Asymptotic Representations 1.2.11.1. The O-notation 1.2.11.2. Euler's summation formula 1.2.11.3. Some asymptotic calculations 1.3 MMIX (MIX in the hardback copy but updated by fascicle 1) 1.3.1. Description of MMIX 1.3.2. The MMIX Assembly Language 1.3.3. Applications to Permutations 1.4. Some Fundamental Programming Techniques 1.4.1. Subroutines 1.4.2. Coroutines 1.4.3. Interpretive Routines 1.4.3.1. A MIX simulator 1.4.3.2. Trace routines 1.4.4. Input and Output 1.4.5. History and Bibliography Chapter 2 – Information Structures 2.1. Introduction 2.2. Linear