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}"); } }
public OpcodeParamaterUnmaskingMetas(int mask, int shift, ParameterBitField param) { BitMaskAfterShift = mask; ShiftAmount = shift; Parameter = param; }
public bool Is(ParameterBitField pbf) { return(GetType() == pbf.GetType()); }