MMIX Home Page

Documentation, Sources, Binaries, Links, Examples, Contributions

Table of Content


MMIX Documentation, Sources, Binaries, Examples, Links, Projects, Proposals


This site is devoted to MMIX and MMIXware.

The following message from Donald Knuth gives a good introduction to MMIX.

A Message From Don Knuth, 01 September 2011

Welcome to all lovers of clean (or nearly clean) hardware design!

During the 1990s I spent considerable time designing a computer that would be representative of modern machines, yet easy to learn. Several of the leading experts in the field gave me considerable help with the design. The result was MMIX — "A RISC computer for the new millennium". In 1999 I completed the preliminary software to support basic MMIX programming and the simulation of many versions of the architecture. During the subsequent twelve years, ... (read more ...)

After MMIXware, as described in Volume 1 Fascicle 1 of TAOCP, was finally frozen in September 2011, this site, hosted by the MMIX group at Munich University of Applied Sciences, coordinates the future development of MMIXware. We provide here a collection of materials for all those that work with MMIX, study MMIX, engage in the further development of MMIX, use MMIX, or just want to find out what MMIX is.



MMIXware Cover The new edition of MMIXware, A RISC Computer for the Third Millennium, Lecture Notes in Computer Science, Volume 1750, is now in print.

It documents Version 1 of MMIX, and it corresponds to the programs of mmix-20131017.tgz. Version 1 is permanently frozen, and "bug-free by definition."

Of course this does not preclude future developments.


MMIXVD Screenshot1

The new MMIX Visual Debugger version 1.1 has been released.

MMIXVD, the MMIX Visual Debugger, is a complete integrated development environment for the MMIX under the Windows operating system. It integrates:

  • an editor (based on the Scintilla editing engine),
  • the mmixal assembler, and
  • the mmix simulator.
It features
  • Source level debugging
  • Display of memory and registers (including the register stack)
  • One click assembly and execution
  • Interactive breakpoints
  • Stepping of instructions and/or functions
  • And much more...
For downloading the setup file and screen shots, see the MMIXVD page.

Getting Started

For those new to MMIX, this is the place to start.

The MMIX Supplement

One of the primary reasons to design MMIX was the replacement of MIX in all volumes of The Art of Computer Programming by Donald E. Knuth. So far volumes 1, 2 and 3 are still using MIX; but The MMIX supplement to the Art of Computer Programming is about to be published by in February 2015. This supplement contains all the programs contained in volume 1 to 3 rewritten for MMIX. These programs are available here for download.

MMIX Documentation

The documentation page provides a full set of MMIX related documentation - mostly in pdf format but also including some videos.


The latest MMIX source files can be found on the sources page.

NEW:The Sources of MMIX and Friends are now in an svn repository. You can get the sources via svn or browse them directly.


For those who prefer ready to run executables, the whole MMIX family and related tools can be found here:

Thanks to Anselm Binninger, there is an new free Integrated Development Environment (IDE) for MMIX implemented in Java. Check it out at BWK-Technik. Another IDE is under development (see the bottom of Win32 Executables).


Contributions to future editions of "The Art of Computer Programming"

You can send MMIX related material to the email address provided below. We will try to provide you with immediate feedback.


All of the MIX programs in Volumes 1--3 of "The Art of Computer Programming" needed to be rewritten in MMIX. The volunteers who were working on these conversions are called the MMIXmasters.

The MMIXmasters project has reached its first milestone with the publication of "The MMIX Supplement". Following the publication, we will happily accept (and reward) any improvements to the existing programs. Because the activities will now be documented on the MMIX Supplement pages, the content of the MMIXmasters pages are there mostly as a reference.

Reporting Bugs

Improvements, Feature Requests, or Enhancement Proposals

We plan to set up a system to submit bug reports and other material to help us improve MMIX and the software provided here. For now, you can just send an email to the address provided below. The Links page tries to offer a "complete" collection of links to MMIX related web pages. Please help to keep it current. Send me an email if you think there is a link missing or outdated.

Please help to keep this site up to date! If you want to point out important material or projects that are not listed here, if you find errors or want to suggest improvements, please send email to email