Main Content

colon, :

벡터 생성, 배열 첨자

설명

예제

y = j:k는 균일한 간격의 벡터 [j, j+1 ,..., k]를 반환합니다. j > k이면 j:k는 비어 있습니다.

적어도 하나의 콜론 피연산자는 fi 객체여야 합니다. 모든 콜론 피연산자는 정수 값을 가져야 합니다. 모든 고정소수점 피연산자는 이진 소수점으로 스케일링되어야 합니다. 기울기-편향 스케일링은 지원되지 않습니다. 피연산자 중 하나라도 복소수이면 colon 함수는 경고를 생성하고 피연산자의 실수부만 사용합니다.

y = colon(j,k)y = j:k와 같습니다.

예제

y = j:i:k는 균일한 간격의 벡터 [j,j+i,j+2i, ...,j+m*i]를 반환합니다. 여기서 m = fix((k-j)/i)입니다. i == 0, i > 0, j > k이거나 i < 0, j < k이면 y = j:i:k는 빈 행렬을 반환합니다.

예제

모두 축소

fi를 콜론 연산자로 사용할 경우 모든 콜론 피연산자는 정수 값을 가져야 합니다.

a = fi(1,0,3,0);	
b = fi(2,0,8,0);	
c = fi(12,0,8,0);	
x = a:b:c
x = 
     1     3     5     7     9    11

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 8
        FractionLength: 0

모든 입력 피연산자가 부호가 없기 때문에 x는 부호가 없고 워드 길이는 8입니다. 결과 벡터의 소수부 길이는 항상 0입니다.

a= fi(int8(-1));
b = uint8(255);
c = a:b;
len = c.WordLength
len = 9
signedness = c.Signedness
signedness = 
'Signed'

int8형 및 uint8형 범위의 교집합을 처리하려면 c의 워드 길이에 추가 비트가 필요합니다. 피연산자 a가 부호가 있기 때문에 c의 데이터형은 부호가 있습니다.

시작 피연산자와 끝 피연산자가 부호가 없으면 증분 피연산자는 음수일 수 있습니다.

x = fi(4,false):-1:1
x = 
     4     3     2     1

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 16
        FractionLength: 0

피연산자 중 하나라도 부동소수점인 경우 출력은 워드 길이와 부호의 유무가 fi 피연산자와 동일합니다.

x = fi(1):10
x = 
     1     2     3     4     5     6     7     8     9    10

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 0

x = fi(1):10fi(1:10, true, 16, 0)과 동일하므로, x는 부호가 있으며 해당 워드 길이는 16비트입니다.

코드에 정수가 아닌 피연산자가 사용된 경우 피연산자가 정수가 되도록 콜론 표현식을 재작성합니다.

다음 코드는 콜론 피연산자가 정수 값이 아니므로 작동하지 않습니다.

Fs = fi(100);
n = 1000;
t  = (0:1/Fs:(n/Fs - 1/Fs));

정수 피연산자를 사용하도록 콜론 표현식을 재작성합니다.

Fs = fi(100);
n = 1000;
t  = (0:(n-1))/Fs;

콜론 피연산자의 값이 콜론 표현식에 사용된 데이터형의 범위에서 벗어나면 MATLAB®은 오류를 생성합니다.

    y = fi(1,true,8,0):256

256은 fi(1,true, 8,0)의 범위에서 벗어나므로 MATLAB이 오류를 생성합니다. 이 동작은 내장 정수의 동작과 일치합니다. 예를 들어 y = int8(1):256은 동일한 오류를 생성합니다.

입력 인수

모두 축소

시작 피연산자로, 실수형 정수 값 스칼라 fi 객체 또는 내장 숫자형으로 지정됩니다.

비 스칼라 배열을 지정하면 MATLAB은 j:i:kj(1):i(1):k(1)로 해석합니다.

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

증분으로, 실수형 정수 값 스칼라 fi 객체 또는 내장 숫자형으로 지정됩니다. 시작 피연산자와 끝 피연산자인 jk가 모두 부호가 없더라도, 증분 피연산자 i는 음수일 수 있습니다.

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

끝 피연산자로, 실수형 정수 값 스칼라 fi 객체 또는 내장 숫자형으로 지정됩니다.

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

출력 인수

모두 축소

Fixed-Point Designer™는 다음 규칙에 따라 y의 데이터형을 결정합니다.

  • 데이터형은 입력 피연산자의 고정소수점 데이터형 범위의 합집합을 포함합니다.

  • 시작 피연산자 또는 끝 피연산자가 부호가 있으면 결과 데이터형은 부호가 있습니다. 그 외의 경우에는 결과 데이터형이 부호가 없습니다.

  • y의 워드 길이는 소수부 길이가 0이고 최하위 비트의 실제 값이 1인 가장 작은 값입니다.

  • 피연산자 중 하나라도 부동소수점인 경우 y의 워드 길이와 부호의 유무는 fi 피연산자에서 파생됩니다.

  • 피연산자 중 하나라도 스케일링된 double형인 경우 y는 스케일링된 double형입니다.

  • yfimath는 입력 피연산자의 fimath와 동일합니다.

  • fi 객체의 데이터형이 모두 double형인 경우 y의 데이터형은 double형입니다. fi 객체의 데이터형이 모두 single형인 경우 y의 데이터형은 single형입니다. double형 입력값과 single형 입력값은 모두 있고 고정소수점 입력값은 없는 경우 출력 데이터형은 single형입니다.

버전 내역

R2013b에 개발됨

참고 항목

|