ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 문자 인코딩(Character Encoding)
    EDI 관련 기술 용어 2022. 7. 15. 11:00

     

    문자 인코딩 캐릭터 인코딩(Character Encoding) 또는 Text Encoding이라고 합니다.

     

    인코딩이 중요한 이유는 데이터를 어떻게 읽을 지 파싱(데이터를 분석하고 원하는 패턴이나 순서로 추출해 가공하는 것) 등의 경우에 호환성 문제가 발생할 수 있기 때문입니다.

     

    오늘은 부호화라고도 하는 문자 인코딩을 알아보도록 하겠습니다.

     


    문자 인코딩(Character Encoding)

     

    인코딩은 사람이 사용하는 문자를 컴퓨터가 이해할 수 있는 신호로 만드는 것을 말합니다.

    문자나 기호들의 집합을 컴퓨터에 저장하거나 통신을 하기 위해 부호로 바꾸기 때문에 부호화라고도 합니다.

     

    사람이 사용하는 문자를 컴퓨터에 표현하기 위해서 약속된 규칙에 따라 0과 1로 변환하게 되는데, 변환은 문자를 다른 문자 셋에 있는 코드 값으로 변환하는 방식으로 이루어집니다.

     

    다시 반대로 0과 1의 숫자로 저장된 바이너리 데이터(0과 1로 이루어진 데이터)를 문자로 바꾸는 것을 디코딩(Decoding)이라고 합니다.

    인코딩과 디코딩 할 때는 규칙에 따라 변환하는데, 여기서 사용하는 규칙을 캐릭터셋(Character Set)이라고 합니다.

     

     

    캐릭터셋(Character Set)

     

    캐릭터 셋은 문자집합이라고도 하는데, 국가별로 언어가 다르듯이 각 언어를 하나의 규격으로 표준화시켜 국가 또는 개인의 요구에 따라 사용할 수 있도록 만든 것입니다.

    캐릭터셋은 표현해야 할 문자와 특수문자를 정의하고 순서를 지정해 놓습니다.

    이러한 문자 집합을 부호화하여 사용하려는 것이 인코딩과 디코딩의 목적입니다.

    또 이러한 캐릭터셋을 행렬의 코드 형태로 표기한 것을 ‘코드화된 문자 집합(coded character set)’이라고 합니다.

     

    인터넷이 전 세계적으로 보급되면서, 표현해야할 문자가 증가되어 표준화의 필요성이 대두되었습니다.

    그래서 초기 표준 문자열 셋으로는 아스키(ASCII), 엡시딕(EBCDIC)에서 유니코드가 등장합니다.

     

     

    ASCII(American Standard Code for Information Interchange)

     

    현재 대부분의 인코딩의 기초가 되는 아스키(ASCII)는 American Standard Code for Information Interchange의 약자로 이름에서도 알 수 있듯이 미국에서 정의하고 있는 표준이기 때문에 영문 알파벳에 적합한 인코딩입니다.

    초창기 컴퓨터는 기계어만을 사용하였기 때문에, 개발의 편의성을 위해 문자를 코드화했고 그로 인해 아스키 코드가 탄생하게 되었습니다.

     

    8bit 단위(1byte)의 통신에서 7비트를 사용하여 2⁷(128, 0~127)개 부호를 표현할 수 있고, 나머지 1비트는 패리티 비트(Parity bit)로 통신 에러를 감지하고 검출하는 역할을 합니다.

     

    영문 알파벳 26자, 숫자, 기호, 특수문자 등 128자를 표현할 수 있었지만, 선문자와 비영어권 국가에서 사용하기에는 부족했기 때문에

    Extended ASCII인 ANSI가 나오게 됩니다.

    이로 인해 8비트로 확장되어, 나타낼 수 있는 문자의 수는 256가지로 늘어났고, 1byte를 사용하기 때문에 SBCS(Single-Byte Character Set)이라고 합니다.

     

     

    MBCS(Multi-Byte Character Set)

     

    이전의 캐릭터셋은 한국, 중국, 일본 등 문자 수가 많은 언어에는 적합하지 않아서 MBCS가 나오게 됩니다.

    여러 바이트를 통해서 문자를 표현하는 방식입니다.

    한글은 이 중 EUC-KR, CP949를 사용하고 있는데, CP949의 경우 MS-Window에서 한글 표현을 위해 채용했기 때문에 MS949라고 불리기도 합니다.

    하지만 국가간 다른 정의로 인해, 서로 다른 프로그램이나 문서간 호환성 문제가 발생하게 됩니다.

     

     

    유니코드(Unicode)

     

    출처 :  https://home.unicode.org/

     

    MBCS의 호환성 문제를 극복하기 위해, 전 세계 모든 문자가 일관되게 표현되고 다룰 수 있게 산업 표준인 유니코드가 개발되었습니다.

    유니코드는 각기 다른 인코딩 방식을 단일화하는 것을 목적으로 하고 있습니다.

     

    유니코드는 앞의 캐릭터셋과 다르게 단순한 맵핑을 위한 표만 있는 것이 아니라, 문자셋, 인코딩 방식, 문자처리 알고리즘 등으로 구성되어 있습니다.

    유니코드는 모든 문자들을 16bit(2byte)로 표현하므로, 최대 65,536자를 표현할 수 있습니다.

     

    유니코드 사이트에서 각 언어에 대한 유니코드를 확인할 수 있습니다.

     

    Unicode 14.0 Character Code Charts

    Unicode 14.0 Character Code Charts Scripts   |   Symbols & Punctuation   |   Name Index Find chart by hex code:           Help    Conventions    Terms of Use Notational Systems Braille Patterns Musical Symbols Ancient Greek Musical Nota

    www.unicode.org

     

     

     


    [참고 자료]

     

    문자 인코딩(인코딩)

    문자나 기호들의 집합을 컴퓨터에서 저장하거나 통신 목적으로 사용하기 위해 부호로 바꾸는 것으로, ‘부호화’라고도 한다. 이 인코딩된 문자 부호(character code)는 다시 디코딩(복호화)하여 본

    terms.naver.com


     

     

     

    'EDI 관련 기술 용어' 카테고리의 다른 글

    Base64  (0) 2022.07.27
    UTF-8, UTF-16, UTF-32, 한글 인코딩  (0) 2022.07.20
    AS2 작동방식  (0) 2022.06.30
    AS1, AS2, AS3, AS4  (0) 2022.06.03
    AS2 기능과 장점  (0) 2022.05.27

    댓글

Designed by CONNECT SERVICE