2. 데이터
1. 0과 1로 숫자를 표현하는 방법
정보 단위
비트 : 0, 1을 나타내는 가장 작은 정보 단위
바이트 : 8개의 비트를 묶은 단위 -> * 1000 할때마다, 킬로바이트 -> 메가바이트 -> 기가바이트 -> 테라바이트 순으로 커진다.
진법
2 진법 : 0, 1 만으로 모든 숫자를 표현하는 방법
10 진법 : 0~9 로 모든 숫자를 표현하는 방법
16 진법 : 0~E 로 모든 숫자를 표현하는 방법
2. 0과 1로 문자를 표현하는 방법
문자 집합과 인코딩
문자 집합 : 컴퓨터가 인식하고 표현할 수 있는 문자의 모음
문자 인코딩 : 문자 집합에 속했다고 해서 컴퓨터가 그대로 이해할 수는 없다. 문자를 0, 1 로 변환해야 비로소 컴퓨터가 이해할 수 있는데, 이 변환 과정을 문자 인코딩이라 한다.
문자 디코딩 : 인코딩의 반대 과정. 0,1 을 사람이 이해할 수 있는 문자로 변화하는 과정을 문자 디코딩이라고 한다.
아스키 코드
초창기 문자 집합 중 하나로, 영어 알파벳과 아라비아 숫자, 일부 특수 문자를 포함하는 문자 집합
아스키 코드는 매우 간단하게 변환된다는 장점이 있지만, 인코딩의 범위가 매우 한정적이라는 단점이 있다. -> 1바이트 확장한 확장 아스키도 매우 부족하다.
EUC-KR
EUC-KR 대표적인 완성형 인코딩 방식이다.
완성형 인코딩 : 초성, 중성, 종성의 조합으로 이루어진 완성된 하나의 글자에 고유한 코드를 부여하는 인코딩 방식
조합형 인코딩 : 초성을 위한 비트열, 중성을 위한 비트열, 종성을 위한 비트열을 할당해 그것들의 조합으로 하나의 글자 코드를 완성하는 인코딩 방식
한글은 한 글자에 2바이트가 부여되기 때문에 EUC-KR 로 인코딩 된 한글 한글자를 표현하려면 16비트가 필요하다.
아스키 코드보다 표현할 수 있는 범위가 커졌지만, 모든 한글 표현을 포함할 수는 없다... -> MS 의 CP949 라는 확장 버전이 생겼지만, 이 또한 한글을 모두 표현하기에는 부족하다.
유니코드와 UTF-8
UTF-8 은 EUC-KR 보다 훨씬 다양한 한글을 포함하고, 대부분의 나라의 문자, 특수문자까지 표현할 수 있는 인코딩 방식이다.
Last updated