From: Fabian Stemmler Date: Thu, 29 Aug 2019 11:52:26 +0000 (+0200) Subject: Boolean and IntegerImmediates can be accessed as boolean/BigInteger now X-Git-Url: https://mograsim.net/gitweb/?p=Mograsim.git;a=commitdiff_plain;h=7e6566bd4a78bd2692a02578d3c716d6eb7b97db Boolean and IntegerImmediates can be accessed as boolean/BigInteger now --- diff --git a/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/BooleanImmediate.java b/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/BooleanImmediate.java index 7ed60fde..3d08840f 100644 --- a/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/BooleanImmediate.java +++ b/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/BooleanImmediate.java @@ -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"; + } } diff --git a/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/IntegerImmediate.java b/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/IntegerImmediate.java index e6f5f762..0a83121c 100644 --- a/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/IntegerImmediate.java +++ b/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/IntegerImmediate.java @@ -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(); + } }