Inspired by Write your Own Virtual Machine and LC-3 VM. You can get an assembler with a simulator from LC-3 Simulator