public ExpandedDouble(long rawBits) {int biasedExp = Math.toIntExact(rawBits >> 52);if (biasedExp == 0) {BigInteger frac = BigInteger.valueOf(rawBits).and(BI_FRAC_MASK);int expAdj = 64 - frac.bitLength();_significand = frac.shiftLeft(expAdj);_binaryExponent = (biasedExp & 0x07FF) - 1023 - expAdj;} else {_significand = getFrac(rawBits);_binaryExponent = (biasedExp & 0x07FF) - 1023;}}

public ExpandedDouble ( long rawBits ) { int biasedExp = Math . toIntExact ( rawBits > > 52 ) ; if ( biasedExp == 0 ) { BigInteger frac = BigInteger . valueOf ( rawBits ) . and ( BI_FRAC_MASK ) ; int expAdj = 64 - frac . bitLength ( ) ; _significand = frac . shiftLeft ( expAdj ) ; _binaryExponent = ( biasedExp & 0x07FF ) - 1023 - expAdj ; } else { _significand = getFrac ( rawBits ) ; _binaryExponent = ( biasedExp & 0x07FF ) - 1023 ; } }
public ExpandedDouble(long rawBits){int biasedExp = (int)(rawBits >> 52);if (biasedExp == 0){BigInteger frac = new BigInteger(rawBits)&BI_FRAC_MASK;int expAdj = 64 - frac.BitLength();_significand = frac<<expAdj;_binaryExponent = (biasedExp & 0x07FF) - 1023 - expAdj;}else{BigInteger frac = GetFrac(rawBits);_significand = frac;_binaryExponent = (biasedExp & 0x07FF) - 1023;}}
