[ News ]
[ Documentation ]
[ Installation ]
[ Screenshots ]
[ CVS ]
[ Bugs ]
[
Donations ]
GNU MDK
Table of Contents
Latest stable version: 1.2.1 (September 05)
[Download]
[Change log]
[Printed manual]
MIX is Donald Knuth's mythical computer as
described in his monumental work
The
Art Of Computer Programming. As any of its real
counterparts, the MIX features registers, memory cells, an
overflow toggle, comparison flags, input-output devices,
and a set of binary instructions executable by its virtual
CPU. You can program the MIX using an assembly language
called MIXAL, the MIX Assembly Language.
So, what's the use of learning MIXAL? The MIX computer
is a simplified version of real CISC computers, and its
assembly language closely resembles real ones. You can
learn MIX/MIXAL as an introduction to computer
architecture and assembly programming: see the
MDK documentation for a
tutorial on MIX and MIXAL.
The MIX Development Kit offers an emulation
of MIX and MIXAL. The current
version of MDK includes the following applications:
- mixasm A MIXAL compiler, which
translates your source files into binary ones, executable
by the MIX virtual machine.
- mixvm A MIX virtual machine which is
able to run and debug compiled MIXAL programs, using a
command line interface with readline's line editting
capabilities.
- gmixvm A MIX virtual machine with a GTK+ GUI
which allows you running and debugging your MIXAL programs
through a nice graphical interface
(see
screenshots).
- mixguile A Guile interpreter with an embedded MIX
virtual machine, manipulable through a library of Scheme
functions.
- mixal-mode.el An Emacs major mode for MIXAL source
files editing, providing syntax highlighting, documentation lookup and
invocation of mixvm within Emacs.
- mixvm.el An elisp program which allows you
to run mixvm within an Emacs GUD window,
simultaneously viewing your MIXAL source file in another buffer.
Using the GNU MDK tools, you'll be able to
- write, compile and execute MIXAL programs,
- set breakpoints and run your programs step by step,
- set conditional breakpoints (register change, memory change, etc.),
- collect execution timing statistics,
- trace executed instructions,
- inspect and modify the MIX registers, flags and memory
contents at any step,
- simulate MIX input-output devices using the standard
output and your file system.
In addition, the MIX virtual machine simulators include an
embedded Guile
interpreter and, therefore, their functionality can be extended
using Scheme.
See the GNU MDK user's
manual for a complete description of the toolkit. The GNU MDK
utils will run on any GNU or FreeBSD box (see suported platforms)
and, of course, are free software.
The GNU MDK source tarball can be found at
GNU MDK is
part of the Debian GNU/Linux distribution
and can be installed using apt-get
or dselect. A
FreeBSD port and a
Darwin port are also available.
The user's manual is distributed with the above tarballs in
texinfo form, which is converted to info files during the
installation process. It is also available in a variety of formats in
the documentation section.
[ News ]
[ Documentation ]
[ Installation ]
[ Screenshots ]
[ CVS ]
[ Bugs ]
[
Donations ]
Return to GNU's home page.
Please send FSF & GNU inquiries & questions to
gnu@gnu.org.
There are also other ways to
contact the FSF.
Please send comments on these web pages to
webmasters@gnu.org,
send other questions to
gnu@gnu.org.
Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Verbatim copying and distribution of this entire article is
permitted in any medium, provided this notice is preserved.
Updated by jao.
Last modified: $Date: 2005/09/29 21:23:52 $