📌0과 1로 숫자를 표현하는 방법
🎯정보 단위
-
비트
0과 1을 나타내는 가장 작은 정보 단위
n 비트는 2^n 가지의 정보 표현 가능
-
워드
CPU가 한 번에 처리할 수 있는 정보의 크기 단위
만약 CPU가 한 번에 16비트를 처리할 수 있다면 1워드는 16비트.
- 하프 워드 : 워드의 절반 크기
- 풀 워드 : 워드 크기
- 더블 워드 : 워드의 두 배 크기
🔋이진법
이진수의 음수 표현 : 2의 보수
어떤 수를 그보다 큰 2^n 에서 뺀 값
쉽게 모든 0과 1을 뒤집고 1을 더하면 된다.
🧵십육진법
이진법으로 수를 표현하면 숫자의 길이가 길어져 16진법도 많이 사용
🎻이진수 -> 십육진수 변환
- 이진수 4개를 16진수로 표현하면 된다.
십육진수 -> 이진수 변환
- 16진수 하나를 이진수 4비트로 표현
📌0과 1로 문자를 표현하는 방법
📚문자 집합과 인코딩
- 문자 집합 : 컴퓨터가 인식하고 표현할 수 있는 문자의 모음
- 인코딩 : 문자를 0과 1로 이루어진 문자 코드로 변환하는 과정(코드화 과정)
- 디코딩 : 0과 1로 표현된 문자 코드를 문자로 변환하는 과정(코드 해석 과정)
💍아스키 코드
- 초창기 문자 집합 중 하나
- 알파벳, 아라비아 숫자, 일부 특수 문자 포함
- 7비트로 표현 : 실제는 8비트지만 1비트(parity bit)는 오류 검출 위해 사용
🧸한글 인코딩 : 완성형 vs 조합형 인코딩
완성형 인코딩
조합형 인코딩
- 초성, 중성, 종성 비트열 할당, 그들의 조합으로 글자 코드 완성
🧦EUC-KR
- 완성형 인코딩 방식
- 글자 하나하나에 2바이트 크기의 코드 부여
2바이트 = 16비트 = 4자리 16진수로 표현한다.
- 2300여개의 한글 표현 가능
🥏유니코드
- 통일된 문자 집합
- 한글, 영어, 화살표와 같은 특수문자, 이모티콘까지
- 글자에 부여된 값 자체를 인코딩된 값으로 삼지 않고 이 갑을 다양한 방법으로 인코딩한다.
🎑UTF-8
- 가변 길이 인코딩 : 1 ~ 4바이트
- 유니코드에 부여된 값에 따라 인코딩 결과 달라진다.