public void Interpret(byte[] instructions) { EnsureInstructionsLoaded(); var stack = new InstructionStack(); var stream = new InstructionStream(instructions); while (stream.Position < stream.Length) { var opCode = (int)stream.ReadByte(); instructionMap[opCode].Execute(opCode, stream, stack); } }