문자 인코딩
문자 인코딩(文字―, 영어: character encoding) 또는 줄여서 인코딩은 문자나 기호들의 집합을 컴퓨터에서 저장하거나 통신에 사용할 목적으로 부호화하는 방법을 가리킨다. 문자 인코딩을 통해 부호화되어, 복호화하면 본래의 문자나 기호를 뜻하게 되는 부호를 문자 코드(文字―, 영어: character code)라고 한다.
문자 인코딩의 대표적인 예로 전건을 길게, 또는 짧게 두드려서 라틴 알파벳을 나타내는 모스 부호가 있으며, 라틴 알파벳, 숫자, 특수 문자 등을 정수와 그에 대응되는 7비트 이진수로 표현하는 방법인 아스키(ASCII)가 있다.
컴퓨팅 초기에는, 아스키(ASCII, 1963년), EBCDIC(1964년)과 같은 문자열 세트가 표준으로 자리잡았다. 이러한 문자열 세트의 제한은 명백했으며 수많은 애드혹(ad hoc) 방식이 개발되었다. 한중일 계열의 동아시아 스크립트를 포함하여 다중 문자(언어) 지원이 시급했다.
목차[숨기기] |
[편집]문자 인코딩의 구성
문자 집합(character set, charset) 또는 문자셋은 정보를 표현하기 위한 글자들의 집합을 정의한 것으로, 직접적으로 사용되지 않을 수도 있고 한 문자 집합을 여러 문자 인코딩에서 쓸 수도 있다. 특히 집합 안의 문자들에 음수가 아닌 정수들을 배정한 것을 부호화된 문자 집합(coded character set, CCS)이라 한다. 문자 집합은 ASCII와 같이 더 이상의 문자가 추가될 수 없기도 하고, 유니코드와 같이 문자가 계속 추가될 수 있기도 하다.
일반적으로 문자 집합과 문자 인코딩은 어떤 문자를 사용할 수 있으며 어떤 식으로 표현되는지를 나타낸다는 데서 동의어로 취급되기도 한다. 역사적인 이유로 MIME이나 그에 기반한 시스템은 문자 집합("charset")을 문자 인코딩을 나타내는 데 사용한다.
문자 인코딩 형태(character encoding form, CEF)는 특정한 문자 집합 안의 문자들을 컴퓨터 시스템에서 사용할 목적으로 일정한 범위 안의 정수(코드값)들로 변환하는 방법이다. 여기에는 유니코드 코드 포인트를 8비트 숫자의 집합으로 나타내는 UTF-8이나, 16비트 숫자의 집합으로 나타내는 UTF-16, 그리고 대부분의 일반적인 문자 인코딩들이 포함된다.
문자 인코딩 구조(character encoding scheme, CES)는 문자 인코딩 형태로 변환된 코드값을 옥텟 기반의 시스템에서 사용하기 위하여 옥텟들으로 변환하는 방법이다. 대부분의 문자 인코딩 형태는 이 과정에서 아무런 일도 일어 나지 않으며, 8비트 이상의 숫자를 사용하는 UTF-16과 같은 문자 인코딩 형태의 경우 엔디안을 지정해 주는 것으로 충분하다. 여기에는ISO 2022와 같은 복합 인코딩이나, SCSU와 같은 압축 방법 등이 속한다.
[편집]잘 알려진 문자 인코딩
- ISO 646
- EBCDIC
- ISO 8859:
- ISO 8859-1 서유럽
- ISO 8859-2 서유럽 및 중앙유럽
- ISO 8859-3 서유럽 및 남유럽 (터키어, 몰타어, 에스페란토어)
- ISO 8859-4 서유럽 및 발트 해 국가 (리투아니아어, 에스토니아어, 라프어)
- ISO 8859-5 키릴 문자
- ISO 8859-6 아랍 글자
- ISO 8859-7 그리스 글자
- ISO 8859-8 히브리 글자
- ISO 8859-9 서유럽 (개정된 터키어 문자 집합 포함)
- ISO 8859-10 서유럽 (개정된 노르딕어를 위한 문자 집합 및 완전 아이슬란드 문자 집합 포함)
- ISO 8859-11 타이어
- ISO 8859-13 발트어, 폴란드어
- ISO 8859-14 켈트어 (아일랜드 게일어, 스코틀랜드어, 웨일스어)
- ISO 8859-15 유로 기호 및 ISO 8859-1에 대한 다른 항목 추가
- ISO 8859-16 중앙 유럽, 남유럽어 (폴란드어, 체코어, 슬로바키아어, 세르비아어, 크로아티아어, 헝가리어, 알바니아어, 로마어, 독일어, 이탈리아어)
- CP437, CP737, CP850, CP852, CP855, CP857, CP858, CP860, CP861, CP863, CP865, CP866, CP869
- MS 윈도 문자 집합:
- Windows-1250 라틴 글자를 이용하는 중앙 유럽 언어 (폴란드어, 체코어, 슬로바키아어, 헝가리어, 슬로베니아어, 세르비아어, 크로아티아어, 로마어, 알바니아어)
- Windows-1251 키릴 문자
- Windows-1252 서양어
- Windows-1253 그리스어
- Windows-1254 터키어
- Windows-1255 히브리어
- Windows-1256 아랍어
- Windows-1257 발트어
- Windows-1258 베트남어
- 맥 오에스 로만 (Mac OS Roman)
- KOI8-R, KOI8-U, KOI7
- MIK
- ISCII 인도어
- TSCII 타밀어
- VISCII 베트남어
- JIS X 0208 일본어
- Shift JIS (마이크로소프트 코드 페이지 932는 Shift_JIS의 파생)
- EUC-JP
- ISO-2022-JP
- JIS X 0213는 JIS X 0208의 확장판.
- 중국어 GB
- 대만어 Big5 (더 잘 알려진 종류가 마이크로소프트 코드 페이지 950)
- 홍콩 HKSCS
- 한국어
- KS X 1001은 2바이트 한국어 문자 인코딩 표준이다.
- EUC-KR
- ISO-2022-KR
- 유니코드 (UTF-8도 참조)
- ANSEL 또는 ISO/IEC 6937
[편집]같이 보기
[편집]바깥 고리
'Development > Common' 카테고리의 다른 글
ActionScript (0) | 2012.01.23 |
---|---|
JIT 컴파일 (0) | 2012.01.23 |
유니코드(UNICODE) & 엔코딩(Encoding) (1) | 2012.01.19 |
utf-8 & euc-kr (0) | 2012.01.19 |
IIOP (0) | 2012.01.16 |