请注意,我不是在寻找基于意见或某些第三方库的东西 - 我只是想确认没有任何计划(或指向权力的某些讨论).我试过谷歌并没有找到任何东西,所以看起来我正朝着"使用英特尔库在C++/CLI中编写我自己的实现").
像许多人一样,我正在处理财务数据,这意味着花车存在极大的问题.同时,.NET十进制是一个野兽 - 慢而且大(128位大)这使得当你收集成千上万的它们并希望它们在一个包含更多信息的结构中时使用它是低效的.
IEEE 754定义了3种十进制类型,它们可能在主流处理器的硬件中得到支持(例如,它们已经具有较少的通用功能,例如Power系列),支持32位,64位和128位.有一个优化的英特尔库可以进行十进制数学运算,很可能在某一点上至少有更简单的数学将在硬件中.
我所能找到的只是Annotated C#Standard中关于.NET十进制与IEEE当时提出的标准之间的互操作的古老讨论,并且它被拒绝但是以某种方式可以确定位域是.NET小数还是bit inveted IEEE decimal 128.
从那时起,许多年过去了.现在IEEE 754:2008已经完成 - 我想知道是否有任何关于如何继续发布的官方文章.正如我所说的那样,.NET十进制数字很慢,并且没有机会获得硬件加速 - 而且我的表现非常大.
那么,任何人都知道博客中的任何东西?注意 - 它必须是官方的或指的,我不是来自与.NET语言或BCL团队无关的人的意见.这是关于规范资源,是否将来考虑其他数据类型......可能是针对.NET 5.0/6.0时间帧.
我编写过财务软件,并且完全理解为什么简单的整数是不够的。
\n\n证明否定是极其困难的,但这里是:
\n\nhttp://social.msdn.microsoft.com/forums/vstudio/en-US/48c698db-d602-4f83-92bb-1c0506d58a78/ieee754 \n简而言之,如果语言不需要它,.NET 不在乎。
\n\n查找需要它的语言:\n看起来 Dietmar K\xc3\xbchl 打算尝试向 c 添加小数,但未能及时提交:\n C++ 十进制数据类型
\n\n尽管如此,IEEE 仍然在小数方面做了大量的工作。尝试以下 Google 搜索:\n
\n 十进制站点:ieee.org 并将其限制为上个月。\n 十进制草稿站点:ieee.org 并将其限制为去年。\n\n
如果它存在于硬件中,那么软件最终也会拥有它。汇编可以让你做任何硬件可以做的事情,但如果你被困在一个不知道新操作码的虚拟机中,我不确定你除了模拟之外还能做什么。
\n\n所以目前我所看到的并不比你多。对不起。
\n\n哦,你可以告诉我 supercat,(a+b)+c = a+(b+c) 在整数上的保证比在浮点数上的保证要多。位也可能从非无限大小的整数的左端脱落。如果您先添加了“a”,则它可能是负数,并且可以避免溢出。
\n| 归档时间: |
|
| 查看次数: |
940 次 |
| 最近记录: |