首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IEEE-754操作有开源的c/c++实现吗?

IEEE-754操作有开源的c/c++实现吗?
EN

Stack Overflow用户
提问于 2010-02-03 03:01:20
回答 4查看 10.2K关注 0票数 16

我正在寻找IEEE-754操作的参考实现。真的有这样的事情吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-02-03 03:37:56

我相信C库SoftFloatfdlibm适合您正在寻找的东西。其他包括Linux (GNU libc,glibc)或*BSD libc的math functions。最后,您也应该对CRlibm感兴趣。

Ulrich Drepper有一个有趣的look at different math libraries,可能也值得一读。

票数 8
EN

Stack Overflow用户

发布于 2010-02-03 03:44:49

我必须让你失望:实际上什么都没有。

虽然从技术上讲,存在符合IEEE-754的系统,因为它们没有实现标准中描述的非必需功能,但参考实现允许

  • 访问所有舍入模式
  • 支持信令NaNs
  • 支持捕获所有五个陷阱

在标准语言中不存在。这给William Kahan带来了反复出现的麻烦,他是该标准及其在Intel处理器上的改编背后的主要力量。

我不知道是否有一些深奥的语言支持它们,但我可以排除Java,C#,C++,Fortran。

编辑:虽然缺少编译器支持,但我建议Hauser使用mctylr提供的SoftFloat实现。Hauser知道自己在做什么。

http://portal.acm.org/citation.cfm?id=227699.227701&coll=portal&dl=ACM&CFID=77938829&CFTOKEN=18578907

票数 3
EN

Stack Overflow用户

发布于 2010-02-03 03:14:16

这是一个相当令人困惑的问题;在C++中,假设这类细节由硬件或编译器处理。因此,在C++中,浮点加法应该是

代码语言:javascript
复制
float a = 1.0;
float b = 2.0;
float c = a + b;

我敢肯定这不是你真正想要的;也许你会从this page中受益,它试图用javascript模拟IEEE-754兼容的硬件?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2186788

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档