비트연산자
|
&
<<
>>
우선 | 는 or 의 의미로 비트연산시 둘중 1이 하나라도 있으면 1로 나타내준다
0000 1000 (8)
0000 0100 (4) | 연산을 실시한다고 하면
---------------
0000 1100 (12) 을 나타내준다.
& 비트 연산자는 and의 의미로써 둘다 1이여야 1로 나타내준다
0000 1000 (8)
0000 0100 (4) & 연산을 실시한다고 하면
---------------
0000 0000 (0) 이다.
<< 연산자의 경우는 해당 비트값을 왼쪽으로 숫자만큼 이동 시켜준다고 생각하면된다.
(2<<4) 의 경우는
0000 0010 (2) 해당 값에서 비트를 << 4칸 움직이는 것으로
-----------
0010 0000 (32) 가 된다.
>> 연산자의 경우는 해당 키트값을 오른쪽으로 숫자만큼 이동시켜 주는 것으로
(2>>1) 의경우는
0000 0010 (2) 해당 값에서 비트를 >> 1칸 움직이는 것으로
-----------
0000 0001 (1) 이 된다.
(2>>2) 그이상 >> 연산은 그냥 0으로 나타낸다.
응용 하는 것으로
10 | (1<<3) 의경우는
10 의 값과
(1<<3) 한 값을 | 비트 연산하는 것으로
0000 1010 (10)
0000 1000 (8) |연산
-----------------------
0000 1010 (10) 10이 출력된다.
'OS > Linux' 카테고리의 다른 글
[Linux/C] GDB (0) | 2022.03.25 |
---|---|
[Linux/C] 함수 포인터 (0) | 2022.03.24 |
[Linux/C] 포인터 (0) | 2022.03.23 |
[Linux/C] C언어 서식 변환 문자 (0) | 2022.03.13 |
[Linux] Ubuntu 20.04 설치 (0) | 2022.03.11 |