我想知道如何在浮点数(4个字节),双重(8个字节)和半个浮点数(2个字节,用于OpenGL实现)上组织位。
此外,我如何从一个转换为另一个?
答案 0 :(得分:3)
对于每种格式,您都有:
如果符号位为1,则数字为负数,否则为正数。
要获得幅度,你需要(1 + M)* 2 ^(E - k),其中k(称为“指数偏差”)取决于格式。
值得注意的是,符号,指数和尾数的某些组合是“特殊”值,如0,-inf
,+inf
和NaN
。
有关细节(x,y和k的值),请参阅维基百科single precision(4字节),double precision(8字节)和half precision(2字节)。
请注意,这些都是由IEEE 754指定的,因此Google搜索可能会为您提供有用的结果。 :)
答案 1 :(得分:1)