IT/CS

ANSI와 UNICODE 차이 알아보기

Eri_n 2022. 5. 19. 18:13
반응형
cf) ASCII (American Standard Code for Information Interchange)
- 최초의 문자열 인코딩
- 7 bit로 구성됨.
- 영어를 위한 문자, 숫자, 특수문자, 기호 등 128개 문자 표현 가능.
- SBCS에 해당.
- 다른 언어 지원안됨.

 

 

So, 다른 언어를 지원해야 할 필요가 생겨 만들어진 인코딩: ANSI

 

ANSI

- 8bit로 구성, 256개의 문자를 표현할 수 있다.

- ASCII의 확장판 (ASCII에서 1bit를 더 사용한 것)

=> 7bitASCII와 동일, 뒤에 1bit를 이용하여 다른 언어의 문자를 표현한다.

- CodePage: 각 언어별로 Code 값을 주고, Code마다 다른 문자열 표를 의미하도록 약속.

 

ANSI = ASCII(7bit) + CodePage(1bit)

 

UNICODE

- 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현할 수 있도록 고안된 문자 집합

(모든 문자에 index 지정)

=> Code Point (Code Unit)

- 코드가 더 빠르게 수행되며 더 작은 메모리를 사용하고, 윈도우가 제공하는 모든 함수를

쉽게 사용할 수 있기에 유니코드를 사용하는 것이 권고 됨.

- WBCS 방식에 해당 됨.

- 유니코드를 표현하는 여러 가지 '인코딩' 방식들이 존재 (UTF-8, 16, 32...)

 

[ 유니코드를 표현하는 여러가지 '인코딩' 방식 ]




UTF-8
- 8비트 단위로 인코딩하는 방식.
- 한 문자를 나타내기 위해 1byte ~ 4byte까지 사용.
- 인터넷에 교환되는 대부분의 파일에 사용 됨.
- 영문 byte : 1byte
한글 byte : 3byte




UTF-16
- 16비트 단위로 인코딩하는 방식.
- 아스키코드와 호환이 어렵다.
- 유니코드 한 문자를 나타내기 위해 2byte ~ 4byte까지 사용.
- 윈도우 응용프로그램, 자바스크립트 등의 작동 시 사용됨.
- 영문 byte : 2byte
한글 byte : 2byte


UTF-32
- 모든 글자를 4바이트로 표현.
- 저장공간의 낭비가 심하다는 단점이 있다. so, 네트워크 전송 방식으로 사용 안함.
- 프로그램 내부에서만 사용.

 

 
반응형