Пример #1
0
 public FunctionalParam(Instruction owner, ParameterBitField param, int bitShift, int bitMask)
 {
     Owner         = owner;
     Parameter     = param;
     BitShift      = bitShift;
     BitMask       = bitMask;
     EraserBitMask = bitMask << bitShift;
     if (param.GetType().BaseType == typeof(NumericBitField))
     {
         NumericType = (NumericBitField)param;
         Type        = Types.Number;
     }
     else if (param.GetType().BaseType.BaseType == typeof(RegisterBitField))
     {
         RegisterType = (RegisterBitField)param;
         Type         = Types.Register;
     }
     else
     {
         throw new Exception($"Typeless FunctionalParam of {param.GetType().ToString()} in Instruction {owner.Helper.Name}");
     }
 }
Пример #2
0
 public OpcodeParamaterUnmaskingMetas(int mask, int shift, ParameterBitField param)
 {
     BitMaskAfterShift = mask;
     ShiftAmount       = shift;
     Parameter         = param;
 }
Пример #3
0
 public bool Is(ParameterBitField pbf)
 {
     return(GetType() == pbf.GetType());
 }