特殊的浮点值

简介: 特殊浮点值包括正负无穷(Inf)和非数字(NaN),在浮点运算中表现出特定行为,如1/Inf=0.0,0/0=NaN。NaN不等于任何值,包括自身,比较操作在NaN上返回假。可以使用typemin和typemax函数获取各浮点类型的最大和最小值。

特殊的浮点值

有三种特定的标准浮点值不和实数轴上任何一点对应:

Float16 Float32 Float64 名称 描述
Inf16 Inf32 Inf 正无穷 一个大于所有有限浮点数的数
-Inf16 -Inf32 -Inf 负无穷 一个小于所有有限浮点数的数
NaN16 NaN32 NaN 不是一个数 一个不和任何浮点值(包括自己)相等(==)的值
以下列举了一些浮点数的运算实例:

实例
julia> 1/Inf
0.0

julia> 1/0
Inf

julia> -5/0
-Inf

julia> 0.000001/0
Inf

julia> 0/0
NaN

julia> 500 + Inf
Inf

julia> 500 - Inf
-Inf

julia> Inf + Inf
Inf

julia> Inf - Inf
NaN

julia> Inf * Inf
Inf

julia> Inf / Inf
NaN

julia> 0 * Inf
NaN

julia> NaN == NaN
false

julia> NaN != NaN
true

julia> NaN < NaN
false

julia> NaN > NaN
false
我们还可以使用 typemin 和 typemax 函数:

实例
julia> (typemin(Float16),typemax(Float16))
(-Inf16, Inf16)

julia> (typemin(Float32),typemax(Float32))
(-Inf32, Inf32)

julia> (typemin(Float64),typemax(Float64))
(-Inf, Inf)

相关文章
特殊的浮点值
特殊浮点值包括正负无穷(Inf16/Inf32/Inf)和NaN(NaN16/NaN32/NaN),它们不对应实数轴上的点。无穷大比所有有限浮点数大,负无穷则小。除以零可得到这些值,如`1/0`是正无穷,`0/0`是NaN。NaN不等于自身,比较操作在NaN上始终返回false。可以使用`typemin`和`typemax`函数获取各浮点类型的最大最小值。
浮点类型
Julia 支持 Float16 (半精度, 16 位), Float32 (单精度, 32 位) 和 Float64 (双精度, 64 位) 浮点类型,还提供复数和有理数功能。浮点字面量可使用 E 表示科学记数法,如 `1.0e10` 或 `-1.23E+8`。
|
17天前
|
SQL 关系型数据库 MySQL
7. 数值函数
7. 数值函数
|
17天前
|
存储
整数类型
整数类型。
14 0
|
17天前
|
存储 编译器 C语言
数据在内存中的存储(浮点数与整数的类型转换)
在c语言操作符那一篇文章中我们讲到整数的二进制表示方法有三种,即原码、反码和补码。 它们都由符号位和数值位组成,数值位中的最高位就是符号位,符号位中0表示”正“,1表示”负“,
|
17天前
|
存储 算法 Java
数值问题
数值问题
60 1
|
12月前
|
存储 关系型数据库 MySQL
列的类型定义——浮点类型和定点数类型
前言 数据表中用浮点数类型和定点数类型来表示小数。浮点数类型包括单精度浮点数(FLOAT型)和双精度浮点数(DOUBLE型)。定点数类型就是DECIMAL型。下面从这三种类型的字节数、取值范围等方面进行对比,如下表所示。
|
存储 编译器 程序员
4.整数类型(上)
4.整数类型
117 0
|
存储 编译器 程序员
4.整数类型(下)
4.整数类型
60 0
|
存储
浮点数的表示方法
浮点数的表示方法
72 0
浮点数的表示方法