Main Content

num2bin

quantizer 객체를 사용하여 숫자를 이진수 표현으로 변환

설명

예제

y = num2bin(q,x)는 숫자형 배열 xquantizer 객체 q에 지정된 데이터형 속성을 사용해서 이진 문자형 벡터로 변환하여 y에 반환합니다.

x가 숫자형 행렬을 포함한 셀형 배열이면 y는 이진 문자열을 포함한, 동일한 차원의 셀형 배열입니다. x가 구조체이면 x의 각 숫자형 필드는 이진수로 변환됩니다.

[y1,y2,…] = num2bin(q,x1,x2,…)는 숫자형 행렬 x1, x2 등을 이진 문자열 y1, y2 등으로 변환합니다.

예제

모두 축소

quantizer 객체에 의해 지정된 특성을 사용하여, 숫자형 값으로 구성된 행렬을 이진 문자형 벡터로 변환합니다.

x = magic(3)/9
x = 3×3

    0.8889    0.1111    0.6667
    0.3333    0.5556    0.7778
    0.4444    1.0000    0.2222

q = quantizer([5,3])
q =


        DataMode = fixed
       RoundMode = floor
    OverflowMode = saturate
          Format = [5  3]
y = num2bin(q,x)
y = 9x5 char array
    '00111'
    '00010'
    '00011'
    '00000'
    '00100'
    '01000'
    '00101'
    '00110'
    '00001'

quantizer 객체에 지정된 속성을 사용하여 이진 문자형 벡터와 숫자형 배열 간에 변환합니다.

숫자형 배열을 이진 문자열로 변환하기

워드 길이가 4비트이고 소수부 길이가 3비트인 quantizer 객체를 생성합니다. quantizer 객체의 다른 속성은 디폴트 값을 가져서, 부호 있는 고정소수점 데이터형으로 지정하고, 음수 무한대 방향으로 내림하고, 오버플로 시 포화됩니다.

q = quantizer([4 3])
q =


        DataMode = fixed
       RoundMode = floor
    OverflowMode = saturate
          Format = [4  3]

숫자형 값으로 구성된 배열을 만듭니다.

[a,b] = range(q);
x = (b:-eps(q):a)
x = 1×16

    0.8750    0.7500    0.6250    0.5000    0.3750    0.2500    0.1250         0   -0.1250   -0.2500   -0.3750   -0.5000   -0.6250   -0.7500   -0.8750   -1.0000

quantizer 객체 q에 의해 지정된 속성을 사용하여 숫자형 벡터 x 를 이진수 표현으로 변환합니다. 참고로, num2bin은 항상 이진수 표현을 열로 반환합니다.

b = num2bin(q,x)
b = 16x4 char array
    '0111'
    '0110'
    '0101'
    '0100'
    '0011'
    '0010'
    '0001'
    '0000'
    '1111'
    '1110'
    '1101'
    '1100'
    '1011'
    '1010'
    '1001'
    '1000'

bin2num을 사용하여 역 연산을 수행합니다.

y = bin2num(q,b)
y = 16×1

    0.8750
    0.7500
    0.6250
    0.5000
    0.3750
    0.2500
    0.1250
         0
   -0.1250
   -0.2500
      ⋮

이진 문자열을 숫자형 배열로 변환하기

모두가 3비트 고정소수점의 2의 보수인 숫자를 소수 형식으로 다음과 같이 지정합니다.

q = quantizer([3 2]);
b = ['011  111'
     '010  110'
     '001  101'
     '000  100'];

bin2num을 사용하여 이러한 값에 상응하는 숫자형 값을 확인합니다.

x = bin2num(q,b)
x = 4×2

    0.7500   -0.2500
    0.5000   -0.5000
    0.2500   -0.7500
         0   -1.0000

입력 인수

모두 축소

변환에 사용할 데이터형 속성으로, quantizer 객체로 지정됩니다.

예: q = quantizer([16 15]);

숫자형 입력 배열로, 스칼라, 벡터, 행렬, 다차원 배열, 셀형 배열 또는 구조체로 지정됩니다.

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

  • num2binbin2num은 서로 역의 관계입니다. 참고로, num2bin은 항상 이진수 표현을 열로 반환합니다.

알고리즘

  • 고정소수점 이진수 표현은 2의 보수입니다.

  • 부동소수점 이진수 표현은 IEEE® 표준 754 스타일입니다.

버전 내역

R2006a 이전에 개발됨

참고 항목

| | | |