基数16的快速科学记数法

时间:2015-03-30 08:08:56

标签: swift syntax scientific-notation

我是Swift语言的新手并且正在使用它。我知道在大多数语言中1.5e3表示1.5 * 10 ^3,这在Swift中也是如此。但是,当它基础16时,我很难理解它。以下是两个例子,希望有人可以解释它们是什么:

println(0x12e3)
println(0x12p3)

结果是:

4835
144.0

1 个答案:

答案 0 :(得分:1)

第一个例子没有使用科学记数法 - 因为e是十六进制的有效数字,这是数字12E3,即十进制的4835。

(1 * 4096) + (2 * 256) + (14 * 16) + (3 * 1) = 4835

第二个例子是十六进制数12(十进制18)乘以二进制指数(2 ^ 3),即8.

8 x 18 = 144

这种表示法在Swift language documentation中描述。