이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
swapbytes
바이트 순서 맞바꾸기
설명
예제
스칼라의 바이트 순서 맞바꾸기
스칼라 32비트 값에 대한 바이트 순서를 맞바꿉니다. 16진수 표현을 사용하여 리틀 엔디안에서 빅 엔디안으로의 변환을 표시합니다.
X = uint32(hex2dec('4D3C2B1A'));
Y = dec2hex(swapbytes(X))
Y = '1A2B3C4D'
R2019b부터는 0x
또는 0X
접두사를 사용하여 16진수 값을 리터럴로 쓸 수도 있습니다(자세한 내용은 16진수 값과 2진수 값 참조). 숫자 X
를 16진수 리터럴로 지정합니다. 바이트 순서를 맞바꿉니다.
X = 0x4D3C2B1A; Y = dec2hex(swapbytes(X))
Y = '1A2B3C4D'
벡터의 바이트 순서 맞바꾸기
1×4 벡터의 각 요소에 대해 바이트 순서를 맞바꿉니다.
format short
X = uint16([0 1 128 65535])
X = 1x4 uint16 row vector
0 1 128 65535
Y = swapbytes(X)
Y = 1x4 uint16 row vector
0 256 32768 65535
16진수 표기법의 출력값을 검토하여 엔디언 변환을 표시합니다.
format hex
X
X = 1x4 uint16 row vector
0000 0001 0080 ffff
Y
Y = 1x4 uint16 row vector
0000 0100 8000 ffff
3차원 배열의 바이트 순서 맞바꾸기
16비트 정수로 구성된 3차원 배열 A
를 만듭니다. 각 요소의 바이트 순서를 맞바꿉니다. 16진수 표현을 사용하여 엔디언 변환을 표시합니다.
format hex
X = uint16(magic(3)*150);
X(:,:,2) = X*40;
X
X = 3x3x2 uint16 array
X(:,:,1) =
04b0 0096 0384
01c2 02ee 041a
0258 0546 012c
X(:,:,2) =
bb80 1770 8ca0
4650 7530 a410
5dc0 d2f0 2ee0
Y = swapbytes(X)
Y = 3x3x2 uint16 array
Y(:,:,1) =
b004 9600 8403
c201 ee02 1a04
5802 4605 2c01
Y(:,:,2) =
80bb 7017 a08c
5046 3075 10a4
c05d f0d2 e02e
입력 인수
X
— 숫자형 값
스칼라 | 벡터 | 행렬 | 다차원 배열
숫자형 값으로, 스칼라, 벡터, 행렬 또는 다차원 배열로 지정됩니다. X
가 스칼라 값이 아니면 swapbytes
연산은 요소별로 수행됩니다.
데이터형: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
세부 정보
리틀 엔디안을 빅 엔디안으로 변환하기
컴퓨터 시스템은 데이터를 바이트별로 저장합니다. 숫자형 값을 컴퓨터 메모리에 저장하는 방법은 리틀 엔디안과 빅 엔디안 두 가지 방법이 있습니다. 리틀 엔디안 방식에서는 바이트가 왼쪽에서 오른쪽 방향으로 작성되며 점점 유의성이 증가합니다. 빅 엔디언 방식에서는 바이트가 왼쪽에서 오른쪽 방향으로 작성되며 점점 유의성이 감소합니다. swapbytes
함수는 메모리의 바이트 순서를 맞바꾸어 리틀 엔디안에서 빅 엔디안으로(또는 그 반대로) 변환합니다.
다음 그림은 32비트(4바이트) 16진수 4D3C2B1A에 대한 변환을 보여줍니다. 16진수 표기법에서, 1바이트는 2자리 숫자로 표현됩니다. 리틀 엔디안 그림의 각 상자는 데이터의 1바이트(4D, 3C, 2B 및 1A)를 나타냅니다. swapbytes
함수는 이 상자 또는 바이트의 순서를 맞바꿉니다.
확장 기능
tall형 배열
메모리에 담을 수 없을 정도로 많은 행을 가진 배열을 계산할 수 있습니다.
이 함수는 tall형 배열을 완전히 지원합니다. 자세한 내용은 tall형 배열 항목을 참조하십시오.
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
사용법 관련 참고 및 제한 사항:
MATLAB Function 블록에서 swapbytes
에 대한 입력값 클래스의 상속은 입력값의 클래스가 double
인 경우에만 지원됩니다. double형이 아닌 입력의 경우, 입력 포트 데이터 형식은 상속되지 않으며 지정해 주어야 합니다.
GPU 코드 생성
GPU Coder™를 사용하여 NVIDIA® GPU용 CUDA® 코드를 생성할 수 있습니다.
사용법 관련 참고 및 제한 사항:
MATLAB Function 블록에서 swapbytes
에 대한 입력값 클래스의 상속은 입력값의 클래스가 double
인 경우에만 지원됩니다. double형이 아닌 입력의 경우, 입력 포트 데이터 형식은 상속되지 않으며 지정해 주어야 합니다.
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
GPU 배열
Parallel Computing Toolbox™를 사용해 GPU(그래픽스 처리 장치)에서 실행하여 코드 실행 속도를 높일 수 있습니다.
이 함수는 GPU 배열을 완전히 지원합니다. 자세한 내용은 GPU에서 MATLAB 함수 실행하기 (Parallel Computing Toolbox) 항목을 참조하십시오.
분산 배열
Parallel Computing Toolbox™를 사용하여 대규모 배열을 클러스터의 결합된 메모리에 걸쳐 분할할 수 있습니다.
이 함수는 분산 배열을 완전히 지원합니다. 자세한 내용은 분산 배열을 사용하여 MATLAB 함수 실행 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2006a 이전에 개발됨
참고 항목
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)