栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

实际上,Java中的INFINITY常量是什么?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

实际上,Java中的INFINITY常量是什么?

Java浮点基于IEEE 754二进制浮点标准Floating Point
Standard
,该标准的第一个版本于1985年左右发布,因此它比Java早得多。考虑到在定义Java时IEEE
754的广泛硬件实现,Java创建者别无选择。

每个IEEE 754浮点数具有三个组成部分:符号位,指数和尾数。大大简化,正常数的大小为:

 mantissa * (2 ** exponent)

其中“ **”代表力量。

前导位是符号位。在双打中,接下来的11位是指数。

保留所有指数位的位模式保留给无限性和NaN。所有普通数的指数中至少有一个零位。通过将所有指数位都打开,并将所有尾数位设置为零来表示两个无穷大。前导符号位区分正无穷大。

对于特殊情况,所有指数位的选择都不是任意的。消除极端现象要比处理一系列数字中间的差距要容易得多,尤其是对于硬件实现而言。在特殊情况下,如果将所有位都除掉指数,本可以防止使用所有位均掉码模式对零进行编码,并且将给出最大的绝对大小值,无穷大,最小的指数,这也将使硬件更加复杂。指数的所有位绝对是无限性的最佳选择。

这两个无穷大都用来表示两件事,实际上是无限的结果,以及结果的绝对大小太大而无法在正常的数字系统中表示,即大于Double.MAX_VALUE或小于-
Double.MAX_VALUE的数字。1.0 / 0.0是无限的。2 * Double.MAX_VALUE也是如此。

通过允许中间结果在任何一个意义上都是无限的,可以通过较少的特殊情况简化某些算法。这样做还允许例如甚至平行于y轴的线也具有可存储的梯度,该梯度可以在计算中使用。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/428372.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号