[기본원리] 오른쪽 쉬프트 : 논리 연산!

반응형





오른쪽 쉬프트 연산에는 논리 연산이 있습니다.

그렇다면 산술 연산을 알겠고.... 논리 연산을 뭘까요?

읽기전에 손가락 한번 클릭~ >_<

고마워요 ~ Chu ~ ♥



논리 연산

논리(logic) 연산은 2진수에 있는 각 자리의 0과 1을 개별적으로 취급하는 연산입니다.

여기에는 논리곱(AND) , 논리합(OR), 논리부정(NOT), 배타적 논리합(XOR) 등이 있습니다.
[ 여기에선 가장 기본인 4가지만 소개합니다 ]



차례대로 AND 연산, OR 연산, XOR 연산, NOT 연산 입니다.

처리과정은 이렇습니다.

  • AND 는 A, B 모두 1일때만 1을 만들고 그 외에는 모두 0.
  • OR 는 A 가 1 또는 B 가 1 일때, 즉 둘중 하나라도 1일때 1을 만들고 그 외에는 모두 0.
  • XOR 는 A와 B가 다를때 (1과0) 1을 만들고 같을때 ( 모두1, 모두0 ) 0으로 만듬
  • NOT 는 0은 1로 , 1은 0으로 만듬


위와같은 표를 흔히들 진리표 ( Truth Table ) 이라고 부릅니다.
2진수의 0은 거짓( false ) , 1은 참 ( true ) 를 나타내기 때문에,
결국 논리 연산은 참과 거짓을 가려내는 연산이라고도 할 수 있는데요.

그렇기 때문에 논리 연산의 대상은 숫자가 아니게 됩니다.
따라서 논리 연산에는 자리올림 따윈 없습니다 ^^;

논리 연산에서의 핵심은 2진수를 숫자로 생각하지 않을것! 입니다.


잠시 2진수에서 벗어나서 1을 붉은색, 0을 파란색으로 생각해보세요.

이러한 시선으로 보게되면 AND 연산은 부분적으로 0을 만들 수 있습니다.
OR 연산은 부분적으로 1을 만들 수 있겠네요.
NOT 는 반전 시킬 수 있겠고요.
마지막으로 XOR 는 부분적으로 반전할 수 있겠군요!




반응형

댓글

Designed by JB FACTORY