김 컴퓨터


비트 연산 (Bitwise Operations)

비트 연산은 정수나 문자와 같은 데이터를 2진수 비트 단위(0과 1)로 직접 조작하는 연산입니다.

이는 CPU가 가장 빠르고 효율적으로 처리할 수 있는 연산 방식이며, 주로 메모리나 하드웨어를 정밀하게 제어할 때 사용됩니다.


1. 비트 연산의 목적과 중요성

  1. 하드웨어 제어 (임베디드): 마이크로컨트롤러(MCU)의 레지스터에서 특정 핀(Bit) 하나만 켜거나(SET), 끄거나(CLEAR), 상태를 확인할 때 사용됩니다.
  2. 효율성/속도: 곱셈이나 나눗셈보다 훨씬 빠릅니다. (예: 숫자를 2로 곱하거나 나눌 때 비트 이동 연산자를 사용)
  3. 데이터 압축 및 암호화: 비트 단위의 패턴 조작은 데이터 처리 및 보안 알고리즘의 기초가 됩니다.

2. 연산의 대상: 레지스터와 마스크

비트 연산은 주로 두 가지 핵심 요소를 대상으로 합니다.

  1. 레지스터(Register) 또는 데이터: 실제 조작하고자 하는 2진수 값입니다. (예: MCU의 포트 상태 레지스터)
  2. 마스크(Mask): 조작하고자 하는 특정 비트의 위치를 1로 지정하여 만든 기준 2진수 값입니다.

비유: 마스크는 원하는 부분만 연산을 통과시키고, 나머지는 가리는 도장 틀과 같습니다.


3. 비트 연산의 주요 종류

종류 기호 (C/Python) 주요 용도
비트 논리 연산 &, |, ^, ~ 특정 비트 켜기/끄기, 상태 확인, 토글
비트 이동 연산 <<, >> 숫자의 빠른 곱셈/나눗셈, 비트 위치 이동

이 연산자들을 조합하여 데이터를 원하는 형태로 정교하게 변형하는 것이 비트 연산의 핵심입니다.