浮点数
浮点数的存储结构
浮点数的表示借鉴了科学计数法
浮点数的储存结构被分为:符号位S、指数位E、尾数位M
公式为:
$
N=\left( -1\right) ^{S}\times M\times 2^{E}
$
例子:
| 十进制 | 二进制 | 二进制科学计数法 | S | E-1023 | M |
|---|---|---|---|---|---|
| 23.0 | 10111 | 1.0111*2^4 | 0 | 4 | 1.0111 |
可以看出指数位E决定了可表示的数的范围、尾数位决定了浮点数的精度,
双精度浮点数
js采用的IEEE754双精度64位来表示浮点数
- 第63位为
符号位S,0表示正数,1表示负数 - 第52-63位为
指数位E,取值范围为2^11=2048,但是指数部分有正有负,所以取中值1023,指数取值为E-1023 - 第0-51位为
尾数位M,有52位,但是浮点数第一位默认是1,所以是53位数即-2^53-1~2^53,即为Number.MAX_SAFE_INTEGER,9007199254740991。
参考文章
评论
评论插件加载失败
正在加载评论插件