Instruction Set:
- 000: No operation. Move to next cell.
- 001: Halt.
- 002: Halt and Restart.
- 100: Resets the accumulator to 0.
- 101: Loads the value of the input to the accumulator.
- 102: Sends the value of the accumulator to the output.
- 2xx: Loads the value in cell [xx] to the accumulator.
- 3xx: Stores the value of the accumulator to cell [xx].
- 4xx: Adds the value of cell [xx] to the value of the accumulator, and updates the accumulator with the result.
- 5xx: Subtracts the value of cell [xx] from the value of the accumulator, and updates the accumulator with the result.
- 6xx: Jumps to cell [xx] and continues execution from that point.
- 7xx: Jumps to cell [xx] and continues execution from that point IF the value of the accumulator is 0.
- 8xx: Jumps to cell [xx] and continues execution from that point IF the value of the accumulator is not 0.
Other Information:
- Version 0.10 - Thar be bugs, matey.
- All numbers are base 10. Zero padding is for instructional clarity only.
- All operations are non-destructive (source maintained), except 101 (input is consumed).
- Only supports numbers -999 to 999. Numbers outside this range will wrap. For example: 1200 will become -798.
|