Main Content

dec2base

10진수 정수를 n진법 표현으로 변환

설명

예제

baseStr = dec2base(D,n)은 10진수 정수 Dn진법으로 표현한 결과를 반환합니다. 출력 인수 baseStr은 숫자형 문자를 사용해서 숫자를 표현한 문자형 배열이며 n이 10보다 클 때는 영문자도 함께 사용해서 나타냅니다. 예를 들어, n이 12이면 dec2base는 숫자 9, 10, 11은 문자 9, A, B를 사용하여 나타내고, 숫자 12는 문자 시퀀스 10으로 나타냅니다.

D가 숫자형 벡터, 행렬 또는 다차원 배열인 경우 baseStr은 2차원 문자형 배열입니다. baseStr의 각 행은 D의 요소를 나타냅니다.

예제

baseStr = dec2base(D,n,minDigits)D를 최소 minDigits 자릿수의 n진법으로 표현한 결과를 반환합니다.

예제

모두 축소

10진수를 12진법의 값으로 표현한 문자형 벡터로 변환합니다. 이 기수 체계에서 문자 'A''B'는 10진법의 숫자 10과 11을 나타냅니다.

D = 23;
baseStr = dec2base(D,12)
baseStr = 
'1B'

dec2base가 반환하는 12진수의 자릿수를 지정합니다. 필요한 자릿수보다 더 많이 지정하면 dec2base는 출력값을 선행 0으로 채웁니다.

D = 23;
baseStr = dec2base(D,12,6)
baseStr = 
'00001B'

자릿수를 더 적게 지정하더라도 dec2base는 입력 숫자를 나타내기 위해 필요한 만큼의 자릿수로 반환합니다.

baseStr = dec2base(D,12,1)
baseStr = 
'1B'

숫자형 배열을 만듭니다.

D = [1023 122 14];

D의 요소를 8진수 즉, 8진법 값으로 나타내기 위해 dec2base 함수를 사용합니다. baseStr의 각 행은 D의 요소에 대응됩니다.

baseStr = dec2base(D,8)
baseStr = 3x4 char array
    '1777'
    '0172'
    '0016'

dec2base 함수는 선행 0으로 채워진 문자형 배열을 반환합니다. R2016b부터는 숫자형 배열을 8진수 표현으로 변환하는 데 compose 함수가 권장됩니다. 이 함수는 선행 0으로 요소가 채워지지 않은 string형 배열을 반환합니다. D의 요소를 8진수 값으로 나타내기 위해 %o 형식 지정 연산자를 사용합니다.

hexStr = compose("%o",D)
hexStr = 1x3 string
    "1777"    "172"    "16"

입력 인수

모두 축소

입력 배열로, 음이 아닌 숫자로 구성된 배열로 지정됩니다. D의 각 요소는 0과 flintmax가 반환한 값 사이의 값을 가져야 합니다.

  • D가 부동소수점 숫자로 구성된 배열이고 D의 요소에 소수부가 있다면, dec2base는 오류를 생성합니다. 예를 들어, dec2base(10,8)10'12'로 변환하지만, dec2base(10.5,8)은 오류를 생성합니다.

  • D가 문자형 배열이거나 논리형 배열이면 dec2baseD의 요소를 정수로 취급합니다. 그러나 dec2base는 문자를 해당 Unicode® 값으로 취급하기 때문에, D를 문자형 배열로 지정하는 것은 권장되지 않습니다.

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

출력값 표현의 기수로, 2와 36 사이의 정수로 지정됩니다. 예를 들어, n이 8인 경우 출력값은 8진법 숫자를 나타냅니다.

출력값의 최소 자릿수로, 정수로 지정됩니다.

  • DminDigits 자릿수보다 더 적은 자릿수로 나타낼 수 있는 경우 dec2base는 출력값을 선행 0으로 채웁니다.

  • D가 너무 커서 minDigits 자릿수보다 더 많은 자릿수로 나타내야 하는 경우 dec2base는 필요한 만큼의 자릿수를 갖는 출력값을 반환합니다.

확장 기능

C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

버전 내역

R2006a 이전에 개발됨