Welcome, Guest! Log In | Create Account

The MIX

From mmixmasters

Jump to: navigation, search

Here are the MIX programs that need to be converted to MMIX.

Programs or algorithms that are related have been grouped together, but could be separated if that makes more sense. (For example, Program #1.10 could be split into programs 1.10.1, 1.10.2 and 1.10.3.)

If there are any errors, please correct them, but make sure you are using the edition and printing indicated.


Contents

Volume 1: Fundamental Algorithms, 3/e, First Printing, May 1997

ID Section Page Program
1.1 2.1 236 Algorithm A
1.2 2.2.3 258-259 stack insertion & deletion
1.3 2.2.3 266-268 Program T (Topological Sort)
1.4 2.2.4 277-278, 552-553 Program A (Addition of Polynomials), #15
1.5 2.2.5 289-295, 554-555, 568 The Elevator Simulation, #8 & #9, #22
1.5 2.3.1 325, 567 Programs S & T, #20
1.7 2.3.2 342-345, 572-573 Program D (Differentiation), #13
1.7 2.1 535 #8
1.9 2.1 535 #9
1.10 2.2.3 545 #2, #3, #4
1.11 2.2.3 546 #8
1.12 2.2.3 548-549 #24
1.13 2.2.3 550 #27
1.14 2.2.4 552 #11
1.15 2.2.4 552 #13
1.16 2.2.4 552 #14
1.17 2.2.5 556 #9
1.18 2.2.6 557-559 #15
1.19 2.3.2 573 #15
1.20 2.3.2 574 #16
1.21 2.3.5 601-602 #4
1.22 2.5 607 #4
1.23 2.5 609-610 #13, #15, #16
1.24 2.5 611-613 #27, #28
1.25 2.5 614 #34

Volume 2: Seminumerical Algorithms, 3/e, First Printing, September 1997

ID Section Page Program
2.1 3.2.2 28, 556 Program A (Additive number generator), #25
2.2 4.2.1 218-219, 220-221, 612, 612-13, 615 Program A (Addition, subtraction, and normalization), Program M (Floating point multiplication and division), #14, #15, #17
2.3 4.2.3 247-249, 249-250, 251-252, 618 Program A (Double-precision addition), Program M (Double-precision multiplication), Program D (Double-precision division), #6
2.4 4.3.1 266-267, 267-268, 269-270, 273-275, 623, 624, 625, 626 Program A (Addition of nonnegative integers), Program S (Subtraction of nonnegative integers), Program M (Multiplication of nonnegative integers), Program D (Division of nonnegative integers), #3, #8, #13, #25, #26
2.5 4.4 320, 321, 637-638 Single-precision conversion (Methods 1a and 2a), #13
2.6 4.5.2 337,339 Euclid's algorithm, Binary gcd algorithm
2.7 3.2.1.1, 3.6 543, 544, 599 #2, #8, #1
2.8 4.6.3 691 #2

Volume 3: Sorting and Searching, 2/e, First Printing March 1998

ID Section Page Program
3.1 5.2 70-77, 616 Program C (Comparison counting), #9
3.2 5.2.1 81, 618-619 Program S (Straight insertion sort), #3
3.3 5.2.1 85 Program D (Shellsort)
3.4 5.2.1 97, 624-625 Program L (List insertion), #33
3.5 5.2.1 100, 625-626 Program M (Multiple list insertion), #35
3.6 5.2.2 107 Program B (Bubble sort)
3.7 5.2.2 117-118, 638 Program Q (Quicksort), #55
3.8 5.2.2 125-126 Program R (Radix exchange)
3.9 5.2.3 140, 640-641 Progarm S (Straight selection sort), #8
3.10 5.2.3 146-147 Program H (Heapsort)
3.11 5.2.4 165-166 Program L (List merge sort)
3.12 5.2.5 174 Program R (Radix list sort)
3.13 6.1 397, 702 Program S (Sequential search), #3
3.14 6.1 397-398 Program Q (Quick sequential search)
3.15 6.1 398 Program Q' (Quicker sequential search)
3.16 6.2.1 411 Program B (Binary search)
3.17 6.2.1 415-416, 705 Program C (Uniform binary search), #10
3.18 6.2.1 418-419 Program F (Fibbonaccian search)
3.19 6.2.2 429 Program T (Tree search & insertion)
3.20 6.2.3 464-466 Program A (Balanced tree search & insertion)
3.21 6.3 493-494 Program T (Trie search)
3.22 6.4 523-524, 729 Program C (Chained hash table search & insertion), #12
3.23 6.4 527 Program L (Linear probing & insertion)
3.24 6.4 530 Program D (Open addressing with double hashing)
3.25 5 585-586 #8
3.26 5.2 617 #11
3.27 5.2.1 624 #31
3.28 5.2.2 629-630 #12

|| 3.29 || 6.3 || 722 || #9 ||