浮点类型

简介: Julia 支持 Float16, Float32 和 Float64 浮点类型,以及复数和有理数。浮点字面量可使用 E 表示科学记数法,如 `1.03E+08`。还有十六进制浮点数表示(仅限 Float64),如 `0x1p0`。半精度 Float16 是通过软件模拟的 Float32。下划线 `_` 作为数字分隔符,如 `10_000`。

浮点类型

下表列出来 Julia 支持的浮点类型:

类型 精度 比特数
Float16 半精度 16
Float32 单精度 32
Float64 双精度 64
此外,对复数和有理数的完整支持是在这些原始数据类型之上建立起来的。

浮点数字面量格式表示如下,必要时可使用 E 来表示。

实例
julia> 1.0
1.0

julia> 1.
1.0

julia> 0.5
0.5

julia> .5
0.5

julia> -1.23
-1.23

julia> 1e10
1.0e10

julia> 2.5e-4
0.00025
注:

在科学计数法中,为了使公式简便,可以用带 E 的格式表示。例如 1.03乘10的8次方,可简写为 "1.03E+08" 的形式,其中 "E" 是 exponent(指数) 的缩写。

也存在十六进制的浮点数字面量,但只适用于 Float64 类型的值。一般使用 p 前缀及以 2 为底的指数来表示:

实例
julia> 0x1p0
1.0

julia> 0x1.8p3
12.0

julia> x = 0x.4p-1
0.125

julia> typeof(x)
Float64
Julia 也支持半精度浮点数(Float16),但它们是使用 Float32 进行软件模拟实现的。

julia> sizeof(Float16(4.))
2

julia> 2*Float16(4.)
Float16(8.0)
下划线 _ 可用作数字分隔符:

实例
julia> 10_000, 0.000_000_005, 0xdead_beef, 0b1011_0010
(10000, 5.0e-9, 0xdeadbeef, 0xb2)

相关文章
|
23天前
|
Python
整型数据与字符串类型的数据进行相加
整型数据与字符串类型的数据进行相加。
43 9
浮点类型
Julia 支持 Float16, Float32, 和 Float64 浮点类型,分别对应半、单、双精度,以及复数和有理数。数字可写作 1.0, 1., 0.5, .5, -1.23 或科学记数法如 1e10, 2.5e-4。E 表示指数。
特殊的浮点值
特殊浮点值包括正负无穷(Inf16/Inf32/Inf)和NaN(NaN16/NaN32/NaN),它们不对应实数轴上的点。无穷大比所有有限浮点数大,负无穷则小。除以零可得到这些值,如`1/0`是正无穷,`0/0`是NaN。NaN不等于自身,比较操作在NaN上始终返回false。可以使用`typemin`和`typemax`函数获取各浮点类型的最大最小值。
|
7月前
|
存储
整数类型
整数类型。
66 0
|
存储 Go
Go 语言的基础数据类型:整数类型、浮点数类型、布尔类型、字符串类型等
Go 语言的基础数据类型:整数类型、浮点数类型、布尔类型、字符串类型等
74 0
Go 语言的基础数据类型:整数类型、浮点数类型、布尔类型、字符串类型等
|
7月前
|
存储 编译器 C语言
数据在内存中的存储(浮点数与整数的类型转换)
在c语言操作符那一篇文章中我们讲到整数的二进制表示方法有三种,即原码、反码和补码。 它们都由符号位和数值位组成,数值位中的最高位就是符号位,符号位中0表示”正“,1表示”负“,
|
存储 关系型数据库 MySQL
列的类型定义——浮点类型和定点数类型
前言 数据表中用浮点数类型和定点数类型来表示小数。浮点数类型包括单精度浮点数(FLOAT型)和双精度浮点数(DOUBLE型)。定点数类型就是DECIMAL型。下面从这三种类型的字节数、取值范围等方面进行对比,如下表所示。
|
存储 关系型数据库 MySQL
尽量使用数值替代字符串类型
尽量使用数值替代字符串类型
|
存储 编译器 程序员
4.整数类型(上)
4.整数类型
187 0
|
存储 编译器 程序员
4.整数类型(下)
4.整数类型
87 0