Questions tagged [taocp]

The Art of Computer Programming (acronym: TAOCP) is a comprehensive monograph written by Donald Knuth that covers many kinds of programming algorithms and their analysis.

The Art of Computer Programming (acronym: TAOCP) is a comprehensive monograph written by Donald Knuth that covers many kinds of programming algorithms and their analysis.

More details:

6 questions
52
votes
8 answers

I'm a CS student, and honestly, I don't understand Knuth's books

I stumbled upon this quote from Bill Gates: "You should definitely send me a resume if you can read the whole thing." He was talking about The Art of Programming books. So I was pretty curious and want to read it all. But honestly, I don't…
Rho
  • 673
  • 1
  • 6
  • 6
21
votes
4 answers

Why does Donald Knuth write TAOCP using assembly language?

I don't hate using assembly language, since I have written some in my os course. But obviously, assembly language lacks abstraction, you have to pay more attention to the details. Is assembly language really essential to write TAOCP?
Lucas
  • 721
  • 2
  • 8
  • 15
10
votes
2 answers

Is this statement from Knuth's fundamental algorithms still applicable today?

In a sense, 10! (ten factorial) represents an approximate dividing line between things which are practical to compute and things which are not. This is from Knuth's TAOCP Fundamental Algorithms book (1973). Is this still a valid statement or…
Bon Ami
  • 317
  • 2
  • 7
6
votes
1 answer

Problem in Understanding Algorithm from TAOCP "Multiply Permutations in Cycle Form"

I am not able to understand one algorithm discussed in TAOCP Volume 1; Section 1.3.3 named as "Algorithm A" stated as "Multiply permutations in cycle form" while compared with the stated example in next page. The step that is not clear is mentioned…
sam_haz
  • 69
  • 4
2
votes
3 answers

In Knuth's MMIX, how can x be an octabyte (64 bits) and M[x] be a byte (8 bits)?

In Knuth's Fascicle 1 on MMIX, the "Memory and Registers" section on page 4 states: "thus if x is any octabyte, M[x] is a byte of memory." and "thus if x is any byte, $x is an octabyte." How can x be an octabyte (64 bits) and M[x] be a byte (8…
user43713
  • 21
  • 1
1
vote
1 answer

Assembly vs. algorithmic languages (like C, Algol, etc)

Usually, computer science papers describe algorithms in Algol-like pseudolanguage, similar to Pascal or even C/C++. But Donald Knuth uses his own assembly language (MMIX). Are there any good known algorithms inexpressible in Algol-like language but…
user29057