Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

bit2int

비트를 정수로 변환

R2021b 이후

설명

예제

Y = bit2int(X,n)X의 열 방향 n비트 요소를 정수 값으로 변환하며, 이때 첫 번째 비트가 최상위 비트(MSB)입니다.

예제

Y = bit2int(X,n,msbfirst)X의 열 방향 n비트 집합에서 첫 번째 비트가 MSB인지 아니면 최하위 비트(LSB)인지 나타냅니다.

Y = bit2int(___,IsSigned=tf)는 선택적 이름-값 쌍 IsSigned=tf를 지정합니다. tf의 값은 정수의 부호 유무를 나타내는 논리값 true 또는 false입니다. 디폴트 값은 false입니다. tftrue로 설정하면 각 n비트 블록에서 첫 번째 비트가 부호 있는 비트로 간주되며 출력에 음수 값이 포함될 수 있습니다. X의 데이터형이 부호 없는 정수형이고 tftrue로 설정한 경우 Y의 데이터형은 해당 입력 비트 수를 지원할 수 있는 가장 작은 값의 부호 있는 정수형입니다.

예제

모두 축소

비트로 구성된 열 벡터를 지정합니다.

X = [1 0 1 0 1 0 1 0]';

입력 벡터의 열 방향 4비트 요소를 정수 값으로 변환하도록 지정합니다. 그런 다음 비트를 정수로 변환합니다.

n = 4;
Y = bit2int(X,n)
Y = 2×1

    10
    10

비트로 구성된 행렬을 지정합니다.

X = int8([1 1 0; 0 1 1]')
X = 3x2 int8 matrix

   1   0
   1   1
   0   1

열 방향의 3비트 요소로 구성된 각 집합에서 첫 번째 비트를 LSB로 지정합니다. 그런 다음 비트를 정수로 변환합니다.

n = 3;
msbfirst = false;
Y = bit2int(X,n,msbfirst)
Y = 1x2 int8 row vector

   3   6

비트로 구성된 배열을 지정합니다.

X = randi([0,1],8,2,2,'uint8') 
X = 8x2x2 uint8 array
X(:,:,1) =

   1   1
   1   1
   0   0
   1   1
   1   1
   0   0
   0   1
   1   0


X(:,:,2) =

   0   1
   1   1
   1   1
   1   0
   1   1
   0   0
   1   1
   1   0

열 방향의 4비트 요소로 구성된 각 집합에서 첫 번째 비트를 MSB로 지정합니다. 그런 다음 비트를 정수로 변환합니다.

n = 4;
msbfirst = true;
Y = bit2int(X,n,msbfirst)
Y = 2x2x2 uint8 array
Y(:,:,1) =

   13   13
    9   10


Y(:,:,2) =

    7   14
   11   10

비트로 구성된 배열을 지정합니다.

X = [1 1 0 1 1 0 0 1; 1 0 1 1 0 0 1 0]'
X = 8×2

     1     1
     1     0
     0     1
     1     1
     1     0
     0     0
     0     1
     1     0

열 방향의 4비트 요소로 구성된 각 집합에서 첫 번째 비트를 부호 비트로 지정합니다. 그런 다음 비트를 정수로 변환합니다.

n = 4;
tf = true;
Y = bit2int(X,n,IsSigned=tf)
Y = 2×2

    -3    -5
    -7     2

동일한 비트로 구성된 배열을 변환하되, 열 방향의 4비트 요소로 구성된 각 집합에서 첫 번째 비트를 부호 비트가 아니도록 지정합니다.

tf = false;
Y = bit2int(X,n,IsSigned=tf)
Y = 2×2

    13    11
     9     2

입력 인수

모두 축소

비트로, 열 벡터, 행렬, 또는 숫자형이나 논리값 01로 구성된 3차원 배열로 지정됩니다.

예: [1 0 1 0 1 0 1 0]'은 8×1 크기의 입력 열 벡터를 지정합니다.

참고

X의 행 개수는 입력값 n의 배수여야 합니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

정수로 변환될 비트 수로, 양의 정수로 지정됩니다. 비트 수 n에는 부호 있는 비트가 포함됩니다.

데이터형: double

MSB 우선 방식에 대한 지정으로, 숫자형 또는 논리값 1(true) 또는 0(false)으로 지정됩니다.

  • true –– X의 열 방향 n비트 집합에서 첫 번째 비트가 MSB입니다.

  • false –– X의 열 방향 n비트 집합에서 첫 번째 비트가 LSB입니다.

데이터형: logical

출력 인수

모두 축소

입력 비트의 정수 표현으로, 스칼라, 열 벡터, 행렬 또는 3차원 배열로 반환됩니다. 이 함수는 X의 열 방향의 n비트로 구성된 각 집합에 상응하는 정수 값을 반환합니다. 출력값 Y는 입력값 X와 동일한 차원을 갖지만, Y의 행 개수는 X의 행 개수의 n배만큼 적습니다.

Y의 데이터형은 X의 데이터형에 따라 달라집니다.

  • X의 데이터형이 double 또는 logical이면 Y의 데이터형은 double입니다.

  • X의 데이터형이 single이면 Y의 데이터형은 single입니다.

  • X의 데이터형이 정수이면 Y의 부호의 유무는 IsSigned 입력값에 따라 달라집니다.

    • Y 값이 동일한 정수 데이터형에 포함될 수 있다면 Y의 데이터형은 X의 데이터형과 같습니다.

    • Y 값이 X와 동일한 정수 데이터형에 포함될 수 없다면 함수는 Y의 데이터형을 해당 값이 포함될 수 있을 만큼 큰 정수 데이터형으로 설정합니다.

확장 기능

버전 내역

R2021b에 개발됨

모두 확장

참고 항목

함수

블록