`DSHIFTR` — 결합 오른쪽 시프트(Combined right shift)

DSHIFTR — 결합 오른쪽 시프트(Combined right shift)

두 정수의 비트를 이어 붙여 오른쪽으로 회전 이동시키고 싶을 때가 있어요. DSHIFTR(I, J, SHIFT)DSHIFTL과 방향만 반대인 결합 시프트 내장 함수예요.

출처: gfortran — DSHIFTR

본문

시그니처

RESULT = DSHIFTR(I, J, SHIFT)

설명

DSHIFTR(I, J, SHIFT)IJ의 비트를 결합해요. 결과의 왼쪽 SHIFT개 비트I오른쪽 SHIFT개 비트이고, 나머지 비트는 J의 왼쪽 비트들이에요. 즉 I의 하위 비트가 J의 오른쪽으로 '밀려들어오는' 결합 이동이에요.

클래스

원소 함수(Elemental function)

인자

  • IINTEGER, UNSIGNED 또는 BOZ 상수.
  • JINTEGER, UNSIGNED 또는 BOZ 상수. IJ가 모두 INTEGER 또는 UNSIGNED 타입이면 같은 타입·종류여야 하고, 둘 다 BOZ 상수여서는 안 돼요.
  • SHIFTINTEGER 타입. 음수가 아니어야 해요. I가 BOZ 상수가 아니면 SHIFTBIT_SIZE(I) 이하여야 하고, BOZ 상수이면 BIT_SIZE(J) 이하여야 해요.

반환값

반환값은 I와 같은 타입·종류이고, I가 BOZ 상수이면 J와 같은 타입·종류예요.

표준

Fortran 2008 이상이며, UNSIGNED에 대한 지원은 GNU 확장이에요.

함께 보기

  • DSHIFTL — 결합 왼쪽 시프트