com.sun.jimi.core.util
Class BinOps

java.lang.Object
  |
  +--com.sun.jimi.core.util.BinOps

public class BinOps
extends java.lang.Object

Utility methods for applying binary operations to arbitrarily large numbers, represented by byte arrays.


Constructor Summary
BinOps()
           
 
Method Summary
static void add(byte[] value, byte[] add)
           
static void add(byte[] value, byte[] add, int start, int count)
           
static void main(java.lang.String[] args)
           
static void rol(byte[] value, int bits, int start, int count)
           
static void ror(byte[] value, int bits)
           
static void ror(byte[] value, int bits, int start, int count)
           
static void rotateLeft(byte[] value, int bits)
           
static void sub(byte[] value, byte[] sub)
           
static void sub(byte[] value, byte[] sub, int start, int count)
           
static void xor(byte[] value, byte[] xor)
          Apply an exclusive OR.
static void xor(byte[] value, byte[] xor, int start, int count)
          Apply an exclusive OR.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BinOps

public BinOps()
Method Detail

xor

public static void xor(byte[] value,
                       byte[] xor)
Apply an exclusive OR. The value being XOR'd will wrap if it is not large enough to cover the target.
Parameters:
value - the value to modify
xor - the value to XOR with

xor

public static void xor(byte[] value,
                       byte[] xor,
                       int start,
                       int count)
Apply an exclusive OR. The value being XOR'd will wrap if it is not large enough to cover the target.
Parameters:
value - the value to modify
xor - the value to XOR with
start - the index in value to start at
count - the number of indexes to apply to in value

rotateLeft

public static void rotateLeft(byte[] value,
                              int bits)

rol

public static void rol(byte[] value,
                       int bits,
                       int start,
                       int count)

ror

public static void ror(byte[] value,
                       int bits)

ror

public static void ror(byte[] value,
                       int bits,
                       int start,
                       int count)

add

public static void add(byte[] value,
                       byte[] add)

add

public static void add(byte[] value,
                       byte[] add,
                       int start,
                       int count)

sub

public static void sub(byte[] value,
                       byte[] sub)

sub

public static void sub(byte[] value,
                       byte[] sub,
                       int start,
                       int count)

main

public static void main(java.lang.String[] args)