亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? mpi.c

?? tommath庫
?? C
?? 第 1 頁 / 共 5 頁
字號:
   * zero.   */  while (a->used > 0 && a->dp[a->used - 1] == 0) {    --(a->used);  }  /* reset the sign flag if used == 0 */  if (a->used == 0) {    a->sign = MP_ZPOS;  }}#endif/* End: bn_mp_clamp.c *//* Start: bn_mp_clear.c */#include <tommath.h>#ifdef BN_MP_CLEAR_C/* LibTomMath, multiple-precision integer library -- Tom St Denis * * LibTomMath is a library that provides multiple-precision * integer arithmetic as well as number theoretic functionality. * * The library was designed directly after the MPI library by * Michael Fromberger but has been written from scratch with * additional optimizations in place. * * The library is free for all purposes without any express * guarantee it works. * * Tom St Denis, tomstdenis@iahu.ca, http://math.libtomcrypt.org *//* clear one (frees)  */voidmp_clear (mp_int * a){  int i;  /* only do anything if a hasn't been freed previously */  if (a->dp != NULL) {    /* first zero the digits */    for (i = 0; i < a->used; i++) {        a->dp[i] = 0;    }    /* free ram */    XFREE(a->dp);    /* reset members to make debugging easier */    a->dp    = NULL;    a->alloc = a->used = 0;    a->sign  = MP_ZPOS;  }}#endif/* End: bn_mp_clear.c *//* Start: bn_mp_clear_multi.c */#include <tommath.h>#ifdef BN_MP_CLEAR_MULTI_C/* LibTomMath, multiple-precision integer library -- Tom St Denis * * LibTomMath is a library that provides multiple-precision * integer arithmetic as well as number theoretic functionality. * * The library was designed directly after the MPI library by * Michael Fromberger but has been written from scratch with * additional optimizations in place. * * The library is free for all purposes without any express * guarantee it works. * * Tom St Denis, tomstdenis@iahu.ca, http://math.libtomcrypt.org */#include <stdarg.h>void mp_clear_multi(mp_int *mp, ...) {    mp_int* next_mp = mp;    va_list args;    va_start(args, mp);    while (next_mp != NULL) {        mp_clear(next_mp);        next_mp = va_arg(args, mp_int*);    }    va_end(args);}#endif/* End: bn_mp_clear_multi.c *//* Start: bn_mp_cmp.c */#include <tommath.h>#ifdef BN_MP_CMP_C/* LibTomMath, multiple-precision integer library -- Tom St Denis * * LibTomMath is a library that provides multiple-precision * integer arithmetic as well as number theoretic functionality. * * The library was designed directly after the MPI library by * Michael Fromberger but has been written from scratch with * additional optimizations in place. * * The library is free for all purposes without any express * guarantee it works. * * Tom St Denis, tomstdenis@iahu.ca, http://math.libtomcrypt.org *//* compare two ints (signed)*/intmp_cmp (mp_int * a, mp_int * b){  /* compare based on sign */  if (a->sign != b->sign) {     if (a->sign == MP_NEG) {        return MP_LT;     } else {        return MP_GT;     }  }    /* compare digits */  if (a->sign == MP_NEG) {     /* if negative compare opposite direction */     return mp_cmp_mag(b, a);  } else {     return mp_cmp_mag(a, b);  }}#endif/* End: bn_mp_cmp.c *//* Start: bn_mp_cmp_d.c */#include <tommath.h>#ifdef BN_MP_CMP_D_C/* LibTomMath, multiple-precision integer library -- Tom St Denis * * LibTomMath is a library that provides multiple-precision * integer arithmetic as well as number theoretic functionality. * * The library was designed directly after the MPI library by * Michael Fromberger but has been written from scratch with * additional optimizations in place. * * The library is free for all purposes without any express * guarantee it works. * * Tom St Denis, tomstdenis@iahu.ca, http://math.libtomcrypt.org *//* compare a digit */int mp_cmp_d(mp_int * a, mp_digit b){  /* compare based on sign */  if (a->sign == MP_NEG) {    return MP_LT;  }  /* compare based on magnitude */  if (a->used > 1) {    return MP_GT;  }  /* compare the only digit of a to b */  if (a->dp[0] > b) {    return MP_GT;  } else if (a->dp[0] < b) {    return MP_LT;  } else {    return MP_EQ;  }}#endif/* End: bn_mp_cmp_d.c *//* Start: bn_mp_cmp_mag.c */#include <tommath.h>#ifdef BN_MP_CMP_MAG_C/* LibTomMath, multiple-precision integer library -- Tom St Denis * * LibTomMath is a library that provides multiple-precision * integer arithmetic as well as number theoretic functionality. * * The library was designed directly after the MPI library by * Michael Fromberger but has been written from scratch with * additional optimizations in place. * * The library is free for all purposes without any express * guarantee it works. * * Tom St Denis, tomstdenis@iahu.ca, http://math.libtomcrypt.org *//* compare maginitude of two ints (unsigned) */int mp_cmp_mag (mp_int * a, mp_int * b){  int     n;  mp_digit *tmpa, *tmpb;  /* compare based on # of non-zero digits */  if (a->used > b->used) {    return MP_GT;  }    if (a->used < b->used) {    return MP_LT;  }  /* alias for a */  tmpa = a->dp + (a->used - 1);  /* alias for b */  tmpb = b->dp + (a->used - 1);  /* compare based on digits  */  for (n = 0; n < a->used; ++n, --tmpa, --tmpb) {    if (*tmpa > *tmpb) {      return MP_GT;    }    if (*tmpa < *tmpb) {      return MP_LT;    }  }  return MP_EQ;}#endif/* End: bn_mp_cmp_mag.c *//* Start: bn_mp_cnt_lsb.c */#include <tommath.h>#ifdef BN_MP_CNT_LSB_C/* LibTomMath, multiple-precision integer library -- Tom St Denis * * LibTomMath is a library that provides multiple-precision * integer arithmetic as well as number theoretic functionality. * * The library was designed directly after the MPI library by * Michael Fromberger but has been written from scratch with * additional optimizations in place. * * The library is free for all purposes without any express * guarantee it works. * * Tom St Denis, tomstdenis@iahu.ca, http://math.libtomcrypt.org */static const int lnz[16] = {    4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0};/* Counts the number of lsbs which are zero before the first zero bit */int mp_cnt_lsb(mp_int *a){   int x;   mp_digit q, qq;   /* easy out */   if (mp_iszero(a) == 1) {      return 0;   }   /* scan lower digits until non-zero */   for (x = 0; x < a->used && a->dp[x] == 0; x++);   q = a->dp[x];   x *= DIGIT_BIT;   /* now scan this digit until a 1 is found */   if ((q & 1) == 0) {      do {         qq  = q & 15;         x  += lnz[qq];         q >>= 4;      } while (qq == 0);   }   return x;}#endif/* End: bn_mp_cnt_lsb.c *//* Start: bn_mp_copy.c */#include <tommath.h>#ifdef BN_MP_COPY_C/* LibTomMath, multiple-precision integer library -- Tom St Denis * * LibTomMath is a library that provides multiple-precision * integer arithmetic as well as number theoretic functionality. * * The library was designed directly after the MPI library by * Michael Fromberger but has been written from scratch with * additional optimizations in place. * * The library is free for all purposes without any express * guarantee it works. * * Tom St Denis, tomstdenis@iahu.ca, http://math.libtomcrypt.org *//* copy, b = a */intmp_copy (mp_int * a, mp_int * b){  int     res, n;  /* if dst == src do nothing */  if (a == b) {    return MP_OKAY;  }  /* grow dest */  if (b->alloc < a->used) {     if ((res = mp_grow (b, a->used)) != MP_OKAY) {        return res;     }  }  /* zero b and copy the parameters over */  {    register mp_digit *tmpa, *tmpb;    /* pointer aliases */    /* source */    tmpa = a->dp;    /* destination */    tmpb = b->dp;    /* copy all the digits */    for (n = 0; n < a->used; n++) {      *tmpb++ = *tmpa++;    }    /* clear high digits */    for (; n < b->used; n++) {      *tmpb++ = 0;    }  }  /* copy used count and sign */  b->used = a->used;  b->sign = a->sign;  return MP_OKAY;}#endif/* End: bn_mp_copy.c *//* Start: bn_mp_count_bits.c */#include <tommath.h>#ifdef BN_MP_COUNT_BITS_C/* LibTomMath, multiple-precision integer library -- Tom St Denis * * LibTomMath is a library that provides multiple-precision * integer arithmetic as well as number theoretic functionality. * * The library was designed directly after the MPI library by * Michael Fromberger but has been written from scratch with * additional optimizations in place. * * The library is free for all purposes without any express * guarantee it works. * * Tom St Denis, tomstdenis@iahu.ca, http://math.libtomcrypt.org *//* returns the number of bits in an int */intmp_count_bits (mp_int * a){  int     r;  mp_digit q;  /* shortcut */  if (a->used == 0) {    return 0;  }  /* get number of digits and add that */  r = (a->used - 1) * DIGIT_BIT;    /* take the last digit and count the bits in it */  q = a->dp[a->used - 1];  while (q > ((mp_digit) 0)) {    ++r;    q >>= ((mp_digit) 1);  }  return r;}#endif/* End: bn_mp_count_bits.c *//* Start: bn_mp_div.c */#include <tommath.h>#ifdef BN_MP_DIV_C/* LibTomMath, multiple-precision integer library -- Tom St Denis * * LibTomMath is a library that provides multiple-precision * integer arithmetic as well as number theoretic functionality. * * The library was designed directly after the MPI library by * Michael Fromberger but has been written from scratch with * additional optimizations in place. * * The library is free for all purposes without any express * guarantee it works. * * Tom St Denis, tomstdenis@iahu.ca, http://math.libtomcrypt.org */#ifdef BN_MP_DIV_SMALL/* slower bit-bang division... also smaller */int mp_div(mp_int * a, mp_int * b, mp_int * c, mp_int * d){   mp_int ta, tb, tq, q;   int    res, n, n2;  /* is divisor zero ? */  if (mp_iszero (b) == 1) {    return MP_VAL;  }  /* if a < b then q=0, r = a */  if (mp_cmp_mag (a, b) == MP_LT) {    if (d != NULL) {      res = mp_copy (a, d);    } else {      res = MP_OKAY;    }    if (c != NULL) {      mp_zero (c);    }    return res;  }	  /* init our temps */  if ((res = mp_init_multi(&ta, &tb, &tq, &q, NULL) != MP_OKAY)) {     return res;  }  mp_set(&tq, 1);  n = mp_count_bits(a) - mp_count_bits(b);  if (((res = mp_abs(a, &ta)) != MP_OKAY) ||      ((res = mp_abs(b, &tb)) != MP_OKAY) ||       ((res = mp_mul_2d(&tb, n, &tb)) != MP_OKAY) ||      ((res = mp_mul_2d(&tq, n, &tq)) != MP_OKAY)) {      goto LBL_ERR;  }  while (n-- >= 0) {     if (mp_cmp(&tb, &ta) != MP_GT) {        if (((res = mp_sub(&ta, &tb, &ta)) != MP_OKAY) ||            ((res = mp_add(&q, &tq, &q)) != MP_OKAY)) {           goto LBL_ERR;        }     }     if (((res = mp_div_2d(&tb, 1, &tb, NULL)) != MP_OKAY) ||         ((res = mp_div_2d(&tq, 1, &tq, NULL)) != MP_OKAY)) {           goto LBL_ERR;     }  }  /* now q == quotient and ta == remainder */  n  = a->sign;  n2 = (a->sign == b->sign ? MP_ZPOS : MP_NEG);  if (c != NULL) {     mp_exch(c, &q);     c->sign  = (mp_iszero(c) == MP_YES) ? MP_ZPOS : n2;  }  if (d != NULL) {     mp_exch(d, &ta);     d->sign = (mp_iszero(d) == MP_YES) ? MP_ZPOS : n;  }LBL_ERR:   mp_clear_multi(&ta, &tb, &tq, &q, NULL);   return res;}#else/* integer signed division.  * c*b + d == a [e.g. a/b, c=quotient, d=remainder] * HAC pp.598 Algorithm 14.20 * * Note that the description in HAC is horribly  * incomplete.  For example, it doesn't consider  * the case where digits are removed from 'x' in  * the inner loop.  It also doesn't consider the  * case that y has fewer than three digits, etc.. * * The overall algorithm is as described as  * 14.20 from HAC but fixed to treat these cases.*/int mp_div (mp_int * a, mp_int * b, mp_int * c, mp_int * d){  mp_int  q, x, y, t1, t2;  int     res, n, t, i, norm, neg;  /* is divisor zero ? */  if (mp_iszero (b) == 1) {    return MP_VAL;  }  /* if a < b then q=0, r = a */  if (mp_cmp_mag (a, b) == MP_LT) {    if (d != NULL) {      res = mp_copy (a, d);    } else {      res = MP_OKAY;    }    if (c != NULL) {      mp_zero (c);    }    return res;  }  if ((res = mp_init_size (&q, a->used + 2)) != MP_OKAY) {    return res;  }  q.used = a->used + 2;  if ((res = mp_init (&t1)) != MP_OKAY) {    goto LBL_Q;  }  if ((res = mp_init (&t2)) != MP_OKAY) {    goto LBL_T1;  }  if ((res = mp_init_copy (&x, a)) != MP_OKAY) {    goto LBL_T2;  }  if ((res = mp_init_copy (&y, b)) != MP_OKAY) {    goto LBL_X;  }

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品免费在线观看| 成人黄色软件下载| 国产欧美日韩另类视频免费观看| 波多野结衣一区二区三区 | 精品成人一区二区三区四区| 97久久精品人人做人人爽| 国内精品视频一区二区三区八戒| 亚洲精品乱码久久久久久久久| 国产亚洲精品资源在线26u| 欧美精品丝袜久久久中文字幕| 97久久精品人人爽人人爽蜜臀| 激情深爱一区二区| 亚洲一区二区三区四区在线免费观看| 久久久精品免费免费| 欧美一区二区啪啪| 青青草国产成人99久久| 亚洲精品乱码久久久久久| 亚洲国产精品精华液2区45| 日韩三级伦理片妻子的秘密按摩| 99久久精品免费观看| 国产精品一区二区视频| 久久成人免费电影| 美女看a上一区| 日韩av午夜在线观看| 亚洲午夜精品网| 一区二区三区毛片| 亚洲久本草在线中文字幕| 欧美国产精品一区二区| 久久蜜桃香蕉精品一区二区三区| 日韩欧美在线综合网| 欧美高清视频www夜色资源网| 欧美综合色免费| 在线一区二区三区| 91国偷自产一区二区开放时间 | 91黄色免费版| 国产一区二区0| 日韩午夜在线观看| 国产成人在线免费观看| 久久99国产精品麻豆| 全国精品久久少妇| 免费人成精品欧美精品| 奇米影视7777精品一区二区| 手机精品视频在线观看| 日韩黄色一级片| 国产又黄又大久久| 精品一区中文字幕| 国产酒店精品激情| 成人毛片视频在线观看| 成人激情av网| 色哟哟欧美精品| 欧美色综合网站| 欧美一区二区免费观在线| 日韩欧美久久一区| 久久久高清一区二区三区| 国产精品久久免费看| 亚洲欧美日韩电影| 午夜精品影院在线观看| 麻豆91在线播放免费| 国产精品资源在线观看| 99精品视频在线观看免费| 免费人成在线不卡| 国产精品久久久久毛片软件| 这里只有精品视频在线观看| 欧美日韩亚洲高清一区二区| 日韩欧美色综合网站| 久久久www成人免费毛片麻豆| 18成人在线观看| 天堂成人免费av电影一区| 久久国产三级精品| 东方aⅴ免费观看久久av| 日本福利一区二区| 日韩欧美一二三区| 亚洲视频你懂的| 免费观看成人鲁鲁鲁鲁鲁视频| 国产福利一区二区三区视频| 91美女蜜桃在线| 日韩欧美一级片| 亚洲欧美视频在线观看视频| 美国一区二区三区在线播放| 成人黄色一级视频| 日韩美女天天操| 亚洲欧美偷拍卡通变态| 麻豆精品久久精品色综合| 成人小视频在线| 7777精品伊人久久久大香线蕉完整版| 久久精品亚洲麻豆av一区二区 | 欧美一级国产精品| 亚洲综合男人的天堂| 久久精品久久综合| 91女厕偷拍女厕偷拍高清| 日韩欧美一区在线| 亚洲靠逼com| 国产一区二区三区观看| 欧美视频一区在线| 亚洲国产精品精华液2区45| 日韩国产欧美一区二区三区| 99热精品国产| 精品成人私密视频| 亚洲高清在线精品| a级高清视频欧美日韩| 日韩精品最新网址| 日韩有码一区二区三区| fc2成人免费人成在线观看播放| 欧美va亚洲va在线观看蝴蝶网| 一区二区三区四区不卡视频| 国产91精品一区二区麻豆网站| 欧美日韩精品三区| 日韩黄色片在线观看| 成人av在线观| 国产欧美视频一区二区三区| 日日嗨av一区二区三区四区| 色哟哟亚洲精品| 国产精品电影院| 国产成人精品免费| 成人免费视频一区| 自拍av一区二区三区| av亚洲精华国产精华精华| 日韩视频一区在线观看| 亚洲成人三级小说| 在线观看91视频| 亚洲精品免费一二三区| 91网站黄www| 国产精品久久毛片a| 国产成人午夜精品5599| 久久免费精品国产久精品久久久久 | 色噜噜狠狠成人中文综合| 亚洲欧美中日韩| youjizz国产精品| 欧美国产日本视频| 东方aⅴ免费观看久久av| 久久久亚洲午夜电影| 国产精品一级二级三级| 久久久久久久久久久久久夜| 激情综合网最新| 欧美xfplay| 国产精品一区二区91| 久久精品一区八戒影视| 成人精品视频.| 国产精品成人免费在线| 色婷婷综合久色| 亚洲一区二区三区影院| 在线国产亚洲欧美| 亚洲国产精品视频| 欧美精品久久99久久在免费线 | 成人精品免费网站| 亚洲三级免费观看| 在线欧美日韩精品| 亚洲影视资源网| 欧美日韩精品一区二区三区| 日本亚洲三级在线| 久久天天做天天爱综合色| 国产99精品视频| 国产精品久久看| 在线视频你懂得一区| 亚洲大尺度视频在线观看| 在线不卡的av| 国产乱色国产精品免费视频| 国产精品国模大尺度视频| 91福利视频久久久久| 日本色综合中文字幕| 国产欧美一区二区三区鸳鸯浴| 99热99精品| 午夜电影久久久| 久久免费视频色| 91福利视频网站| 久久激情五月激情| 最近中文字幕一区二区三区| 欧美日韩国产系列| 国产精品99久久久久| 亚洲精品乱码久久久久久久久 | 日韩精品中文字幕在线不卡尤物| 国产老肥熟一区二区三区| 亚洲激情校园春色| 欧美本精品男人aⅴ天堂| 99re成人精品视频| 日本vs亚洲vs韩国一区三区二区| 国产欧美日韩在线看| 色婷婷综合久久久久中文| 美女精品一区二区| 亚洲男人的天堂在线观看| 精品福利二区三区| 色哟哟在线观看一区二区三区| 麻豆精品新av中文字幕| 亚洲免费观看高清完整| 欧美电影免费观看高清完整版在线| 懂色中文一区二区在线播放| 偷拍日韩校园综合在线| 欧美经典三级视频一区二区三区| 欧美日韩精品一区视频| 成人国产精品免费网站| 男女男精品视频| 一区二区日韩av| 国产精品免费网站在线观看| 日韩一区二区三区视频在线观看| 色天使色偷偷av一区二区| 国产乱国产乱300精品| 日韩国产欧美视频| 亚洲激情一二三区| 国产精品美女久久福利网站| 日韩免费视频一区|