Boolean and IntegerImmediates can be accessed as boolean/BigInteger now
authorFabian Stemmler <stemmler@in.tum.de>
Thu, 29 Aug 2019 11:52:26 +0000 (13:52 +0200)
committerFabian Stemmler <stemmler@in.tum.de>
Thu, 29 Aug 2019 11:52:26 +0000 (13:52 +0200)
net.mograsim.machine/src/net/mograsim/machine/mi/parameters/BooleanImmediate.java
net.mograsim.machine/src/net/mograsim/machine/mi/parameters/IntegerImmediate.java

index 7ed60fd..3d08840 100644 (file)
@@ -16,6 +16,11 @@ public class BooleanImmediate implements MicroInstructionParameter
        {
                return value ? BitVector.SINGLE_1 : BitVector.SINGLE_0;
        }
+       
+       public boolean getBooleanValue()
+       {
+               return value;
+       }
 
        @Override
        public ParameterType getType()
@@ -47,5 +52,9 @@ public class BooleanImmediate implements MicroInstructionParameter
                return true;
        }
        
-       
+       @Override
+       public String toString()
+       {
+               return value ? "H" : "L";
+       }
 }
index e6f5f76..0a83121 100644 (file)
@@ -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();
+       }
 }