Lines Matching defs:pd
57 unsigned *pnzout, _big_float *pd)
61 * into a decimal big_float in *pd. nzin tells how many implicit
73 /* Compute how many trailing zeros we're going to put in *pd. */
87 pd->bexponent = 0;
88 pd->blength = (ndigs + taken + 3) / 4;
90 ids = (ndigs + taken) - 4 * pd->blength;
91 id = pd->blength - 1;
94 printf(" _integerstring_to_big_decimal exponent %d ids %d id %d \n", pd->bexponent, ids, id);
97 pd->bsignificand[id] = 1000 * IDIGIT(ids) + 100 * IDIGIT(ids + 1) + 10 * IDIGIT(ids + 2) + IDIGIT(ids + 3);
103 pd->bsignificand[id] = 1000 * ds[ids] + 100 * ds[ids + 1] + 10 * ds[ids + 2] + ds[ids + 3] - 1111 * '0';
110 pd->bsignificand[0] = 1000 * IDIGIT(ids) + 100 * IDIGIT(ids + 1) + 10 * IDIGIT(ids + 2) + IDIGIT(ids + 3);
114 _display_big_float(pd, 10);
192 _big_decimal_to_big_binary(_big_float *pd, _big_float *pb)
201 assert(pd->bexponent >= -3);
202 assert(pd->bexponent <= 3);
206 id = pd->blength - 1;
207 if ((id == 0) && (pd->bexponent < 0)) {
210 pb->bsignificand[0] = pd->bsignificand[id--];
211 idbound = (pd->bexponent < 0) ? 1 : 0; /* How far to carry next
217 _mul_10000short(pb, (long unsigned) pd->bsignificand[id]);
220 if (pd->bexponent < 0) {/* Have to save some integer bits, discard
226 carry = pd->bsignificand[0];
228 switch (pd->bexponent) {
248 } else if (pd->bexponent > 0) { /* Have to append some zeros. */
249 switch (pd->bexponent) {