[Erlang 발자국 0006] 바이너리 문자열

2233 단어 erlang
비트열은 <<>, 이중 작은 번호와 이중 큰 번호 사이에는 비트 비트 단위의 전체 길이를 포함하는 0 개 또는 여러 개의 구간 표시기가 포함될 수 있습니다.세그먼트 표시기는 다음 중 하나일 수 있습니다.
     Data | Data:Size | Data/TypeSpecifiers | Data:Size/TypeSpecifiers
TypeSpecifiers: 주요 제어 구간 인코딩의 세부 사항은 (-)로 구분된 원자로 구성되어 있습니다. 예를 들어 integer-unsigned-big 원자가 나타나는 순서는 중요하지 않습니다. 사용할 수 있는 인디케이터는 다음과 같습니다. 이런 인디케이터는 여러 가지 조합 방식이 있을 수 있지만 그룹마다 하나만 나타날 수 있습니다.bits는 bitstring의 별명이고,bytes는 binary의 별명이다.인덱스,float,bitstring 유형에 대해 사이즈 단위는 1비트,binary는 8비트입니다.
      integer | float | binary | bytes | bitstring | bits | utf8 | utf16 | utf32
      signed | unsigned
      big | little | native
55> f().

ok

56> Red = 2.

2

57> Green = 61.

61

58> Blue =20.

20

59> Mem = <<Red:5, Green:6, Blue:5>>.

<<23,180>>

60> <<R1:5, G1:6, B1:5>> = Mem.    %%  R1  5bit, G1 6bit, B1  5bit

<<23,180>>   00010 111|101 10100  %% 5 R1=2, 6 G1=61,  5 B1=20,  8bit , 23, 180

61> R1.

2

62> G1.

61

63> B1.

20

64> A=list_to_binary("CC002801").



<<"CC002801">>



65> <<B:2/binary,C:4/binary,_>> = A.



** exception error: no match of right hand side value <<"CC002801">>



66> <<B:2/binary,C:4/binary,_/binary>> = A.    %%B 2 , binary ,C 4 , binary



<<"CC002801">>



67> B.



<<"CC">>



68> C.



<<"0028">>



69>

좋은 웹페이지 즐겨찾기