问题标签 [boost-multiprecision]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
202 浏览

c++ - 查找用于提升多精度 uint512_t 的 First Set 指令 (ffs)

我正在开发一种__builtin_ffsll()uint64_t类型一起使用的算法。

我想使用 boost 多精度库切换到 512 位字段(我在支持 avx512 的机器上运行)。

是否有与提到的内置功能类似的功能?或者,我怎样才能有效地为 512 位整数实现这样的功能?

0 投票
1 回答
114 浏览

c++ - 为什么 odeint 使用较新版本的 odeint 会失败?

我一直在努力使用新版本的 boost。我正在使用具有多重精度的 odeint。下面这段代码可以用boost 1.67.0版本成功编译。但是,由于版本 1.68.0 和更高版本,我无法再编译。在 1.68.0 版本中引入了复杂的多精度数字,我想在我的代码中也使用这种数据类型。有人能告诉我代码中的错误在哪里吗?

我正在开发opensuse,使用icpc 或g++ 7.4.1 编译。我使用 icpc 收到的错误消息很长。

0 投票
0 回答
305 浏览

c++ - 提升对 windows 10 的 float128 支持

我想在 Windows 上为我的 C++ 应用程序获得 128 位浮点精度。目前,我可以在 Linux 和 macOS 上执行此操作,使用 g++ 编译器和 quadmath 和 boost::multiprecision::float128 库。

在 Windows 上,我的应用程序当前使用 Visual Studio 2017 编译,并且仅限于双精度。

目前尚不清楚,在互联网上研究,哪些可用的基于 gcc 的工具链为 x86 和 x64 提供了工作四元数学。是否有适用于 Windows 的支持 float128 和 quadmath 的有效编译器工具链?

0 投票
1 回答
306 浏览

c++ - 如何打印提升多精度 128 位无符号整数

我想打印从十六进制值转换的整数值,但我只能打印十六进制值。

输出

如何打印 128 位整数类型的最大值?

0 投票
1 回答
223 浏览

c++ - Boost C++如何输出没有指数字符的浮点值的所有数字?

所以我按照这里的文档:https ://www.boost.org/doc/libs/1_63_0/libs/multiprecision/doc/html/boost_multiprecision/tut/floats/cpp_dec_float.html

我期望得到的输出是:0.00000000000000000001(20 个零)

但是程序的输出是: 在此处输入图像描述

对于这个问题,我只想删除“e^-16”部分。我怎样才能做到这一点?此外,如果其他人可以帮助我输出确切的值,那也会很有帮助。

谢谢你。

0 投票
1 回答
71 浏览

c++ - Boost 的多精度模拟低精度快速浮点数

我有一个 stm32-F1 处理器,它的浮点运算速度非常慢,而且我有一些来自 F7 处理器的库,它们使用了很多浮点数。我想在我可怜的 F1 上使用这个库,所以我正在考虑一种方法,尽可能少地对代码进行调整,并使用相同的接口但使用底层整数类型来模拟浮点数。重要的是要注意,我只需要 7 位精度(0.001 到 4094.999 之间的数字,这就是为什么我猜 typedef number<cpp_dec_float<7> > fixed7;在我的情况下类似的东西会比浮点数更快。boost 的多精度是否足够好?你还有其他建议吗?我应该制作自己的算术类型吗?

0 投票
1 回答
297 浏览

c++ - 如何以二进制形式显示 C++ Boost Library 多精度大整数?

我是 Boost 的新手,并试图使用它的多精度库来乘以非常大的输入:

我需要能够将结果保存为二进制形式的字符串。我试图访问整数中“肢体”的数量:

然后遍历每个肢体并使用该bitset函数将每个肢体转换为二进制字符串,但它不起作用。

我还能如何做到这一点?

0 投票
2 回答
188 浏览

c++ - 提升多精度整数的类型特征

我想编写一个类型特征来识别提升多精度整数类型。我可以为具体类型执行此操作,例如uint256_t

但是我怎么能对任何提升多精度整数(或至少对于任何带有cpp_int后端的多精度数字)做同样的事情?

0 投票
1 回答
213 浏览

c++ - 使用 boost 库 (cpp_int) 时出现常量太大的错误

当我尝试使用大整数时,我安装了 boost 库,但是当我尝试调试时,我得到常量太大的错误,而我认为 cpp_int 可以处理它吗?你能看看我的代码和错误吗?这是错误:

错误 C2177 常量太大 HW7 C:\Users\hmffa\source\repos\HW7\HW7.cpp 34
错误(活动) E0023 整数常量太大 HW7 C:\Users\hmffa\source\repos\HW7\HW7.cpp 34

0 投票
1 回答
216 浏览

c++ - 使用 MPFR 时如何在 Boost Multiprecision 中设置舍入模式

我试图弄清楚如何在 Boost Multiprecision 中使用舍入模式格式化 mpfr_float 数字。在下面的示例中,我预计 1.55 会根据使用的舍入模式舍入为 1.5 或 1.6,但对于所有情况,它都会输出 1.5。如何在 Boost with MPFR 中实现这个简单的功能?