如何从二进制中获取N位

jBe*_*Bee 0 erlang

我有一些二进制文件,如何从中获取N位?例如:<< 2#101 >>如何获得第一位?

Ada*_*erg 8

通过使用二进制模式匹配:

1> <<B:1, Rest/bitstring>> = <<2#101>>.
<<5>>
2> B.
0
3> Rest.
<<5:7>>
Run Code Online (Sandbox Code Playgroud)

你需要使用它bitstring作为类型,因为它不再是8位的倍数(binary类型需要).Rest现在是7位.