Build a vm which executes the instruction set defined in #2. Please note that the VM should be written in C.