Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
MIXAL(1)		      Mixal users manual		      MIXAL(1)

NAME
       mixal - a load-and-go MIX assembler

SYNOPSIS

       mixal [file...]

DESCRIPTION
       mixal is	an implementation of the hypothetical MIX computer and its
       assembly	language called	MIXAL. The computer was	designed by Donald
       Knuth for use in	his monumental and yet to be finished book series The
       Art of Computer Programming. All	programs and all programming exercises
       in the book are written in the MIXAL language.

       This implementation is a	load-and-go assembler, meaning that you
       provide it with a MIXAL program source, which it	translates into	MIX
       machine code, which it promptly executes	by acting as a MIX emulator.

       You give	mixal zero or more MIXAL program source	files in the command
       line, which the program interprets. If you give it no arguments,	it
       expects to find a program in the	standard input stream. After the
       program has executed, the final state of	the machine registers is
       printed to the standard output stream.

       The card	punch and line printer devices are connected to	the standard
       input and output	stream,	respectively. Console input and	output are
       connected to standard input and output, and the disk devices are
       connected to files named	diskN in the current directory,	where N	is the
       device number. Those files are created on demand.

       There is	one significant	difference between the MIXAL input language
       and MIX as originally described by Knuth: Knuth puts fields at fixed
       offsets on a line, while	this implementation expects them to be
       separated by whitespace.	(Purists may wish to fix this obvious bug.)
       Since the ALF directive,	which defines constant strings,	becomes
       ambiguous when delimited	by whitespace, there's a new syntax to achieve
       the same	effect.	Instead	of

		ALF   rime

       use

		CON  " rime"

BUGS
       This MIXAL implementation does not do floating-point. The tape devices
       are not implemented.

AUTHOR
       This MIXAL implementation was designed and written by Darius Bacon, and
       then ported to Unixish systems and debugged by Eric S. Raymond. This
       version includes	corrections to multiplication and division by Larry
       Gately. This manual page	was written for	Debian by Antti-Juhani
       Kaijanaho, with changes by Darius Bacon and Eric	S. Raymond.

       The MIXAL language was designed by Donald Knuth.	We gratefully
       acknowledge the general permission granted by Dr. Knuth and
       Addison-Wesley to redistribute MIX documentation	and examples from The
       Art of Computer Programming in connection with open-source
       implementations of the language and under the license terms of those
       implementations.

SEE ALSO
       The files /usr/share/doc/mixal/README and /usr/share/doc/mixal/NOTES
       contain some information	about this MIXAL implementation.

       A description of	the MIX	system and the MIXAL language can be found in
       Donald E. Knuth's book The Art of Computer Programming, Volume 1:
       Fundamental Algorithms; 3rd Edition (Addison-Wesley 1997). (Or see the
       home page at http://www-cs-faculty.stanford.edu/~knuth/taocp.html.)

Retrocomputing Museum		  10/20/2010			      MIXAL(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=mixal&sektion=1&manpath=FreeBSD+Ports+15.0>

home | help