문자 코드

Code 2012. 11. 11. 04:18

// 문자 코드


http://forensic-proof.com/archives/615
http://www.slideshare.net/parkpd/unicode-4796992

* 인코딩 방식
    - SBCS(Single Byte Character Set)
        - 아스키
    - MBCS(Multi Byte Character Set)
        - 가변길이
        - EUC-KR, UTF-8, UTF-16
        - 문자열 길이를 바로 알수 없다
    - WBCS(Wide Byte Character Set)
        - 고정길이
        - UTF-32, UCS-2, UCS-4
        - 문자셋과 인코딩이 동일

* ASCII(American Standard Code for Information Interchange)
    - ANSI(American National Standards Institute) 에서 만든 영문 문자 코드
    - 원래 7bit
    - 확장형
        - Latin 1 : (ISO-8859-1 와 MS가 만듬) , 8bit

* Unicode (ISO/IEC10646)
    - UCS(Universal Character Set)이라는 이름으로 정의
        - UCS에는 110만개 이상의 코드가 정의
        - BMP(Basic Multiligual Plane, 기본 다국어 평면)
            - 유니코드의 처음 65,536개에는 가장 많이 사용되는 전 세계 문자가 기록
    - 크기 : 주로 2 byte(BMP영역)
        최대 4바이트(BMP이외의 영역)
    - 한글 : 현대글=11,172(유니코드의 17%), 한자=2만, 조합형 가능
    - 유니코드는 규약일뿐 사용은 인코딩 방식으로
    - CJK 는 Chinese, Japanese, Korean을 합쳐 부르는 명칭으로 세 나라의 공통인 '한자'표현.
    - 유니코드 인코딩 방식 : UCS-2, UCS-4, UTF-8, UTF-16,
        - UCS-2 (2-byte Universal Character Set): 유니코드를 2바이트로 표현, 1Byte만 사용하는 곳에서는 비선호, BMP이외의 영역 표현 불가
        - UCS-4 : (길이=4바이트) BMP 이외 영역도 표현

* UTF-8
    - UTF (Unicode Transformation Format)
    - Unicode의 인코딩(Encoding) 방법중 하나
    - 가변길이 : 1~4바이트, 영문/숫자/기호는 1바이트, 한글과 한자 등은 3바이트로 표현
    - ANSI와 호환, 영어권에서 1byte로 표현 가능해서 선호
    - 웹페이지의 실질적 표준
    - BOM(Byte Order Mark) : 파일 문자 인코딩 방식 을 알려주는 헤더
        - UTF-8은 (EF BB Bf) 이지만 아스키와 호환을 위해 권장하지 않음

* UTF-16
    - BMP영역은 2Byte, BMP이외의 영역은 4Byte로 표현
    - BOM : little-endian: FF FE,  big-endian: FE FF


* EUC-KR (ISO 2022)
    - EUC(Extended Unix Code) : AT&T에서 아시아계 문자를 표현하기 위해 만든 확장 유닉스 코드
        - EUC-CN(중국어), EUC-TW(대만), EUC-JP(일본)
    - 크기 : 영문/숫자/기호는 1바이트. 한글과 한자는 2바이트
    - KS X 1001(KSC5601-1987) 기반으로 한글 2,350자 밖에 표현을 못함
    - iso 2022-kr : euckr을 7bit로 표현

* CP949
    - EUC-KR 의 확장, 마이크로소프트 만듬
    - 한글 11,172 가능
    - ks c 5601

* Code Page
    - 완성형 확장 : 949
    - 조합형 : 1361
    - 영어 : ANSI-437
    - 로케일 UTF-8 : 65001


* 완성형 한글
http://blog.daum.net/angelarf/7629153
     KSX 1001 완성형 한글코드
- 한글 2,350자, 한자 4,888자, 특수문자 1,128자, 사용자정의 188자, 미지정문자 282자
- 영어숫자는 1바이트, 한글한자는 2 바이트로 구성된 문자
- 외국 소프트웨어의 한글화가 쉬움, 정보교환시 충돌이 없음
- 코드가 부여되지 않은 문자는 사용불가, 기억공간이 많이 필요.

    KSX 1001 조합형 한글코드
- 한글 초성,중성,종성 모두 표현, 한글 11,172자
- 영어숫자는 1바이트, 한글한자는 2 바이트로 구성된 문자
- 한글 모두를 표현할 수 있음
- 정보교환시 충돌발생

    KSX 1005-1 유니코드
- 완성형 한글 11,172자, 한글자모 240자
- 모든문자 2 바이트로 구성
- 외국 소프트에어 한글화 편리, 전세계 모든 문자를 표현할 수 있음
- 기억공간이 많이 차지함



반응형

'Code' 카테고리의 다른 글

error log-2012/12  (0) 2012.12.22
Visual Studio 2010 사용 관련  (2) 2012.11.17
FFmpeg 소스 빌드  (0) 2012.08.29
WinDbg 와 VirtualPC를 이용한 커널 디버깅 방법  (0) 2012.08.21
Ajax  (0) 2012.08.19
Posted by codens