当前位置: 首页>>代码示例>>C++>>正文


C++ Number::ShiftLowBits方法代码示例

本文整理汇总了C++中Number::ShiftLowBits方法的典型用法代码示例。如果您正苦于以下问题:C++ Number::ShiftLowBits方法的具体用法?C++ Number::ShiftLowBits怎么用?C++ Number::ShiftLowBits使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Number的用法示例。


在下文中一共展示了Number::ShiftLowBits方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: ECMultBase

void ECMultBase(GroupElemJac &out, const Number &gn) {
    Number n; n.SetNumber(gn);
    const ECMultConsts &c = GetECMultConsts();
    out.SetAffine(c.prec[0][n.ShiftLowBits(4)]);
    for (int j=1; j<64; j++) {
        out.SetAdd(out, c.prec[j][n.ShiftLowBits(4)]);
    }
    out.SetAdd(out, c.fin);
}
开发者ID:CodeShark,项目名称:secp256k1,代码行数:9,代码来源:ecmult.cpp

示例2: WNAF

 WNAF(const Number &exp, int w) : used(0) {
     int zeroes = 0;
     Number x;
     x.SetNumber(exp);
     int sign = 1;
     if (x.IsNeg()) {
         sign = -1;
         x.Negate();
     }
     while (!x.IsZero()) {
         while (!x.IsOdd()) {
             zeroes++;
             x.Shift1();
         }
         int word = x.ShiftLowBits(w);
         if (word & (1 << (w-1))) {
             x.Inc();
             PushNAF(sign * (word - (1 << w)), zeroes);
         } else {
             PushNAF(sign * word, zeroes);
         }
         zeroes = w-1;
     }
 }
开发者ID:CodeShark,项目名称:secp256k1,代码行数:24,代码来源:ecmult.cpp


注:本文中的Number::ShiftLowBits方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。