【发布时间】:2020-11-22 16:12:32
【问题描述】:
任何帮助将不胜感激! 我一直在使用 IEEE754 浮点数(32 位单精度),我正在尝试将其转换为十进制规范化格式。我找到了两个方程式,但我不确定哪个是正确的。
N= (-1)^s * 1.F *2^(e-127)
OR
N= (-1)^s * 1+F * 2^(e-127)
s= sign bit
F= fraction/mantissa
e=exponent
上面哪个等式是正确的?换句话说,它是 1*F 还是 1+F ?
【问题讨论】:
-
请注意,点中有一个句点,表示“二进制点”,即小数点的二进制等效项。它不是乘法符号。如果 F 是 [0, 1) 中的小数,则 (1+F) 是正确的。如果 F 是作为位串的有效数字,则 1.F 是正确的,意思是解释“1”。后跟 F 的位作为二进制数字。除非 e 为零,在这种情况下它应该是 (0+F) 或 0.F
标签: decimal ieee-754 normalize