frysk.value
Class IntegerUnit

java.lang.Object
  extended by frysk.value.ArithmeticUnit
      extended by frysk.value.IntegerUnit

public class IntegerUnit
extends ArithmeticUnit

Arithmetic and logical Operation handling for integers. All arithmetic done using BigInteger.


Field Summary
 
Fields inherited from class frysk.value.ArithmeticUnit
intType, retType, wordSize
 
Constructor Summary
IntegerUnit(IntegerType t1, int wordSize)
           
IntegerUnit(IntegerType t1, IntegerType t2, int wordSize)
           
 
Method Summary
 Value add(Value v1, Value v2)
           
 Value bitWiseAnd(Value v1, Value v2)
           
 Value bitWiseComplement(Value v1)
           
 Value bitWiseOr(Value v1, Value v2)
           
 Value bitWiseXor(Value v1, Value v2)
           
 Value divide(Value v1, Value v2)
           
 Value equal(Value v1, Value v2)
           
 Value greaterThan(Value v1, Value v2)
           
 Value greaterThanOrEqualTo(Value v1, Value v2)
           
 Value lessThan(Value v1, Value v2)
           
 Value lessThanOrEqualTo(Value v1, Value v2)
           
 Value mod(Value v1, Value v2)
           
 Value multiply(Value v1, Value v2)
           
 Value notEqual(Value v1, Value v2)
           
 Value shiftLeft(Value v1, Value v2)
           
 Value shiftRight(Value v1, Value v2)
           
 Value subtract(Value v1, Value v2)
           
 
Methods inherited from class frysk.value.ArithmeticUnit
bitWiseAndEqual, bitWiseOrEqual, bitWiseXorEqual, divideEqual, getIntResultType, getLogicalValue, getResultType, logicalAnd, logicalNegation, logicalOr, minusEqual, modEqual, plusEqual, shiftLeftEqual, shiftRightEqual, timesEqual
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IntegerUnit

public IntegerUnit(IntegerType t1,
                   IntegerType t2,
                   int wordSize)

IntegerUnit

public IntegerUnit(IntegerType t1,
                   int wordSize)
Method Detail

add

public Value add(Value v1,
                 Value v2)
Overrides:
add in class ArithmeticUnit

subtract

public Value subtract(Value v1,
                      Value v2)
Overrides:
subtract in class ArithmeticUnit

multiply

public Value multiply(Value v1,
                      Value v2)
Overrides:
multiply in class ArithmeticUnit

divide

public Value divide(Value v1,
                    Value v2)
Overrides:
divide in class ArithmeticUnit

mod

public Value mod(Value v1,
                 Value v2)
Overrides:
mod in class ArithmeticUnit

shiftLeft

public Value shiftLeft(Value v1,
                       Value v2)
Overrides:
shiftLeft in class ArithmeticUnit

shiftRight

public Value shiftRight(Value v1,
                        Value v2)
Overrides:
shiftRight in class ArithmeticUnit

lessThan

public Value lessThan(Value v1,
                      Value v2)
Overrides:
lessThan in class ArithmeticUnit

greaterThan

public Value greaterThan(Value v1,
                         Value v2)
Overrides:
greaterThan in class ArithmeticUnit

lessThanOrEqualTo

public Value lessThanOrEqualTo(Value v1,
                               Value v2)
Overrides:
lessThanOrEqualTo in class ArithmeticUnit

greaterThanOrEqualTo

public Value greaterThanOrEqualTo(Value v1,
                                  Value v2)
Overrides:
greaterThanOrEqualTo in class ArithmeticUnit

equal

public Value equal(Value v1,
                   Value v2)
Overrides:
equal in class ArithmeticUnit

notEqual

public Value notEqual(Value v1,
                      Value v2)
Overrides:
notEqual in class ArithmeticUnit

bitWiseAnd

public Value bitWiseAnd(Value v1,
                        Value v2)
Overrides:
bitWiseAnd in class ArithmeticUnit

bitWiseXor

public Value bitWiseXor(Value v1,
                        Value v2)
Overrides:
bitWiseXor in class ArithmeticUnit

bitWiseOr

public Value bitWiseOr(Value v1,
                       Value v2)
Overrides:
bitWiseOr in class ArithmeticUnit

bitWiseComplement

public Value bitWiseComplement(Value v1)
Overrides:
bitWiseComplement in class ArithmeticUnit