-1
Q
浮点溢出为负
A
回答
0
在IEEE类型float(浮点32位,双64位,长双80位)的情况下,数字存储类似于符号+大小而不是二进制补码。指数也没有正常范围,具有零或全部一位的特殊值。双维基文章:
https://en.wikipedia.org/wiki/Double-precision_floating-point_format
如果做这样的事情基数排序浮动类型的数组不包含特殊值的情况下(类似于无穷大,NAN,...),从符号的转换和通常使用幅度到“二进制补码”。示例C用于在64位符号和幅度之间转换为无符号long long(64位无符号整数)并返回的宏。请注意,这导致转换后的符号和幅度值为负零,小于正零。
// converting doubles to unsigned long long for radix sort or something similar
// note -0 converted to 0x7fffffffffffffff, +0 converted to 0x8000000000000000
// -0 is unlikely to be produced by a float operation
#define SM2ULL(x) ((x)^(((~(x) >> 63)-1) | 0x8000000000000000ull))
#define ULL2SM(x) ((x)^((((x) >> 63)-1) | 0x8000000000000000ull))
相关问题
- 1. 浮点溢出
- 2. 为什么`inf`代表浮点溢出?
- 3. C中的浮点溢出#
- 4. 字符或浮点溢出
- 5. 避免浮点溢出?
- 6. 溢出和浮
- 7. Python浮点溢出,float溢出时会发生什么?
- 8. 要捕获浮点溢出excepiton
- 9. 如何处理浮点溢出?
- 10. 如何处理浮点溢出?
- 11. 奇怪的Firefox溢出/浮动行为
- 12. 存储非负浮点值
- 13. 用于负零浮点值?
- 14. 击浮点和负值
- 15. 浮点计数,负数零?
- 16. Div溢出并排浮动?
- 17. 文本溢出浮动div
- 18. CSS溢出左浮动
- 19. 负浮点数表示为负整数吗?
- 20. 如何浮点溢出输入输出流
- 21. CSS:如果块溢出,强制块出现在浮点块下
- 22. 如何将短浮点类型转换为短类型并在短类型溢出时截断浮点类型?
- 23. 溢出与浮点内的绝对位置冲突
- 24. 如何添加导致溢出两个浮点数字
- 25. z索引内浮动,而不溢出到兄弟节点
- 26. 添加几个小浮点值溢出到无限
- 27. 浮点溢出但不是当C中的printf参数?
- 28. 如何处理浮点下溢?
- 29. C语言中的浮点下溢
- 30. 具有溢出的ARM霓虹灯浮点整数转换行为