728x90
[진법 변환]
진법이란?
- 수를 셀 때 자릿수가 올라가는 단위를 기준으로 하는 셈법의 총칭
- 사용하는 숫자의 개수가 진법의 숫자를 의미
bin(10진수) #2진수로 바꿔주는 함수
oct(10진수) #8진수로 바꿔주는 함수
hex(10진수) #16진수로 바꿔주는 함수
int(2/8/16진수) #10진수로 바꿔주는 함수
[비트 연산]
비트 연산이란?
- 한 개 혹은 두 개의 이진수에 적용되는 연산
비트 연산의 종류
- & (AND)
- ㅣ (OR)
- ^ (XOR) : 다르면 1, 같으면 0
- ~ (NOT)
- 음수의 표현을 처리하기 위함
- 1을 더한 뒤 부호를 바꿔줌
bin(~0b0000) #-0b0001 bin(~0b0001) #-0b0010 bin(~0b0010) #-3 = -0b0011 bin(~0b0011) #-0b0100
- <<, >> (SHIFT)
bin(0b11<<3) #0b11000 bin(0b1100<<2) #0b110000 bin(0b11>>1) #0b1 bin(0b1100>>2) #0b11
비트 연산의 활용
- 컴퓨터 연산을 위한 비트 필드
- 데이터의 압축 및 암호화
- 유한 상태 기계
- 컴퓨터 통신을 위한 포트 및 소켓
'두두의 알고리즘 > 공부' 카테고리의 다른 글
[알고리즘] 재귀함수 - (팩토리얼(Factorial) / 피보나치 수열(Fibonacci)) (0) | 2021.11.23 |
---|---|
[자료구조/알고리즘] 해시(Hash) - 해시 테이블, 파이썬 딕셔너리(Python Dictionary) (0) | 2021.11.23 |
[알고리즘] 완전탐색(순차탐색)/이분탐색(이진탐색) (0) | 2021.11.22 |
[자료구조/알고리즘] 배열(Array)/큐(Queue)/스택(Stack) (0) | 2021.11.22 |
[알고리즘] 탐욕법 / 그리디(Greedy) (0) | 2021.11.22 |