Fixed a bug in Am2900; created dlatch8/80; relayouted some components
[Mograsim.git] / net.mograsim.machine / src / net / mograsim / machine / mi / parameters / IntegerImmediate.java
index e6f5f76..419602c 100644 (file)
@@ -7,17 +7,17 @@ import net.mograsim.logic.core.types.BitVector;
 public final class IntegerImmediate implements MicroInstructionParameter
 {
        private BitVector value;
-       
+
        public IntegerImmediate(BigInteger value, int bits)
        {
                this.value = BitVector.from(value, bits);
        }
-       
+
        public IntegerImmediate(BitVector value)
        {
                this.value = value;
        }
-       
+
        @Override
        public BitVector getValue()
        {
@@ -57,4 +57,18 @@ public final class IntegerImmediate implements MicroInstructionParameter
                        return false;
                return true;
        }
+
+       /**
+        * @return The value of this IntegerImmediate as an unsigned BigInteger
+        */
+       public BigInteger getValueAsBigInteger()
+       {
+               return value.getUnsignedValue();
+       }
+
+       @Override
+       public String toString()
+       {
+               return getValueAsBigInteger().toString();
+       }
 }