문자 인코딩에 대해서 간략히 포스팅 해보자.

   

문자 인코딩에 대해서 이해를 해야한다.

ascii 코드를 알고 시작해야 한다.

   

ascii 코드라는건 알파벳 a~z, A~Z 와 각 특수문자 등등 128가지의 문자들을 정의 해 둔걸 말한다.

나중엔 이것마저 모자라 확장 ascii 까지 나오게 된다.

하지만 확장 ascii 라고 해봐야 표현할 수 있는 문자에 대해선 한계가 존재한다.

각 나라별로 언어가 다르니 문자 또한 다르게 되는데, 이걸 표현하기 위해서

DBCS(Double Byte Character Set)가 나오게 되었는데

이걸 이용하면 1바이트 혹은 2바이트로 구성된다.

첫번째 문자가 특정 범위 안에 속할 경우 하나의 문자를 결정하기 위해서

그 다음 바이트를 확인해야 했다.

   

이제는 C라이브러리나 윈도우 함수들이 유니코드를 지원하기 때문에 많이 편하다.

윈도우 비스타의 경우는 유니코드 문자를 UTF-16로 인코딩하게 되고

UTF-16 은 2바이트로 구성된다.

다른 인코딩 방법에 대해선

UTF-8 과 UTF-32 로 존재한다.

   

종류

디코딩 방법

UTF-8

한 문자를 표현하기 위해서 1~4 바이트의 가변적인 크기로 인코딩을 수행한다. 0x0080 미만의 경우 1바이트 0x0080과 0x07FF 사이라면 2바이트 등등 0x0800 이상의 문자는 3바이트 등으로 가변적인 크기를 가진다.

UTF-32

모든 문자를 4바이트로 인코딩한다. 문자 변환 알고리즘을 구현시엔 간단하지만 메모리 사용에 있어서 비효율적인 모습을 보인다.

  

'Programing > Basic' 카테고리의 다른 글

[Git] Git, GitHub, GitLab 은 뭐?, 또 버전관리란 무엇인가 ?  (0) 2017.01.20
기초) 컴퓨터 구조  (0) 2015.09.25
네트워크의 정의  (0) 2015.09.24

+ Recent posts