Clarifications, etc.:
- The project description says "memory should be initialized to zero at start of a run". This should take place before you write instructions into it...
- Register and instruction names are case sensitive, i.e. 'Load' is
acceptable, 'load' is not, 'r2' is not.
- writes to R1 should be caught at runtime in the interpreter. Return -1.
- labels are only alphanumeric characters, and must start w/ a-z (either case).
- 'output' should write the register to STDOUT, followed by a carriage return.
- Incrementing of the PC (register 1) is part of the fetch and
decode phase of instruction execution. As such, it should be completed
before an instruction is actually executed.
- There are no blank lines in any of the test cases.
- Labels may contain numbers, but will not start with them. A label
may be used before it is defined.