int2bit
설명
예제
정수로 구성된 벡터를 비트로 변환하기
정수로 구성된 행 벡터를 지정합니다.
X = [12 5]
X = 1×2
12 5
변환 출력값을 열 방향의 4비트 요소로 지정합니다. 그런 다음 정수를 비트로 변환합니다.
n = 4; Y = int2bit(X,n)
Y = 4×2
1 0
1 1
0 0
0 1
정수로 구성된 행렬을 비트로 변환하기
정수로 구성된 행렬을 지정합니다.
X = int8([10 6 14; 11 5 9])
X = 2x3 int8 matrix
10 6 14
11 5 9
출력값에서, 열 방향의 4비트 요소로 구성된 각 집합에서 첫 번째 비트를 LSB로 지정합니다. 그런 다음 정수를 비트로 변환합니다.
n = 4; msbfirst = false; Y = int2bit(X,n,msbfirst)
Y = 8x3 int8 matrix
0 0 0
1 1 1
0 1 1
1 0 1
1 1 1
1 0 0
0 1 0
1 0 1
정수로 구성된 배열을 비트로 변환하기
정수로 구성된 배열을 지정합니다.
X = randi([0,9],4,3,2,'uint16')
X = 4x3x2 uint16 array
X(:,:,1) =
8 6 9
9 0 9
1 2 1
9 5 9
X(:,:,2) =
9 4 6
4 9 0
8 7 8
1 9 9
변환 출력값을 열 방향의 3비트 요소로 지정합니다. 그런 다음 정수를 비트로 변환합니다.
n = 3; Y = int2bit(X,n)
Y = 12x3x2 uint8 array
Y(:,:,1) =
0 1 0
0 1 0
0 0 1
0 0 0
0 0 0
1 0 1
0 0 0
0 1 0
1 0 1
0 1 0
0 0 0
1 1 1
Y(:,:,2) =
0 1 1
0 0 1
1 0 0
1 0 0
0 0 0
0 1 0
0 1 0
0 1 0
0 1 0
0 0 0
0 0 0
1 1 1
부호가 있는 정수로 구성된 벡터를 비트로 변환하기
정수로 구성된 행 벡터를 지정합니다.
X = [153, -103, 103, -128]
X = 1×4
153 -103 103 -128
변환 출력값을 열 방향의 8비트 요소로 지정합니다. 그런 다음 정수를 비트로 변환합니다.
n = 8; Y1 = int2bit(X,n)
Y1 = 8×4
1 1 0 1
0 0 1 0
0 0 1 0
1 1 0 0
1 1 0 0
0 0 1 0
0 0 1 0
1 1 1 0
비트를 다시 정수로 변환하고 값을 확인합니다. 결과로 생성된 정수가 원래 정수와 일치하지 않습니다. 부호 있는 정수를 2의 보수 값으로 올바르게 표현하려면 8비트보다 많이 필요하기 때문입니다.
X1 = bit2int(Y1,n,IsSigned=true)
X1 = 1×4
-103 -103 103 -128
isequal(X,X1)
ans = logical
0
변환 출력값을 열 방향의 9비트 요소로 지정합니다. 그런 다음 정수를 비트로 변환합니다.
n = 9; Y2 = int2bit(X,n)
Y2 = 9×4
0 1 0 1
1 1 0 1
0 0 1 0
0 0 1 0
1 1 0 0
1 1 0 0
0 0 1 0
0 0 1 0
1 1 1 0
비트를 다시 정수로 변환하고 값을 확인합니다. 결과로 생성된 정수가 원래 정수와 일치하며, 9비트가 2의 보수 값을 올바르게 표현함을 확인할 수 있습니다.
X2 = bit2int(Y2,n,IsSigned=true)
X2 = 1×4
153 -103 103 -128
isequal(X,X2)
ans = logical
1
입력 인수
X
— 정수
스칼라 | 벡터 | 행렬 | 3차원 배열
정수로, 스칼라, 벡터, 행렬 또는 정수 값으로 구성된 3차원 배열로 지정됩니다.
예: [-10 2]
는 1×2 크기의 입력 행 벡터를 지정합니다.
데이터형: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
n
— 변환할 비트 수
양의 정수
비트로 변환할 비트 수로, 양의 정수로 지정됩니다. 비트 수 n
에는 부호 있는 비트가 포함됩니다.
데이터형: double
출력 인수
Y
— 입력 정수의 비트 표현
열 벡터 | 행렬 | 3차원 배열
입력 정수의 비트 표현으로, 열 벡터, 행렬 또는 3차원 배열로 반환됩니다. Y
는 X
와 동일한 차원을 가지며, 다만 Y
의 행 개수만 X
의 행 개수의 n
배입니다. 출력값 Y
는 지정된 방향의 n
최하위 비트로 구성됩니다. n
이 X
의 값을 표현하는 데 필요한 비트 수보다 작으면 출력값 Y
는 n
최하위 비트로 구성됩니다.
Y
의 데이터형은 X
의 데이터형에 따라 달라집니다.
X
가 부동소수점 데이터형이면Y
는 부동소수점 데이터형입니다.X
가 부호 없는 내장 정수 데이터형이면Y
는uint8
형입니다.X
가 부호 있는 내장 정수 데이터형이면Y
는int8
형입니다.X
가double
형이면Y
는n
이 53보다 크지 않은double
형입니다.X
가single
형이면Y
는n
이 24보다 크지 않은single
형입니다.
확장 기능
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
사용법 관련 참고 및 제한 사항:
입력 데이터형이 double형이면 코드 생성 시에 입력값이 264보다 작아야 합니다.
GPU 배열
Parallel Computing Toolbox™를 사용해 GPU(그래픽스 처리 장치)에서 실행하여 코드 실행 속도를 높일 수 있습니다.
이 함수는 GPU 배열 입력을 지원합니다. 자세한 내용은 GPU에서 MATLAB 함수 실행하기 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2021b에 개발됨MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)