비트연산자

NOT 연산

토픽 비트연산자

4. NOT 연산 (~)

규칙

~0 = 1
~1 = 0

예시 (8비트 기준)

~00001101 = 11110010
     (13)      (242, unsigned)
               (-14, signed)

C 코드

unsigned char a = 13;   // 00001101
unsigned char b = ~a;   // 11110010 = 242
printf("%d", b); // 출력: 242

실무 용도: 마스크 만들기

// 3번 비트만 0인 마스크
unsigned char mask = ~(1 << 3);  // 11110111

Arduino 예시: LED 끄기

// 5번 핀 LOW로 설정
PORTB &= ~(1 << 5);  // PORTB = PORTB & ~(1 << 5)

댓글

댓글 본문