ieee-754相关内容

FP:无效操作:C(UB)与IEEE 754(WDB)之间存在矛盾?

N2479 C17..C2x工作草案— 2020年2月5日ISO/IEC 9899:202x(E): 6.3.1.4实数浮点数和整数: 1当将标准浮点型的有限值转换为_Bool以外的整数类型时,小数部分将被丢弃(即,该值将被截断为零).如果整数部分的值不能用整数类型表示,则行为是不确定的. IEEE 754-2019: 5.8从浮点格式转换为整数格式的详细信息: 当不 ..
发布时间:2021-05-06 18:37:48 其他开发

如何细化浮点除法结果?

我有一个使用牛顿-拉普森算法来计算浮点数平方根除法的算法.我的结果并不完全准确,有时会偏离1 ulp. 我想知道是否有一种用于浮点除法的精炼算法来获得最终的精度.我将tuckerman检验用于平方根,但是有类似的除法算法吗?还是可以将塔克曼测验进行分组划分? 我也尝试使用此算法,但未获得完全准确的结果: z =除数r_temp =除数* qr =股息-r_tempresult_te ..
发布时间:2021-05-01 18:33:15 其他开发

从C中的32位浮点数中提取位

32位使用IEEE格式以二进制表示.那么如何提取这些位呢?像&这样的按位运算和|不要对他们工作!我基本上想做的是从opencv中的32位浮点图像中提取LSB提前谢谢! 解决方案 #include工会abc{浮佛unsigned int否;};int main(){工会abc测试;test.fo = 36.5;unsigned int x = test.no;for(in ..
发布时间:2021-04-15 19:55:36 其他开发

Python 3-解码光谱数据(Base64,IEEE754)

我是一名化学家,正在使用光谱数据进行存储,这些数据是根据IEEE754作为Base64编码的浮点值的列表(501对X,Y数据)存储的. 我试图从原始数据中获取X,Y数据的数组,但是失败了.附件是光谱的原始数据. 请问您对此主题的指导/帮助吗?我迷路了,克里斯 0x000000000080714000000000009071400000000000A071400000000000B ..
发布时间:2021-04-14 19:23:08 Python

Java Double增量

我有一个双变种 public double votes(){ double votexp = 0; for(Elettore e:docenti.values()){ if(e.getVoto()==true) //everytime this is true increment by 1 { v ..
发布时间:2020-11-26 04:20:05 Java开发

IEEE 754浮点数学

使用IEEE754浮点数(在JavaScript中)时,与以下数学相关的精度损失的风险是什么? 10*.1 即整数乘以有理数. 解决方案 注意:该问题在发布此答案后很久才进行了编辑,以添加“除数"进行更新. 精度损失的风险是什么... 实际上得到保证,具体取决于所涉及的整数和浮点数,这是因为我们使用的内容(以10为底的小数)与实际的IEEE-754浮点数之间不匹配(以 ..
发布时间:2020-11-26 04:20:01 前端开发

牛顿法求平方根

以下Scheme程序实现了牛顿方法,用于计算数字的平方根: (import (scheme small)) (define (sqrt x) (define (sqrt-iter guess) (if (good-enough? guess) guess (sqrt-iter (improve guess)))) (define (good-enou ..
发布时间:2020-11-26 04:19:58 其他开发

IEEE754到浮点C#

下面的代码简单地将32位整数从要传递的对象转换为函数,该32位整数表示一个浮点数.我已经使用在线计算器检查过,我得到正确的符号,指数和曼陀罗,但是奇怪的是我得到的答案是错误的. 任何人都可以检查我是否在数学上(或者可能在编程上)以某种方式做错了吗?? 致谢 public double FromFloatSafe(object f) { uint fb = ..
发布时间:2020-11-26 04:19:55 C#/.NET

IEEE 754,除以零

我知道在标准IEEE 754中允许零除.我想知道它是如何用二进制表示的. 例如,十进制的0.25是 0 01111101 00000000000000000000000 以二进制形式.相对于5.0/0.0或0.0/0.0,它们具有二进制表示形式吗?它们是相同的吗? 谢谢. 解决方案 当您将有限数除以零时,将得到一个无穷大,并带有您要除法的数字的符号.所以5.0/0.0是+ inf,但 ..
发布时间:2020-11-26 04:19:52 其他开发

确定是否在C/C ++中对浮点运算进行了舍入

我正在尝试提出一种有效的方法来确定何时/将对IEEE-754操作进行舍入.不幸的是,我不能简单地检查硬件标志.它必须在几个不同的平台上运行. 我想到的一种方法是在不同的舍入模式下执行运算以比较结果. 添加示例: double result = operand1 + operand2; // save rounding mode int savedMode ..
发布时间:2020-11-26 04:19:48 其他开发

点积的最坏情况精度是多少?

假定处理器仅具有符合IEEE-754的"fadd"和"fmul"操作(没有"dot"或"fma"指令).平凡实现点积运算将实现最差的精度.例如,对于长度为3的向量: dot(vec_a, vec_b) = vec_a.x*vec_b.x + vec_a.y*vec_b.y + vec_a.z*vec_b.z 这是我的分析,但不确定是否正确: 对于长度为N的向量,有N个乘法和N-1个加法, ..
发布时间:2020-11-26 04:19:45 其他开发

0除以无限是否保证为0?

根据此问题,对于n != 0,n/inf预期为零.何时n == 0呢?根据IEEE-754,(0 / inf) == 0始终是真的吗? 解决方案 从数学上讲,0/0是不确定的,0/anything_else是零. IEEE-754的工作方式相同. 因此0/无穷大将产生零. 0/0将产生NaN. 注意:并非所有的C ++实现都支持IEEE浮点,有些不完全符合IEEE规范,因此这不 ..
发布时间:2020-11-26 04:18:38 C/C++开发

如何将Python除以-0.0和0.0分别导致-Inf和Inf?

我遇到的情况是合理的除以0.0或除以-0.0,我希望分别看到+ Inf和-Inf作为结果.看来Python很喜欢抛出 ZeroDivisionError: float division by zero 在任何情况下 .显然,我认为我可以将其封装为0.0来进行测试.但是,我找不到区分+0.0和-0.0的方法. (仅供参考,您可以通过输入-0.0或通过常见的计算方式(例如-1.0 * 0. ..
发布时间:2020-11-26 04:18:35 Python

转换MBF单和双转换为IEEE

可用的后续操作::有更多详细信息的后续操作,请参见 我有一些仍在使用的旧数据,读取二进制文件不是问题,数字格式是问题.所有浮点数均以MBF格式保存(单和双精度).我发现一个主题关于MSDN板上的内容,但是那只涉及Single值.我也想尽可能地远离API调用. 有人对Doubles有解决方案吗? 编辑:万一有人需要它,这就是我最终得到的VB.NET代码(符合Option Strict) ..
发布时间:2020-11-26 04:18:28 C#/.NET