public MovInstruction(Chip chip, string[] args, int relativePos, int actualPos, TestPrefix testPrefix) : base(chip, relativePos, actualPos, testPrefix) { if (args.Length != 2) { throw new InstructionValidationException("mov must take 2 args"); } src = new RIArg(args[0], chip); dst = new RArg(args[1], chip); }
public TcpInstruction(Chip chip, string[] args, int relativePos, int actualPos, TestPrefix testPrefix) : base(chip, relativePos, actualPos, testPrefix) { if (args.Length != 2) { throw new InstructionValidationException("TCP must take two arguments"); } firstArg = new RIArg(args[0], chip); secondArg = new RIArg(args[1], chip); }
public DstInstruction(Chip chip, string[] args, int relativePos, int actualPos, TestPrefix testPrefix) : base(chip, relativePos, actualPos, testPrefix) { if (args.Length != 2) { throw new InstructionValidationException("dst requires 2 args"); } firstArg = new RIArg(args[0], chip); secondArg = new RIArg(args[1], chip); }
public MulInstruction(Chip chip, string[] args, int relativePos, int actualPos, TestPrefix testPrefix) : base(chip, relativePos, actualPos, testPrefix) { arg = new RIArg(args, chip); }