dec2bin
10진수 정수를 이진수 표현으로 변환
설명
예제
10진수 변환하기
최소 자릿수 지정하기
dec2bin
이 반환하는 2진수의 최소 자릿수를 지정합니다. 필요한 자릿수보다 더 많이 지정하면 dec2bin
은 출력값을 채웁니다.
D = 23; binStr = dec2bin(D,8)
binStr = '00010111'
자릿수를 더 적게 지정하더라도 dec2bin
은 입력 숫자를 나타내기 위해 필요한 만큼의 자릿수로 반환합니다.
binStr = dec2bin(D,1)
binStr = '10111'
숫자형 배열 변환하기
숫자형 배열을 만듭니다.
D = [1023 122 14];
D
의 요소를 이진 값으로 나타내기 위해 dec2bin
함수를 사용합니다. binStr
의 각 행은 D
의 요소에 대응됩니다.
binStr = dec2bin(D)
binStr = 3x10 char array
'1111111111'
'0001111010'
'0000001110'
문자형 배열의 모든 행이 동일한 개수의 문자를 가져야 하기 때문에, dec2bin
은 binStr
의 일부 행을 채웁니다. 예를 들어, 숫자 14
는 2진수 숫자 '1110'
으로 나타낼 수 있습니다. 그러나 binStr
의 첫 번째 행의 길이에 맞추기 위해 dec2bin
함수는 세 번째 행을 채워 '0000001110'
으로 만듭니다.
음수 나타내기
R2020a부터, dec2bin
함수는 2의 보수 이진 값을 사용하여 음수를 변환합니다.
예를 들어, dec2bin
에 대한 다음과 같은 호출은 음수를 변환합니다.
dec2bin(-1)
ans = '11111111'
dec2bin(-16)
ans = '11110000'
입력 인수
D
— 입력 배열
숫자형 배열 | char
형 배열 | 논리형 배열
입력 배열로, 숫자형 배열, char
형 배열 또는 논리형 배열로 지정됩니다.
D
가 부동소수점 숫자로 구성된 배열이고D
의 요소에 소수부가 있다면,dec2bin
은 변환 전에 소수부를 자릅니다. 예를 들어,dec2bin
은12
와12.5
를 모두'1100'
으로 변환합니다. 항상 해당 요소보다 작거나 같은 가장 가까운 정수로 값이 잘립니다.D
가 문자형 배열이거나 논리형 배열이면dec2bin
은D
의 요소를 정수로 취급합니다. 그러나dec2bin
은 문자를 해당 Unicode® 값으로 취급하기 때문에,D
를 문자형 배열로 지정하는 것은 권장되지 않습니다.
R2020a 이상
D
는 음수를 포함할 수 있습니다. 함수는 2의 보수 이진 값을 사용하여 음수를 변환합니다.
데이터형: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
minDigits
— 출력값의 최소 자릿수
음이 아닌 정수
출력값의 최소 자릿수로, 음이 아닌 정수로 지정됩니다.
D
를minDigits
보다 더 적은 자릿수의 2진수 숫자로 나타낼 수 있는 경우dec2bin
은 출력값을 채웁니다.D >= 0
선행 0으로 채우기
D < 0
선행 1로 채우기(R2020b 이상)
D
가 너무 커서minDigits
자릿수보다 더 많은 자릿수로 나타내야 하는 경우dec2bin
는 필요한 만큼의 자릿수를 갖는 출력값을 반환합니다.
팁
컴퓨터가 메모리에 값을 빅 엔디안 형식으로 저장하든 리틀 엔디안 형식으로 저장하든
dec2bin
의 출력값은 동일합니다. 이러한 형식에 대한 자세한 내용은 Endianness를 참조하십시오.
확장 기능
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
사용법 관련 참고 및 제한 사항:
minDigits
가 지정된 경우 출력값은D
가 비어 있더라도 해당하는 개수만큼의 열을 갖습니다.minDigits
가 지정되지 않은 경우 출력값은 적어도 하나의 열을 갖습니다.입력값
D
가double
형 또는single
형인 경우 입력값은intmin('int64')
보다 크거나 같고2^64
보다 작아야 합니다.이 함수는 일반적으로 가변 크기 출력값을 생성합니다. 출력값의 크기를 고정하려면 출력값이 입력값에 무관하게 고정된 열 개수를 가질 수 있을 만큼 충분히 큰 상수로
minDigits
를 지정하십시오. 고정된 크기의 출력값의 경우,minDigits
는double
형인 경우64
이상,single
형인 경우64
이상,half
형인 경우32
이상,logical
형인 경우1
이상,char
형인 경우8
이상,int64
형인 경우64
이상,uint64
형인 경우64
이상,int32
형인 경우32
이상,uint32
형인 경우32
이상,int16
형인 경우16
이상,uint16
형인 경우16
이상,int8
형인 경우8
이상,uint8
형인 경우8
이상이어야 합니다.
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
버전 내역
R2006a 이전에 개발됨R2022a: 입력 데이터형을 프리미티브 숫자형으로 제한함
사용자 정의 데이터형은 프리미티브 숫자형과 프리미티브 숫자형에서 상속된 클래스로 제한됩니다.
R2022a: dec2bin(0,0)
은 '0'
을 반환함
dec2bin(0,0)
은 1×0 문자형 벡터 대신 '0'
을 반환합니다.
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)