본문 바로가기

콩's EDUCATION/콩's BASIC IT

연산자들의 우선 순위와 표기

 

참고로 저 ^ 연산이... 모 회사 테스트에 나왔지요.

이 부분은 참 중요한 것 같아요.

 

16진수(오퍼랜드) ^ 16진수(오퍼랜드)를 구하시오.

 

비트 논리 중요 연산자는 아래와 같습니다.

 

& 는 AND,  비트단위 AND연산

 

| 는 OR,    비트단위 OR연산

^ 는 XOR,  비트단위 XOR연산

! 는 NOT, NOR 비트단위 NOT, NOT연산

~ 는 Complement, 비트단위 1의 보수 연산

 

 

AND 연산은 쉽게 생각하면 두 연산이 모두 1(참)이면 1(참)이다.

 

A B R

0 0 0

1 0 0

0 1 0

1 1 1

 

OR 연산은 하나라도1(참)이면 1(참)이다.

 

A B R

0 0 0

1 0 1

0 1 1

1 1 1

 

XOR 연산은 같으면 0(거짓), 다르면 1(참)이다.

 

A B R

0 0 0

1 0 1

0 1 1

1 1 0

 

NOT 연산은 반대로 생각하면 됩니다.  보통 논리연산자에서 ! 라고 쓰죠.

 

A R

1 0

0 1

 

NOR 연산은 NOT 연산과 유사하며 연산자도 ! 라고 쓰죠. OR 연산의 반대입니다.

 

A B R

0 0 0

1 0 1

0 1 1

1 1 1

 

 

~ 연산은 ....... 계산해보셔야 합니다^^

 

추가>

 

SHIFT LEFT 연산은 비트를 왼쪽으로 하나씩 밀어내기 한다. 보통 곱하기 효과(2배)를 보인다.

SHIFT RIGHT 연산은 비트를 오른쪽으로 하나씩 밀어내기 한다. 보통 나누기 효과(1/2배)를 보인다.

 

예> 2진수 비트 00101010 / 10진수 2+8+32=42

 

SHIFT LEFT 1번 :  01010100   (10진수 4+16+64=84 고로 2배)

SHIFT RIGHT 1번 : 00010101 (10진수 1+4+16=21 고로 1/2배)