我使用 c++ 来计算各种类型的特殊函数(例如 Lambert 函数、求值反转的迭代方法等)。在许多情况下,直接使用尾数和指数显然有更好的方法。
我找到了很多如何提取尾数和指数部分的答案,但是所有这些都只是“计算速度不是很有效的学术案例”,对我来说有点无用(我使用尾数和指数操作的动机是改进计算速度)。有时我需要调用一些特定的函数大约十亿次(非常昂贵的计算),所以每次保存的计算工作都很好。并且使用将尾数作为双精度返回的“freexp”不是很合适。
我的问题是(对于具有 IEEE 754 浮点的 c++ 编译器):
1)如何读取浮点/双精度尾数的特定位?
2)如何将整个尾数读入浮点/双精度的整数/字节?
3) 与 1)、2) 相同的问题。
4) 写作题与 1)、2)、3) 相同。
如果我直接使用尾数或指数,我的动机是更快的计算。我想必须有一个非常简单的解决方案。