26 – 연산자(시프트)

시프트 연산자에서 있는 시프트는 말 그대로 이동한다는 뜻이다. 정수형 데이터의 비트를 이동시키기 위해 사용된다. 시프트 연산자에서는 비트를 왼쪽으로 이동시키는 좌측 시프트 연산자(<<)와 오른쪽으로 이동시키는 우측 시프트 연산자(>>)가 있다. 비트 연산과 시프트 연산의 경우에는 컴퓨터 구조 혹은 논리 이론에서 다뤘을 것이다. (…)

그래서 예시가 간단하다. 20이라는 숫자를 왼쪽 시프트와 오른쪽 시프트를 1만큼 하면 어떻게 될 지를 보여주는 예시이다. 좀 더 시프트 하고 싶다면 1 대신 다른 숫자를 넣어보고 연산 결과를 확인해 보면 된다.

스크린샷 2017-02-16 오후 3.03.06

25 – 연산자(비트)

비트 연산자는 컴퓨터에서 정보를 저장하는 최소 단위인 비트를 다루는 연산자이다. C언어는 비트 연산을 제공해서 정수형 데이터를 비트 단위로 다룰 수 있다. 즉, char, int, long형 데이터에서만 사용이 가능하다. 비트 연산은 장치 제어를 위한 것이나 빠른 연산을 위해서도 이용하기 때문에 은근 중요하게 여긴다. 메모리 관리에 있어서도 중요하게 이용하기도 하고…

아래의 예시는 and, or, xor 연산이 어떻게 되는지를 보여주기 위한 예시이다. 여러모로 코드가 좀 긴 편인데, 이 파일은 별도로 올리도록 하겠다.

24 – 연산자(논리)

프로그램을 작성하다 보면 한 가지 이상의 조건을 동시에 요구하는 경우가 있다. 그럴 경우에는 논리 연산자를 이용하여 처리를 하며, 논리 연산은 참 또는 거짓의 논리값을 다룬다.

논리 연산자들의 연산자는 &&(and), ||(or), !(not) 이 셋이다. 사용 예제를 보면 금방 확인할 수 있다.