In C write a simulator for the vm611 virtual machine.
Your solution for this assignment should run on a CIS Linux machine. Your solution should have behavior identical to the implementation of vm611 available on CIS Linux machines in ~cs611/bin/vm611 and described here.
Use the vm611 assembler, as611, to build object files to use to test your implementation of vm611. Example as611 input files are available in ~cs611/public/prog3.
Your program will be graded primarily by testing it for correct functionality:
You should submit all the tests that you use to test your implementation of vm611. Be sure these tests are properly documented. Your grade for each piece of functionality listed above will depend on both the correctness of your implementation and how well you tested it.
In addition, remember, you may lose points if your program is not properly structured or adequately documented.
Your programs will be graded using an CIS Linux machine (e.g. turing.unh.edu) so be sure to test in that environment.
You should submit all the source code for your implementation of vm611, a Makefile that will build the program, and all your test files.
Your programs should be submitted for grading from a UNH
CIS Linux machine (e.g. turing.unh.edu).
To turn in this assignment, type:
~cs611/bin/submit prog3 <list of files to submit>
Please submit only your C source files, your test files and your Makefile. Do not turn in any other files!
Submissions can be checked by typing:
~cs611/bin/scheck prog3
To receive full credit for the assignment, you must turn in your files prior to 8am on Monday October 11. Programming assignments may be handed in late at a penalty of 2 points for one day late, 5 points for two days late, 10 points for three days late, 20 points for four days late, and 40 points for five days late. No program may be turned in more than 5 days late.
Remember: as always you are expected to do your own work on this assignment.
Comments and questions should be directed to hatcher@unh.edu