Double的指数部占11位,即可以表示2^11个数(2048个),考虑到补码,范围 应该是-1023~1024或-1024~1023,为啥源码中的范围是-1022~1023,
另外,尾数部为52位,小数点前的1自动补全,所以最大值为1.9999999*2^1023即2^1024,这我能理解,
但为啥取正数最小值时,尾部就变成了2^-52,小数点前的1怎么忽略了变成0了,求告知,谢谢
Double源码为
public static final int MAX_EXPONENT = 1023;
public static final int MIN_EXPONENT = -1022;