Image goes here
Resources
CptS 260 - Intro to Computer Architecture
Washington State University

MIPS and assembler

  • SPIM: http://pages.cs.wisc.edu/~larus/spim.html is the MIPS simulator we will be using for our assembly language programming. You can use PCSpim, XSpim, or just plain Spim. The page above has downloads of compiled versions for Windows and Fedora. There is a spim package for Ubuntu in the repositories.
  • http://pages.cs.wisc.edu/~larus/HP_AppA.pdf is a reference for spim and for the MIPS architecture. It is highly recommended. Larus, the author of SPIM, also recommends MIPS manuals listed on the SPIM page.
  • Code sourcery compiler and tools for mips. This is a complete set of basic command-line tools for MIPS development in C and assembler. (Windows and linux)
  • Microchip IDE. The 8.10 version is least complicated to install. This includes a compiler, assembler, and simulator. Windows only.
  • http://courses.missouristate.edu/KenVollmar/MARS/ another simulator, in Java. Maybe more robust than SPIM but I haven't tried it yet. Ok, I've tried it now. Seems nice. It supports the SPIM system calls so code should be easily portable. One difference is that it just starts execution with the first instruction of your program rather than using a jal main, so you don't need a main but you do need to put what you want executed first at the start of your file.

MIPS Calling and Stack Frame Layout Conventions

Here is a discussions of the confusion surrounding MIPS stack frame layouts as described in the textbook. Summary: it's a big mess, the rules have changed over the years, and different compilers use slightly different conventions. http://cs3.bu.edu/pipermail/church-hackers/2000-October/002890.html.

FORTH

(c) 2004-2006 Carl H. Hauser           E-mail questions or comments to Prof. Carl Hauser