java 中关于浮点数的问题
问过关于java 里的关于浮点数表示的问题:s·m·2e-150
int s = ((bits > > 31) == 0) ? 1 : -1;
int e = ((bits > > 23) & 0xff);
int m = (e == 0) ?
(bits & 0x7fffff) < < 1 :
(bits & 0x7fffff) | 0x800000;
现在主要就是上面第一行里的指数部分里的-150是怎么出来的?
请教各位
------解决方案--------------------就是10的-150次方吧,也就是10的150方分之一,具体怎么出来的,我就不知道了
------解决方案--------------------这个需要分析float型数据的存储结构,找找这方面的资料就明白了
------解决方案--------------------上面的s,e,m,都是用2进制表示的,也就是说-150是一个幂!
------解决方案--------------------mark!