我想知道是否有任何人可以推荐一个好的轻量级固定大小整数类型(128位甚至256位,甚至可能是模板参数化)库.
我已经看过GMP和co了,他们关心的很好,但是对于我的目的来说有点太大了,我现在对简单的标题解决方案感兴趣.性能很重要,目标架构将是x86和x86-64,也是一个合理的许可证(也就是GPL或LGPL).
Tux*_*ude 10
该Boost库将数据类型作为multiprecision库的一部分,类型范围从 128 到 1024 位。
#include <boost/multiprecision/cpp_int.hpp>
using namespace boost::multiprecision;
int128_t mySignedInt128 = -1;
uint128_t myUnsignedInt128 = 2;
int256_t mySignedInt256 = -3;
uint256_t myUnsignedInt256 = 4;
int512_t mySignedInt512 = -5;
uint512_t myUnsignedInt512 = 6;
int1024_t mySignedInt1024 = -7;
uint1024_t myUnsignedInt1024 = 8;
Run Code Online (Sandbox Code Playgroud)
Ste*_*e-o -1
某些本机 128 位类型可在某些平台上使用,您往往会受到架构的限制。例如__m128SSE2可用吗?
http://msdn.microsoft.com/en-us/library/ayeb3ayc.aspx
还在__int128此 ABI 中列出:
http://www.x86-64.org/documentation/abi-0.99.pdf
然而,首选命名uint128_t和uint256_t可以在 SHOGUN 中找到,这是一个“特别关注支持向量机 (SVM) 的大型机器学习工具箱”
http://www.shogun-toolbox.org/doc/index.html
| 归档时间: |
|
| 查看次数: |
13708 次 |
| 最近记录: |