본문 바로가기
SAS/SAS 함수

【SAS 함수】 27. BLSHIFT 함수

by 기서무나구물 2018. 11. 17.

포스팅 목차

    27. BLSHIFT

     


    2개의 32비트 정수 인수 값의 비트 단위(bitwise) 논리적 왼쪽 이동(left shift)의 값을 반환한다.

    Category: Bitwise Logical Operations

     

    MAIN

    문 법


    BLSHIFT 
    (argument-1,argument-2)


     

    Arguments

    argument-1
         는 숫자(nonnegative, and nonmissing)

     

    argument-2
         는 숫자(nonnegative, and nonmissing)

     


    참 고

    데이터가 저장될 때는 바이너리(binary) 코드로 저장된다.
    signed short int형인 경우 10이라는 숫자가 저장될 때는 00001010 (1*2^3 +0*2^2 + 1*2^1 + 0*2^0)으로 저장된다.

    이 숫자를 일반적인 left shift를 하면 00010100 (1*2^4 + 0*2^3 +1*2^2 + 0*2^1 + 0*2^0)이 된다. 즉, 20이 된다.

    그리고, right shift를 하게되면 00000101 (1*2^2 + 0*2^1 + 1*2^0)로, 5가 된다.

    이 쉬프트 연산을 쓰는 이유는 일반 연산보다 속도가 빠르다는 이유 때문이다.

     


    관련 함수

    함수명 함수내용
    BAND 32 비트 정수 값의 비트 단위 논리적 AND 값을 반환한다.
    BLSHIFT 2개의 32비트 정수 인수 값의 비트 단위(bitwise) 논리적 왼쪽 이동(left shift)의 값을 반환한다. (두 인수의 bitwise 로지컬 왼쪽 이동(left shift) 값을 반환.)
    BNOT 인수의 비트 단위 논리적(bitwise logical) NOT 값을 반환한다.
    BOR BOR 함수는 2개 인수의 비트 단위 논리적(bitwise logical) OR 값을 반환한다.
    BRSHIFT 2개의 32비트 정수 인수 값의 비트 단위(bitwise) 논리적 오른쪽 이동(left shift) 작업을 수행한 결과 값을 반환한다. (두 인수의 bitwise logical right shift값을 반환.)
    BXOR 2개 인수의 비트 단위(bitwise logical) 논리 배타적인 OR (EXCLUSIVE OR) 값을 반환한다. 즉, 배타적인 OR 작업은 2개 인수 중에 하나만 참(1)인 경우 참(1)으로 반환한다.

     


    예 제

    각 해당값을 논리적 왼쪽 이동 작업을 수핸한 값을 반환한다.

    SAS Statements
    DATA BLSHIFTK;
         X = BLSHIFT(07X,2);
         PUT X=HEX.;
         
         X = BLSHIFT(10,1);
         PUT X=;
         
         X = BLSHIFT(1,0);
         PUT X=;
         
         X = BLSHIFT(0,0);
         PUT X=;
    RUN;

     

    Results
    X = 0000001C
    X = 20
    X = 1
    X = 0

     


    SAS 함수(SAS Function) 리스트 링크

     

    엑셀(EXCEL)과 SAS 함수(SAS Function) 비교 리스트 링크

     

    SAS 데이터 스텝 구문 리스트(SAS Data Step Statement)
    반응형

    'SAS > SAS 함수' 카테고리의 다른 글

    【SAS 함수】 29. BOR 함수  (0) 2018.11.17
    【SAS 함수】 28. BNOT 함수  (0) 2018.11.17
    【SAS 함수】 26. BETAINV 함수  (0) 2018.11.17
    [SAS 함수] 25. BETA 함수  (0) 2018.11.16
    【SAS 함수】 24. BAND 함수  (0) 2018.11.16

    댓글