关于JavaScript中计算精度丢失的问题 01.十进制0.1
02. => 二进制0.00011001100110011…(循环0011)
03. =>尾数为1.1001100110011001100…1100(共52位,除了小数点左边的1),指数为-4(二进制移码为00000000100),符号位为0
04. => 计算机存储为:0 00000000100 10011001100110011…11001
05. => 因为尾数最多52位,所以实际存储的值为0.00011001100110011001100110011001100110011001100110011001
06. 而十进制0.2
07. => 二进制0.0011001100110011…(循环0011)
08. =>尾数为1.1001100110011001100…1100(共52位,除了小数点左边的1),指数为-3(二进制移码为00000000011),符号位为0
09. => 存储为:0 00000000011 10011001100110011…11001 网上看的一段代码,但是我觉得他的移码计算不对,应该为1023-4和1023-3的2进制表示。大家说呢
02. => 二进制0.00011001100110011…(循环0011)
03. =>尾数为1.1001100110011001100…1100(共52位,除了小数点左边的1),指数为-4(二进制移码为00000000100),符号位为0
04. => 计算机存储为:0 00000000100 10011001100110011…11001
05. => 因为尾数最多52位,所以实际存储的值为0.00011001100110011001100110011001100110011001100110011001
06. 而十进制0.2
07. => 二进制0.0011001100110011…(循环0011)
08. =>尾数为1.1001100110011001100…1100(共52位,除了小数点左边的1),指数为-3(二进制移码为00000000011),符号位为0
09. => 存储为:0 00000000011 10011001100110011…11001 网上看的一段代码,但是我觉得他的移码计算不对,应该为1023-4和1023-3的2进制表示。大家说呢
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货