public class DivideJc
extends java.lang.Object
Modifier and Type  Field and Description 

int 
q
Quotient and remainder.

int 
r
Quotient and remainder.

static int 
version
Version, history and license.

Constructor and Description 

DivideJc(int q,
int r) 
Modifier and Type  Method and Description 

static DivideJc 
divLess2pow(int val,
int bit1,
int bit2)
This algorithm can be used if a number should be divide by a divisor which is near but less
a power of 2 value and the divisor is build in a special simple form.

static void 
main(java.lang.String[] args)
Only for test in debug mode.

java.lang.String 
toString() 
public static final int version
public int q
public int r
public static DivideJc divLess2pow(int val, int bit1, int bit2)
y = x / 1.9 ~= x / 2.0 + (x/2.0) * (2.01.9)/2.0;One can divide by 2.0 instead divide by 1.9, then adjust the result with the ratio of abbreviation.
bit1 bit2 divisor 10 2 0x03fc = 0x0400  0x0004 10 6 0x03c0 = 0x0400  0x0040 10 8 0x0300 = 0x0400  0x0100 12 2 0x0ffc = 0x1000  0x0004 12 6 0x0fc0 = 0x1000  0x0040 12 8 0x0f00 = 0x1000  0x0100 12 10 0x0c00 = 0x1000  0x0400This algorithm is used to calculate indices of arrays in a
IntegerBlockArray
which has a size less a power of 2 because it can be used with the BlockHeap concept in C language.val
 Any integer value, the dividend.bit1
 The bit which describes the nearest power of 2 of divisor. (1<bit2
 The bit which describes the distance from the nearest power of 2. 1<public java.lang.String toString()
toString
in class java.lang.Object
public static void main(java.lang.String[] args)
args
 not used.