Elsevier · Patterson, Hennessy: Computer Organization and Design, 5th Edition · MARS


TMARS is a lightweight interactive development environment (IDE) for programming in MIPS assembly language, intended for educational-level use with Patterson and Hennessy's Computer Organization and Design. MARS features:

  • GUI with point-and-click control and integrated editor
  • Easy set/removal of breakpoints using check boxes
  • Easily editable register and memory values, similar to a speadsheet
  • Display values in hexadecimal or decimal
  • Command line mode for instructors to test and evaluate many programs easily. Command-line arguments to specify registers and memory locations to be displayed after the program run, to examine for correct contents. Set up a "batch" to do many programs in succession.
  • Floating point registers, coprocessor1 and coprocessor0
  • Variable-speed execution
  • "Tool" utility for MIPS control of simulated devices. A tool is a program running on a separate thread with access to MARS data. An assembly program can run in MARS and interact with the tool through memory-mapped IO. Any imaginable pseudo-device can be interfaced to MIPS assembly code, or extended to physical devices or hardware.

You can download MARS and find tutorial material at the MARS website.