Home | History | Annotate | Download | only in src

Lines Matching full:exponent

42 static int NormalizedExponent(uint64_t significand, int exponent) {
46 exponent = exponent - 1;
48 return exponent;
54 static int EstimatePower(int exponent);
98 int exponent = Double(v).Exponent();
99 int normalized_exponent = NormalizedExponent(significand, exponent);
269 // exponent (decimal_point), when rounding upwards.
357 // v = f * 2^exponent and 2^52 <= f < 2^53.
358 // v is hence a normalized double with the given exponent. The output is an
359 // approximation for the exponent of the decimal approimation .digits * 10^k.
371 static int EstimatePower(int exponent) {
372 // This function estimates log10 of v where v = f*2^e (with e == exponent).
397 double estimate = ceil((exponent + kSignificandSize - 1) * k1Log10 - 1e-10);
407 // A positive exponent implies a positive power.
414 numerator->ShiftLeft(Double(v).Exponent());
426 delta_plus->ShiftLeft(Double(v).Exponent());
429 delta_minus->ShiftLeft(Double(v).Exponent());
434 // the distance is 1 ulp. This cannot be the case for exponent >= 0 (but we
435 // have to test it in the other function where exponent < 0).
454 int exponent = Double(v).Exponent();
460 // since v = significand * 2^exponent this is equivalent to
461 // numerator = v * / 2^-exponent
463 // denominator = 10^estimated_power * 2^-exponent (with exponent < 0)
465 denominator->ShiftLeft(-exponent);
474 // Given that the denominator already includes v's exponent the distance
483 // then the distance is 1 ulp. Since the exponent is close to zero
506 int exponent = Double(v).Exponent();
523 // since v = significand * 2^exponent this is equivalent to
524 // numerator = v * 10^-estimated_power * 2 * 2^-exponent.
530 // denominator = 2 * 2^-exponent with exponent < 0.
532 denominator->ShiftLeft(-exponent);
559 // Let v = significand * 2^exponent.
602 if (Double(v).Exponent() >= 0) {