본문 바로가기

Front/HTML

[HTML] HTML5의 인코딩(Charset)

728x90

인코딩

인코딩이란 우리가 작성한 코드를 컴퓨터가 해석할 수 있도록 번환하는 작업이다.

HTML 페이지를 올바르게 표시하기 위해선 웹 브라우저의 인코더 형식을 맞춰주어야 한다.


방법

<meta charset="UTF-8">

문서 <head></head> 사이에 위 명령어를 입력하면된다.

오늘날 인터넷에서는 UTF-8 인코딩 방식을 가장 많이 채택하고 있어서 대부분의 charset 속성 값을 utf-8로 지정한다.

 


역사

과거에는 ASCII, ANSI, EUC-KR, CP949등 다양한 캐릭터셋이 있었고 이런 문자 코드들은 한정된 범위의 문자를 갖고있어서 다른 나라의 문자들을 표시할 수가 없었다.

이 때문에 전 세계의 모든 문자들을 컴퓨터에서 표현하고 다룰 수 있게 설계된 표준 규격이 바로

유니코드(Universal Coded Character Sety)이다.

 

이 유니코드 문자열 인코딩 방식에는 UTF-8, UTF-16, UTF32등이 있다. 뒤의 숫자는 각 인코딩 형태를 몇비트로 하냐는 뜻이며 이중에서 UTF-8이 가장 호환성이 좋고 표준화된 방식이다.

 

 

 

UTF-8

UTF-8에서는 한 문자를 나타내기 위해서 최대 4바이트 까지 사용한다.

이전 표준코드였던 아스키(ASCII)코드의 문자들은 문자 길이가 7비트 이내이므로 UTF-8에서 1바이트로 표현된다.

{첫 128문자(알파벳)는 1바이트로 표현된다.}

한글의 '가'는 유니코드로 U+AC00이며 이는 10진수로 44,032이다.

44,032 = 0b10101100 00000000

 

이는 유니코드 인코딩 방식 범위에 대입하면 (ko.wikipedia.org/wiki/UTF-8)

11101010 10110000 10000000

가 되므로 한글은 문자당 3바이트가 된다.

 

*UTF-8 방식에서 영어 문서를 작성할 경우 문서의 용량을 줄일 수 있음