Updated to simulate 41 kinds of Opcodes. Added ASTPrinter for better modulizing the result printing