알고리즘&자료구조

4주차 - 진법변환/비트연산

이지서 2021. 9. 22. 20:39
728x90

파이썬에 내장된 진법 변환 함수들

  • 10진법 → 2진법 : bin()
  • 10진법 → 8진법 : oct()
  • 10진법 → 16진법 : hex()
  • n진법 → 10진법: int()

 

비트연산 - AND(&), OR(|), XOR(^), NOT(~), SHIFT(<<, >>)

한 개 또는 두 개의 이진수에 적용되는 연산

 

AND : 둘 다 1일때만 1을 반환, 아닐땐 0을 반환.

OR: 둘 중 하나라도 1일 때 1을 반환, 아닐땐 0을 반환

XOR: 둘 중 하나만 1일 때 1을 반환

NOT: 비트 반전 연산자; 1은 0으로, 0은 1로

SHIFT: 비트 이동 연산자; 주어진 수 만큼 옮김

  • bin(0b11<<3) = 0b11000
  • bin(0b1199<<2) = 0b110000
  • bin(0b11>>1) = ob1
  • bin(0b1100>>2) = 0b11

 

비트연산의 활용

  1. 컴퓨터 연산을 위한 비트 필드
  2. 데이터 압축 및 암호화
  3. 유한 상태 기계
  4. 컴퓨터 통신을 위한 포트 및 소켓