0

创建一个 3 位的位串:

b = <<1 :: 3>>

使用位串理解来显示每个位的值:

for <<x :: 1 <- b>>, do: inspect x

输出:

["0", "0", "1"]

请注意,最后一位是 1,而不是 0。

为什么默认情况下所有位都不为0,并且可以以某种方式实现吗?

4

1 回答 1

2

编码

b = <<1 :: 3>>

有效地将长度为 3 位的位串设置为 value 1 (≡ 001)。要将位串初始化为将所有位设置为零,请使用:

b = <<0 :: 3>>

查看:

b = <<0 :: 3>>
for <<x :: 1 <- b>>, do: inspect x
#⇒ ["0", "0", "0"]

旁注:例如b = <<3 :: 3>>将导致3 ≡ 011等的按位表示。

于 2018-05-24T08:45:40.367 回答