2

我需要在 Dyalog APL 中精确工作。我知道 ⎕PP 的值设置了精度,但是我不能将它增加到 18 以上,所以我不能得到超过 18 位的精度,我需要用大数字来操作。有什么办法可以提高精度吗?

4

3 回答 3

6

Dyalog APL 13.0 版目前处于测试阶段,计划于 3 月底发布,允许用户决定是使用旧的 IEEE-754 二进制双精度格式(最大精度为 16 位),还是使用 IEE- 754-2008 128 位十进制浮点数。新格式具有 34 位精度,还避免了旧二进制格式引起的一些舍入问题。除非您在 IBM POWER 硬件上运行 APL,否则使用新格式的计算会明显变慢,该硬件支持 P6 中的新格式。如果您想参与 Beta 计划,请联系 sales@dyalog.com。

13.0 版还在 Dyalog APL 中增加了对复数的支持——但仅使用一对二进制双精度数——目前不会有十进制复数。

我们正在努力支持无限精度整数和有理数。这种原型可能会在 2011 年出现,但我们预计最早要到 2012 年才能将其投入生产。

Morten Kromberg(Dyalog Ltd 首席技术官)

于 2011-02-01T13:38:35.940 回答
3

Quad PP 用于“打印精度”,仅与 Dyalog APL 会话中显示数字有关,与数字的实际精度无关。

提供了一个名为“dfns”的工作区,其中包含用于处理大数字的函数。

于 2009-07-17T19:02:04.617 回答
3

跟进 Morten 的回复,Dyalog APL 自 2011 年发布 13.0 版本以来确实支持 128 位四精度十进制浮点数!您可以通过将系统变量 ⎕FR 设置为 645(对于双精度二进制)或 1287(对于四精度十进制)来切换浮点格式。在线尝试!

于 2018-02-01T12:53:12.117 回答