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);
        }
示例#4
0
 public MulInstruction(Chip chip, string[] args, int relativePos, int actualPos, TestPrefix testPrefix) : base(chip, relativePos, actualPos, testPrefix)
 {
     arg = new RIArg(args, chip);
 }