1 package net.mograsim.machine.mi.parameters;
3 import java.math.BigInteger;
5 import net.mograsim.logic.core.types.BitVector;
7 public final class IntegerImmediate implements MicroInstructionParameter
9 private BitVector value;
11 public IntegerImmediate(BigInteger value, int bits)
13 this.value = BitVector.from(value, bits);
16 public IntegerImmediate(BitVector value)
22 public BitVector getValue()
28 public ParameterType getType()
30 return ParameterType.INTEGER_IMMEDIATE;
38 result = prime * result + ((value == null) ? 0 : value.hashCode());
43 public boolean equals(Object obj)
49 if (!(obj instanceof IntegerImmediate))
51 IntegerImmediate other = (IntegerImmediate) obj;
54 if (other.value != null)
56 } else if (!value.equals(other.value))
62 * @return The value of this IntegerImmediate as an unsigned BigInteger
64 public BigInteger getValueAsBigInteger()
66 return value.getUnsignedValue();
70 public String toString()
72 return getValueAsBigInteger().toString();