아스키코드, 유니코드, UTF-8의 차이

Dragony·2020년 5월 28일
0

컴퓨터사이언스

목록 보기
1/1

인코딩 : 문자를 어떻게 출력할지에 대한 약속

간단하게 설명.

아스키코드(ASCII)

128개의 문자조합을 제공하는 7비트 부호.
아스키코드만으로는 각 나라별 언어를 표현할 수 없다. 이를 해결한 코드가 유니코드.

알파벳, 숫자, 특수기호, 그 외 컴퓨터에 필요한 몇 가지만 정의되어 있어서
점차 여러 나라에서 컴퓨터를 사용하게 되고 통신이 발달하다보니 기존의 아스키 인코딩보다
더 많은 문자들을 정의한 새로운 인코딩이 필요해짐

  • 컴퓨터 내에서 문자 A는 65로 저장됨

유니코드(Unicode)

각 나라별 언어를 모두 표현하기 위해 나온 코드 체계가 유니코드
숫자와 글자, 즉 키 값이 1:1로 매핑된 형태의 코드

사용중인 운영체제, 프로그램, 언어에 관계 없이 문자마다 고유한 코드 값을 제공하는 새로운 개념의 코드
16비트를 표현하므로 최대 65,536자 표현 가능

영문/숫자/한글/한자 등 모든 글자는 이론적으로 2바이트
아주 희귀한 문자들은 2바이트를 초과할 수도 있다

UTF-8은 유니코드가 파일에 저장될 때 영문/숫자는 아스키코드와 똑같이 1바이트 사용
한글 등은 3바이트로 파일에 저장

UTF-8(가변길이 인코딩)

유니코드를 사용하는 인코딩 방식 중 하나
영문/숫자/기호는 1바이트로, 한글/한자는 3바이트로 표현
전세계 모든 글자들을 한꺼번에 표현할 수 있다

UTF-8 유니코드는 아스키 코드와 영문 영역에서는 100% 호환
만약, UTF-8 유니코드 문서에 한글 등이 전혀 없고 영문과 숫자로 이루어져 있다면 그 카드는 아스키코드와 동일

전 세계의 모든 언어를 하나의 파일에 쓸 수 있다
유니코드를 위한 가변 길이 문자 인코딩 방식 중 하나
유니코드 한 문자를 나타내기 위해 1바이트에서 4바이트까지 사용

profile
안녕하세요 :) 제 개인 공부 정리 블로그입니다. 틀린 내용 수정, 피드백 환영합니다.

0개의 댓글