[Unity] 문자 인코딩 ( Character Enconding )
Character Encoding 은 사람이 사용하는 글자를 컴퓨터에서 사용할 수 있도록 변환하는 것
▶ 기계는 0, 1로만 데이터를 저장하기 때문에 "안녕하세요" 같은 단어를 컴퓨터에 저장한다고 하면 특정한 규칙에 따라 0, 1로 변환되는 과정이 필요.
● 문자 인코딩의 종류
▶ ASCII ( 아스키 )
: 미국 ANSI에서 표준화한 정보교환용 7비트 부호체계
: 1바이트로 문자를 표현하는데, 그 중 1bit는 통신 오류 검출용, 7bit가 문자를 표시
: 2의 7승인 127개의 문자 표시가 가능. ( 52개의 영문 알파벳 대소문자와, 10개의 숫자, 32개의 특수문자, 그리고 하나의 공백 사용 가능 )
참고 자료 : https://namu.wiki/w/%EC%95%84%EC%8A%A4%ED%82%A4%20%EC%BD%94%EB%93%9C
▣ Unicode
: Unicode 이전에는 ASCII의 1Byte에 영어 대신 자국의 글자를 대체해서 사용. 이로 인해 사용자간의 통신에서 ASCII의 의미가 달라지는 문제가 발생
ex) 영어권에서 Hello 를 ASCII로 보냈는데, 한국에서는 Hello가 아닌 "ㅁㅈㄷㄱㅂ"라는 글자로 보이는 현상
: 전 세계의 모든 문자를 다룰 수 있는 표준이 필요하게 되어 Unicode가 생김
: Unicode는 특정한 규칙에 의해 글자와 코드가 1:1로 매칭되는 코드표로 현재도 계속 업데이트 중
참고 자료 : https://ko.wikipedia.org/wiki/%EC%9C%A0%EB%8B%88%EC%BD%94%EB%93%9C
▶ UTF-8
: 가변 길이 문자 인코딩 방식으로 1바이트에서 4바이트를 사용하여 문자를 표시
: 영문/숫자/기호는 1바이트를 사용, 한글과 한자 등은 3바이트로 사용
참고 자료 : https://ko.wikipedia.org/wiki/UTF-8
▶ UTF-16
: 가변 길이 문자 인코딩 방식으로, UTF-8과 달리 문자 하나를 표현할 때 2바이트, 4바이트 2가지만을 사용
참고 자료 : https://ko.wikipedia.org/wiki/UTF-16
▶ UTF-32
: 문자 하나를 4바이트를 사용
참고 자료 : https://ko.wikipedia.org/wiki/UTF-32