X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.machine%2Fsrc%2Fnet%2Fmograsim%2Fmachine%2Fmi%2Fparameters%2FIntegerClassification.java;h=c24cabeb25f75406a37a6ff20c08602275a6ab3f;hb=fe3e478c3bb76e0c554e2ed01adcc2c65989a8ee;hp=d5ba9640a79695cfb54db2b3254e421152e6faf0;hpb=61621670ab3ea56eea6571cc9bba5e015c9f0861;p=Mograsim.git diff --git a/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/IntegerClassification.java b/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/IntegerClassification.java index d5ba9640..c24cabeb 100644 --- a/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/IntegerClassification.java +++ b/net.mograsim.machine/src/net/mograsim/machine/mi/parameters/IntegerClassification.java @@ -1,14 +1,19 @@ package net.mograsim.machine.mi.parameters; +import java.math.BigInteger; + +import net.mograsim.logic.core.types.BitVector; import net.mograsim.machine.mi.parameters.MicroInstructionParameter.ParameterType; public class IntegerClassification implements ParameterClassification { private final int bits; - - public IntegerClassification(int bits) + private final IntegerImmediate defaultValue; + + public IntegerClassification(int defaultValue, int bits) { this.bits = bits; + this.defaultValue = new IntegerImmediate(BitVector.from(defaultValue, bits)); } @Override @@ -22,4 +27,16 @@ public class IntegerClassification implements ParameterClassification { return bits; } + + @Override + public IntegerImmediate parse(String toParse) + { + return new IntegerImmediate(new BigInteger(toParse), bits); + } + + @Override + public MicroInstructionParameter getDefault() + { + return defaultValue; + } }