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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? g_lip.h

?? 一個比較通用的大數運算庫
?? H
?? 第 1 頁 / 共 2 頁
字號:


#ifdef NTL_SINGLE_MUL
#error "do not set NTL_SINGLE_MUL when NTL_GMP_LIP is set"
#endif

#if 1

typedef void *_ntl_gbigint;

#else

/*
 * This way of defining the bigint handle type is a bit non-standard,
 * but better for debugging.
 */

struct _ntl_gbigint_is_opaque { int _x_; };
typedef struct _ntl_gbigint_is_opaque * _ntl_gbigint;

#endif

#define NTL_SP_NBITS NTL_NBITS_MAX
#define NTL_SP_BOUND (1L << NTL_SP_NBITS)
#define NTL_SP_FBOUND ((double) NTL_SP_BOUND)

#define NTL_WSP_NBITS (NTL_BITS_PER_LONG-2)
#define NTL_WSP_BOUND (1L << NTL_WSP_NBITS)

/* define the following so an error is raised */

#define NTL_RADIX ......
#define NTL_NBITSH ......
#define NTL_RADIXM ......
#define NTL_RADIXROOT ......
#define NTL_RADIXROOTM ......
#define NTL_FRADIX_INV ......




#if (defined(__cplusplus) && !defined(NTL_CXX_ONLY))
extern "C" {
#endif


/***********************************************************************

   Basic Functions

***********************************************************************/
    


    void _ntl_gsadd(_ntl_gbigint a, long d, _ntl_gbigint *b);
       /* *b = a + d */

    void _ntl_gadd(_ntl_gbigint a, _ntl_gbigint b, _ntl_gbigint *c);
       /*  *c = a + b */

    void _ntl_gsub(_ntl_gbigint a, _ntl_gbigint b, _ntl_gbigint *c);
       /* *c = a - b */

    void _ntl_gsubpos(_ntl_gbigint a, _ntl_gbigint b, _ntl_gbigint *c);
       /* *c = a - b; assumes a >= b >= 0 */

    void _ntl_gsmul(_ntl_gbigint a, long d, _ntl_gbigint *b);
       /* *b = d * a */

    void _ntl_gmul(_ntl_gbigint a, _ntl_gbigint b, _ntl_gbigint *c);
       /* *c = a * b */

    void _ntl_gsq(_ntl_gbigint a, _ntl_gbigint *c);
       /* *c = a * a */

    long _ntl_gsdiv(_ntl_gbigint a, long b, _ntl_gbigint *q);
       /* (*q) = floor(a/b) and a - floor(a/b)*(*q) is returned;
          error is raised if b == 0;
          if b does not divide a, then sign(*q) == sign(b) */

    void _ntl_gdiv(_ntl_gbigint a, _ntl_gbigint b, _ntl_gbigint *q, _ntl_gbigint *r);
       /* (*q) = floor(a/b) and (*r) = a - floor(a/b)*(*q);
          error is raised if b == 0;
          if b does not divide a, then sign(*q) == sign(b) */

    void _ntl_gmod(_ntl_gbigint a, _ntl_gbigint b, _ntl_gbigint *r);
       /* same as _ntl_gdiv, but only remainder is computed */

    long _ntl_gsmod(_ntl_gbigint a, long d);
       /* same as _ntl_gsdiv, but only remainder is computed */

    void _ntl_gquickmod(_ntl_gbigint *r, _ntl_gbigint b);
       /* *r = *r % b; 
	  The division is performed in place (but may sometimes
	  assumes b > 0 and *r >= 0;
          cause *r to grow by one digit) */

/********************************************************************

   Shifting and bit manipulation

*********************************************************************/


    void _ntl_glshift(_ntl_gbigint n, long k, _ntl_gbigint *a);
       /* *a = sign(n) * (|n| << k);
          shift is in reverse direction for negative k */

    void _ntl_grshift(_ntl_gbigint n, long k, _ntl_gbigint *a);
       /* *a = sign(n) * (|n| >> k);
          shift is in reverse direction for negative k */
    
    long _ntl_gmakeodd(_ntl_gbigint *n);
       /*
          if (n != 0)
              *n = m;
              return (k such that n == 2 ^ k * m with m odd);
          else
              return (0); 
        */

    long _ntl_gnumtwos(_ntl_gbigint n);
        /* return largest e such that 2^e divides n, or zero if n is zero */

    long _ntl_godd(_ntl_gbigint a);
       /* returns 1 if n is odd and 0 if it is even */

    long _ntl_gbit(_ntl_gbigint a, long p);
       /* returns p-th bit of a, where the low order bit is indexed by 0;
          p out of range returns 0 */

    long _ntl_gsetbit(_ntl_gbigint *a, long p);
       /* returns original value of p-th bit of |a|, and replaces
          p-th bit of a by 1 if it was zero;
          error if p < 0 */

    long _ntl_gswitchbit(_ntl_gbigint *a, long p);
       /* returns original value of p-th bit of |a|, and switches
          the value of p-th bit of a;
          p starts counting at 0;
          error if p < 0 */


     void _ntl_glowbits(_ntl_gbigint a, long k, _ntl_gbigint *b);
        /* places k low order bits of |a| in b */ 

     long _ntl_gslowbits(_ntl_gbigint a, long k);
        /* returns k low order bits of |a| */

    long _ntl_gweights(long a);
        /* returns Hamming weight of |a| */

    long _ntl_gweight(_ntl_gbigint a);
        /* returns Hamming weight of |a| */

    void _ntl_gand(_ntl_gbigint a, _ntl_gbigint b, _ntl_gbigint *c);
        /* c gets bit pattern `bits of |a|` and `bits of |b|` */

    void _ntl_gor(_ntl_gbigint a, _ntl_gbigint b, _ntl_gbigint *c);
        /* c gets bit pattern `bits of |a|` inclusive or `bits of |b|` */

    void _ntl_gxor(_ntl_gbigint a, _ntl_gbigint b, _ntl_gbigint *c);
        /* c gets bit pattern `bits of |a|` exclusive or `bits of |b|` */




/************************************************************************

   Comparison

*************************************************************************/

    long _ntl_gcompare(_ntl_gbigint a, _ntl_gbigint b);
       /*
          if (a > b)
              return (1);
          if (a == b)
              return (0);
          if (a < b)
              return (-1);
         */

    long _ntl_gscompare(_ntl_gbigint a, long b);
       /* single-precision version of the above */

    long _ntl_giszero (_ntl_gbigint a);
       /* test for 0 */


    long _ntl_gsign(_ntl_gbigint a);
       /* 
          if (a > 0)
              return (1);
          if (a == 0)
              return (0);
          if (a < 0)
              return (-1);
        */

    void _ntl_gabs(_ntl_gbigint *a);
       /* *a = |a| */

    void _ntl_gnegate(_ntl_gbigint *a);
       /* *a = -a */

    void _ntl_gcopy(_ntl_gbigint a, _ntl_gbigint *b);
       /* *b = a;  */

    void _ntl_gswap(_ntl_gbigint *a, _ntl_gbigint *b);
       /* swap a and b (by swaping pointers) */

    long _ntl_g2log(_ntl_gbigint a);
       /* number of bits in |a|; returns 0 if a = 0 */

    long _ntl_g2logs(long a);
        /* single-precision version of the above */


/********************************************************************

   Conversion

*********************************************************************/
        
    void _ntl_gzero(_ntl_gbigint *a);
       /* *a = 0;  */

    void _ntl_gone(_ntl_gbigint *a);
       /* *a = 1 */

    void _ntl_gintoz(long d, _ntl_gbigint *a);
       /* *a = d;  */


    void _ntl_guintoz(unsigned long d, _ntl_gbigint *a);
       /* *a = d;  space is allocated  */

    long _ntl_gtoint(_ntl_gbigint a);
       /* converts a to a long;  overflow results in value
          mod 2^{NTL_BITS_PER_LONG}. */

    unsigned long _ntl_gtouint(_ntl_gbigint a);
       /* converts a to a long;  overflow results in value
          mod 2^{NTL_BITS_PER_LONG}. */

   


    double _ntl_gdoub(_ntl_gbigint n);
       /* converts a to a double;  no overflow check */

    long _ntl_ground_correction(_ntl_gbigint a, long k, long residual);
       /* k >= 1, |a| >= 2^k, and residual is 0, 1, or -1.
          The result is what we should add to (a >> k) to round
          x = a/2^k to the nearest integer using IEEE-like rounding rules
          (i.e., round to nearest, and round to even to break ties).
          The result is either 0 or sign(a).
          If residual is not zero, it is as if x were replaced by
          x' = x + residual*2^{-(k+1)}.
          This can be used to break ties when x is exactly
          half way between two integers. */

    double _ntl_glog(_ntl_gbigint a);
       /* computes log(a), protecting against overflow */

    void _ntl_gdoubtoz(double a, _ntl_gbigint *x);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美sm美女调教| 蜜臀av一区二区在线观看| 日本sm残虐另类| 91首页免费视频| 欧美成人性战久久| 亚洲国产一区二区三区| 99久久夜色精品国产网站| 欧美一级日韩不卡播放免费| 亚洲美女在线一区| 国产精品99久久久久| 欧美高清激情brazzers| 国产精品福利一区二区| 国产综合成人久久大片91| 在线91免费看| 亚洲电影中文字幕在线观看| av中文字幕一区| 国产欧美日韩精品a在线观看| 精品在线一区二区三区| 69堂亚洲精品首页| 夜夜嗨av一区二区三区中文字幕 | 本田岬高潮一区二区三区| 日韩欧美三级在线| 日本aⅴ免费视频一区二区三区| 欧美中文字幕久久| 一区2区3区在线看| av在线这里只有精品| 亚洲国产精品精华液ab| 国产91精品在线观看| 国产精品沙发午睡系列990531| 国产精品一二一区| 久久久久久久综合色一本| 美女视频黄 久久| 欧美一级高清大全免费观看| 日韩在线一二三区| 欧美一区二区性放荡片| 丝袜美腿一区二区三区| 91精品免费在线观看| 青草国产精品久久久久久| 欧美大片免费久久精品三p| 美腿丝袜一区二区三区| 精品免费国产一区二区三区四区| 蜜桃在线一区二区三区| 精品动漫一区二区三区在线观看| 狠狠色综合播放一区二区| 久久影院午夜片一区| 国产高清精品在线| 中文字幕一区二区三区四区| 91浏览器打开| 性欧美疯狂xxxxbbbb| 欧美一级专区免费大片| 国产精品影视网| **性色生活片久久毛片| 欧美无砖专区一中文字| 免费一级片91| 中文字幕欧美区| 欧美亚一区二区| 久久精品久久精品| 欧美极品少妇xxxxⅹ高跟鞋| 91免费在线播放| 日韩综合小视频| 中文字幕免费观看一区| 欧美午夜视频网站| 国产精品一区二区你懂的| 亚洲精选一二三| 日韩三级视频在线观看| 成人一道本在线| 婷婷久久综合九色综合伊人色| 久久亚洲私人国产精品va媚药| caoporen国产精品视频| 视频一区二区国产| 中文成人综合网| 欧美日韩一区二区在线视频| 国产原创一区二区| 亚洲国产精品人人做人人爽| 久久久久久麻豆| 欧美日韩国产综合一区二区三区| 国产精品一区二区久久不卡 | 91视频在线观看| 蜜桃视频一区二区三区在线观看| 欧美激情中文字幕| 欧美电影一区二区| 色综合久久综合中文综合网| 国产中文一区二区三区| 亚洲综合激情另类小说区| 国产亚洲欧美日韩在线一区| 欧美日韩另类一区| 99久久国产综合色|国产精品| 蜜臀精品久久久久久蜜臀 | 欧美午夜不卡在线观看免费| 成人性生交大片免费看中文网站| 日韩不卡一二三区| 亚洲狠狠丁香婷婷综合久久久| 久久久久久毛片| 欧美大片顶级少妇| 在线观看91精品国产麻豆| 色成年激情久久综合| 不卡一区二区三区四区| 激情综合色播激情啊| 青草av.久久免费一区| 亚洲一级二级在线| 亚洲狠狠丁香婷婷综合久久久| 久久久不卡影院| 秋霞电影网一区二区| 一区在线中文字幕| 国产精品无遮挡| 国产欧美视频在线观看| www国产精品av| 91麻豆精品国产91久久久久久| 在线观看亚洲a| 色噜噜久久综合| 99久久精品国产麻豆演员表| 99热在这里有精品免费| 99精品视频在线免费观看| av不卡免费电影| 色综合久久天天| 欧美在线观看视频一区二区三区| 欧洲一区二区三区在线| 在线欧美日韩国产| 欧美美女bb生活片| 91精品国产色综合久久久蜜香臀| 91精品啪在线观看国产60岁| 欧美一区二区三区在线视频| 91精品国产高清一区二区三区蜜臀| 欧美图片一区二区三区| 欧美一区二视频| 久久久久久久久久美女| 久久精品欧美日韩| 最新高清无码专区| 一区二区三区蜜桃网| 视频在线观看一区| 精品亚洲欧美一区| 99久久精品久久久久久清纯| 91久久免费观看| 欧美一区二区美女| 久久九九影视网| 亚洲自拍偷拍九九九| 日韩电影免费在线观看网站| 国产一区二区三区香蕉| 97久久精品人人做人人爽50路| 色综合天天综合| 欧美成人一区二区三区在线观看| 久久亚洲二区三区| 夜夜操天天操亚洲| 国内成人自拍视频| 色婷婷激情一区二区三区| 日韩一级欧美一级| 国产精品福利一区二区三区| 午夜精品福利视频网站| 国内成人精品2018免费看| 91看片淫黄大片一级在线观看| 欧美精品色综合| 国产三级精品在线| 午夜激情久久久| 成人av网站在线| 在线不卡欧美精品一区二区三区| 国产日韩在线不卡| 日韩综合小视频| 成人午夜看片网址| 91精品国产日韩91久久久久久| 国产日产欧美一区| 奇米888四色在线精品| 成人中文字幕在线| 日韩一区二区电影| 亚洲一卡二卡三卡四卡五卡| 国产精品69毛片高清亚洲| 欧美午夜在线一二页| 久久久www成人免费毛片麻豆| 亚洲在线成人精品| 东方欧美亚洲色图在线| 日韩欧美专区在线| 亚洲一区欧美一区| 99精品偷自拍| 国产欧美久久久精品影院| 视频一区中文字幕| 91电影在线观看| 国产精品久久久久久户外露出| 蜜桃视频一区二区| 欧美日韩精品一区二区三区蜜桃| 国产精品美女www爽爽爽| 久久精品噜噜噜成人88aⅴ| 欧美日韩精品系列| 亚洲综合图片区| 91在线观看视频| 国产欧美日韩不卡免费| 国产精一区二区三区| 日韩欧美一级二级| 七七婷婷婷婷精品国产| 欧美精品一二三| 亚洲国产va精品久久久不卡综合| 99免费精品在线观看| 中文一区一区三区高中清不卡| 国产乱码精品一区二区三区av | 国产一区二区三区美女| 欧美一区二区视频网站| 日韩精品一区第一页| 欧美日韩不卡视频| 日本在线不卡一区| 日韩精品一区二区三区视频在线观看| 婷婷综合在线观看| 69堂国产成人免费视频|