KR20110061680A - 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더 및 디코더와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체 - Google Patents

아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더 및 디코더와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체 Download PDF

Info

Publication number
KR20110061680A
KR20110061680A KR1020090118153A KR20090118153A KR20110061680A KR 20110061680 A KR20110061680 A KR 20110061680A KR 1020090118153 A KR1020090118153 A KR 1020090118153A KR 20090118153 A KR20090118153 A KR 20090118153A KR 20110061680 A KR20110061680 A KR 20110061680A
Authority
KR
South Korea
Prior art keywords
code
bit
bit stream
byte
hangul
Prior art date
Application number
KR1020090118153A
Other languages
English (en)
Other versions
KR101127063B1 (ko
Inventor
정현숙
임원기
구성모
박헌제
Original Assignee
국방과학연구소
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 국방과학연구소 filed Critical 국방과학연구소
Priority to KR1020090118153A priority Critical patent/KR101127063B1/ko
Publication of KR20110061680A publication Critical patent/KR20110061680A/ko
Application granted granted Critical
Publication of KR101127063B1 publication Critical patent/KR101127063B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)

Abstract

본 발명은 2-바이트 한글 완성형 코드를 이용하는 인코더에 관한 것이다. 입력된 텍스트를 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 코드 변환 모듈과, 상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력하는 8-비트 분해 모듈과, 상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력하는 7-비트 구성 모듈과, 상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하되, 산출 결과 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 0을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고, 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력하는 8-비트 구성 모듈을 포함하되, 상기 소정의 2-바이트 한글 완성형 코드는, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 것을 특징으로 하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더를 구성한다.
한글, 완성형, 코드, 코드값, 아스키, 인코더, 디코더, 비트, 바이트

Description

아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더 및 디코더와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체{COMPUTER READABLE MEDIUM RECORDING DATA STRUCTURE THEREON INCLUDING THE HANGUL CODE LINKED WITH ASCII, ENCODER AND DECODER USING HANGUL CODE LINKED WITH ASCII AND METHOD FOR ENCODING AND DCODING USINT THE HANGUL CODE LINKED WITH ASCII AND COMPUTER READABLE MEDIUM RECORDING PROGRAM FOR PERFORMING THE METHOD}
본 발명은 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 상기 한글 완성형 코드를 이용하는 인코더 및 디코더와, 이를 이용하는 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체에 관한 것으로서, 좀 더 상세하게는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더 및 디코더와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용 하는 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체에 관한 것이다.
종래의 표준 한글 완성형 코드(KS X 1001)는 대략 2300여자의 한글에 대해 각각 코드가 부여되어 있다. 표준 한글 완성형 코드는 조합형 코드와 달리 규정해야 할 글자수가 워낙 많아 글자당 2 바이트의 코드가 할당되어 있다. 한편, 아스키 코드는 미국에서 알파벳을 변환하기 위해 만든 일종의 조합형 코드인데, 도 1에 아스키 코드의 코드 변환표가 도시되어 있다. 도 1에서 보듯이 아스키 코드는 각 알파벳당 7-비트의 코드가 할당되어 있다.
이처럼 종래 16-비트 체계의 표준 한글 완성형 코드에 의한 데이터량은 7-비트 체계의 아스키 코드에 의한 데이터량에 비하여 상대적으로 방대하기 때문에, 무선 통신 환경에서는 통신기의 부하가 증가하고 데이터 전송 효율이 떨어진다는 문제점이 있다.
한편, 표준 한글 완성형 코드(KS X 1001)은 알파벳을 위한 2-바이트 코드를 별도로 규정하고 있다. 그래서, 표준 한글 완성형 코드를 이용하는 통신기와 아스키 코드를 이용하는 통신기 간에는 호환성이 없다. 특히, 미군과 함께 군 작전을 수행하는 한국군의 경우, 코드 간의 호환성 문제로 인하여 전술 자료의 송수신을 원활하게 수행할 수 없다는 문제점이 있다.
본 발명의 목적은 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체에 관한 것이다.
본 발명의 다른 목적은 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더를 제공하는 데 있다.
본 발명의 또 다른 목적은 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코더를 제공하는 데 있다.
본 발명의 또 다른 목적은 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법을 제공하는 데 있다.
본 발명의 또 다른 목적은 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 디코딩 방법을 제공하는 데 있다.
본 발명의 또 다른 목적은 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법을 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체를 제공하는 데 있다.
본 발명의 또 다른 목적은 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 디코딩 방법을 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체를 제공하는 데 있다.
상술한 본 발명의 목적을 달성하기 위한, 아스키 코드와 연동 가능한 2-바이 트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체는, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 2-바이트 한글 완성형 코드를 포함하는 데이터 구조가 기록되도록 구성될 수 있다. 여기에서, 아스키 코드를 더 포함하는 데이터 구조를 기록되도록 구성될 수 있다. 그리고 상기 2-바이트 한글 완성형 코드는, 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지고, 상기 제1 한글 코드 변환표는
Figure 112009074303437-PAT00001
이고, 상기 코드 변환표 2는
Figure 112009074303437-PAT00002
이고, 상기 코드 변환표 3은
Figure 112009074303437-PAT00003
이고, 상기 코드 변환표 4는
Figure 112009074303437-PAT00004
으로 구성될 수 있다.
상술한 본 발명의 다른 목적을 달성하기 위한, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더는, 입력된 텍스트를 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 코드 변환 모듈과, 상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력하는 8-비트 분해 모듈과, 상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력하는 7-비트 구성 모듈과, 상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하되, 산출 결과 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 0을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고, 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력하는 8-비트 구성 모듈을 포함하되, 상기 소정의 2-바이트 한글 완성형 코드는, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되도록 구성될 수 있다. 여기에서, 상기 코드 변환 모듈은, 상기 입력된 텍스트에 알파벳(alphabet)이 포함된 경우에는, 포함된 알파벳을 아스키(ASCII) 코드에 의한 코드값으로 변환하도록 구성될 수 있다. 이때, 상기 코드 변환 모듈은, 상기 텍스트가 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 이미 변환되어 입력된 경우, 입력된 코드값을 상기 소정의 2-바이트 한글 완성형 코드 및 아스키 코드에 의한 코드값으로 변환하여 출력하도록 구성될 수 있다. 그리고 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
상술한 본 발명의 또 다른 목적을 달성하기 위한, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코더는, 입력된 비트 스트림을 8-비트 단위의 비트 스트림으로 분해하여 출력하는 8-비트 분해 모듈과, 상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하되, 산출 결과 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하위 비트 0을 제거하여 7-비트 단위의 비트 스트림을 출력하고, 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않고 7-비트 단위의 비트 스트림으로 변환하여 출력하는 7-비트 복원 모듈과, 상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 0을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력하는 8-비트 복원 모듈과, 상기 출력된 8-비트 단위의 비트 스트림을 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하고, 변환된 코드값에 해당하는 텍스트를 출력하는 코드 복원 모듈과, 상기 소정의 2-바이트 한글 완성형 코드는, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성될 수 있다. 여기에서, 상기 코드 복원 모듈은, 상기 8-비트 복원 모듈에서 출력된 8-비트 단위의 비트 스트림을 상기 소정의 2-바이트 한글 완 성형 코드 또는 아스키 코드 중 적어도 어느 하나 이상에 의한 코드값으로 출력 가능하도록 구성될 수 있다. 그리고 상기 코드 복원 모듈은, 상기 변환된 소정의 2-바이트 한글 완성형 코드에 의한 코드값을 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 출력 가능하도록 구성될 수 있다. 한편, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
상술한 본 발명의 또 다른 목적을 달성하기 위한, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법은, 텍스트를 입력받는 단계와, 상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와, 상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와, 상기 산출된 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 0을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고, 상기 산출된 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계를 포함하도록 구성될 수 있다. 이때, 상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바 이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 입력받는 텍스트에 알파벳이 포함된 경우에는, 포함된 알파벳을 아스키(ASCII) 코드에 의한 코드값으로 변환하여 출력하도록 구성될 수 있다. 그리고 상기 입력받는 텍스트를 2 바이트 중 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 입력받는 텍스트가 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 이미 변환되어 입력된 경우, 입력된 코드값을 상기 소정의 2-바이트 한글 완성형 코드 및 아스키 코드에 따라 변환하여 출력하도록 구성될 수 있다. 한편, 상기 텍스트를 입력받는 단계 이후, 상기 입력받는 텍스트를 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이전에, 상기 입력받는 텍스트의 데이터량이 미리 설정된 최대의 인코딩 데이터보다 적은 경우에는 텍스트 종료 처리(end of text)하는 단계를 더 포함하도록 구성될 수 있다. 이때, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
상술한 본 발명의 또 다른 목적을 달성하기 위한, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 디코딩 방법은, 비트 스트림을 입력받는 단계와, 상기 입력받는 비트 스트림을 8-비트 단위의 비트 스트림으로 분해하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와, 상기 산출된 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하 위 비트 0을 제거하여 7-비트 단위의 비트 스트림을 출력하고, 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않고 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 0을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와, 상기 출력된 코드값에 해당하는 텍스트 또는 상기 출력된 코드값을 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 변환하여 출력하는 단계를 포함하도록 구성될 수 있다. 여기에서, 상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 출력된 8-비트 단위의 비트 스트림을 상기 소정의 2-바이트 한글 완성형 코드 또는 아스키 코드 중 적어도 어느 하나 이상에 의한 코드값으로 출력 가능하도록 구성될 수 있다. 그리고 상기 출력된 8-비트 단위의 비트 스트림을, 2 바이트 중 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이후, 상기 출력된 코드값에 해당하는 텍스트를 출력하는 단계 이전에, 상기 출력된 코드값에 텍스트 종료(end of text) 문자가 있는 경우, 상기 텍스트 종료 문자를 제거하는 단계를 더 포함하도록 구성될 수 있다. 한편, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
상술한 본 발명의 또 다른 목적을 달성하기 위한, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법을 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체에서, 상기 프로그램은, 텍스트를 입력받는 단계와, 상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와, 상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와, 상기 산출된 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 0을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고, 상기 산출된 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계를 실행시키도록 구성될 수 있다. 이때, 상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 입력받는 텍스트에 알파벳이 포함된 경우에는, 포함된 알파벳을 아스키(ASCII) 코드에 의한 코드값으로 변환하여 출력하도록 구성될 수 있다. 그리고 상기 입력받는 텍스트를 2 바이트 중 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 입력받는 텍스트가 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 이미 변환되어 입력된 경우, 입력된 코드값을 상기 소정의 2-바이트 한글 완성형 코드 및 아스키 코드에 따라 변환하여 출력하도록 구성될 수 있다. 한편, 상기 텍스트를 입력받는 단계 이후, 상기 입력받는 텍스트를 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이전에, 상기 입력받는 텍스트의 데이터량이 미리 설정된 최대의 인코딩 데이터보다 적은 경우에는 텍스트 종료 처리(end of text)하는 단계를 더 포함하도록 구성될 수 있다. 이때, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
상술한 본 발명의 또 다른 목적을 달성하기 위한, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 디코딩 방법을 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체에서, 상기 프로그램은 비트 스트림을 입력받는 단계와, 상기 입력받는 비트 스트림을 8-비트 단위의 비트 스트림으로 분해하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와, 상기 산출된 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하위 비트 0을 제거하여 7-비트 단위의 비트 스트림을 출력하고, 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않고 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 0을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와, 상기 출력된 코드값에 해당하는 텍스트 또는 상기 출력된 코드값을 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 변환하여 출력하는 단계를 실행시키도록 구성될 수 있다. 여기에서, 상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 출력된 8-비트 단위의 비트 스트림을 상기 소정의 2-바이트 한글 완성형 코드 또는 아스키 코드 중 적어도 어느 하나 이상에 의한 코드값으로 출력 가능하도록 구성될 수 있다. 그리고 상기 출력된 8-비트 단위의 비트 스트림을, 2 바이트 중 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이후, 상기 출력된 코드값에 해당하는 텍스트를 출력하는 단계 이전에, 상기 출력된 코드값에 종료 처리(end of text) 문자가 있는 경우, 상기 종료 처리 문자를 제거하는 단계를 더 포함하도록 구성될 수 있다. 한편, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
상기와 같은 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함 하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더 및 디코더와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체에 따르면, 상기 2-바이트 한글 완성형 코드에 의해 한글 문자를 14-비트의 코드값으로 변환하여 송수신할 수 있으므로, 데이터량이 줄어들어 통신기의 부하가 감소하는 효과가 있다. 아울러 상기 2-바이트 한글 완성형 코드는 7-비트 체계의 아스키 코드와 병용할 수 있으므로, 아스키 코드 체계의 자료를 이용하는 통신기와도 원활하게 상호 연동될 수 있다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명 명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일 치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명의 구성을 간략히 설명한다.
본 발명에 따른, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체는, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 2-바이트 한글 완성형 코드를 포함하는 데이터 구조가 기록되도록 구성될 수 있다. 여기에서, 아스키 코드를 더 포함하는 데이터 구조를 기록되도록 구성될 수 있다. 그리고 상기 2-바이트 한글 완성형 코드는, 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지고, 상기 제1 한글 코드 변환표는
Figure 112009074303437-PAT00005
이고, 상기 코드 변환표 2는
Figure 112009074303437-PAT00006
이고, 상기 코드 변환표 3은
Figure 112009074303437-PAT00007
이고, 상기 코드 변환표 4는
Figure 112009074303437-PAT00008
으로 구성될 수 있다.
본 발명에 따른, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더는, 입력된 텍스트를 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 코드 변환 모듈과, 상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력하는 8-비트 분해 모듈과, 상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력하는 7-비트 구성 모듈과, 상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하되, 산출 결과 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 0을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고, 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력하는 8-비트 구성 모듈을 포함하되, 상기 소정의 2-바이트 한글 완성형 코드는, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되도록 구성될 수 있다. 여기에서, 상기 코드 변환 모듈은, 상기 입력된 텍스트에 알파벳(alphabet)이 포함된 경우에는, 포함된 알파벳을 아스키(ASCII) 코드에 의한 코드값으로 변환하도록 구성될 수 있다. 이때, 상기 코드 변환 모듈은, 상기 텍스트가 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 이미 변환되어 입력된 경우, 입력된 코드값을 상기 소정의 2-바이트 한글 완성형 코드 및 아스키 코드에 의한 코드값으로 변환하여 출력하도록 구성될 수 있다. 그리고 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
본 발명에 따른, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코더는, 입력된 비트 스트림을 8-비트 단위의 비트 스트림으로 분해하여 출력하는 8-비트 분해 모듈과, 상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하되, 산출 결과 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하위 비트 0을 제거하여 7-비트 단위의 비트 스트림을 출력하고, 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않고 7-비트 단위의 비트 스트림으로 변환하여 출력하는 7-비트 복원 모듈과, 상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 0을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력하는 8-비트 복원 모듈과, 상기 출력된 8-비트 단위의 비트 스트림을 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하고, 변환된 코드값에 해당하는 텍스트를 출력하는 코드 복원 모듈과, 상기 소정의 2-바이트 한글 완성형 코드는, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성될 수 있다. 여기에서, 상기 코드 복원 모듈은, 상기 8-비트 복원 모듈에서 출력된 8-비트 단위의 비트 스트림을 상기 소정의 2-바이트 한글 완성형 코드 또는 아스키 코드 중 적 어도 어느 하나 이상에 의한 코드값으로 출력 가능하도록 구성될 수 있다. 그리고 상기 코드 복원 모듈은, 상기 변환된 소정의 2-바이트 한글 완성형 코드에 의한 코드값을 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 출력 가능하도록 구성될 수 있다. 한편, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
본 발명에 따른, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법은, 텍스트를 입력받는 단계와, 상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와, 상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와, 상기 산출된 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 0을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고, 상기 산출된 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계를 포함하도록 구성될 수 있다. 이때, 상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 입력받는 텍스트에 알파벳이 포함된 경 우에는, 포함된 알파벳을 아스키(ASCII) 코드에 의한 코드값으로 변환하여 출력하도록 구성될 수 있다. 그리고 상기 입력받는 텍스트를 2 바이트 중 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 입력받는 텍스트가 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 이미 변환되어 입력된 경우, 입력된 코드값을 상기 소정의 2-바이트 한글 완성형 코드 및 아스키 코드에 따라 변환하여 출력하도록 구성될 수 있다. 한편, 상기 텍스트를 입력받는 단계 이후, 상기 입력받는 텍스트를 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이전에, 상기 입력받는 텍스트의 데이터량이 미리 설정된 최대의 인코딩 데이터보다 적은 경우에는 텍스트 종료 처리(end of text)하는 단계를 더 포함하도록 구성될 수 있다. 이때, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
본 발명에 따른, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 디코딩 방법은, 비트 스트림을 입력받는 단계와, 상기 입력받는 비트 스트림을 8-비트 단위의 비트 스트림으로 분해하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와, 상기 산출된 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하위 비트 0을 제거하여 7-비트 단위의 비트 스트림을 출력하고, 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않 고 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 0을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와, 상기 출력된 코드값에 해당하는 텍스트 또는 상기 출력된 코드값을 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 변환하여 출력하는 단계를 포함하도록 구성될 수 있다. 여기에서, 상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 출력된 8-비트 단위의 비트 스트림을 상기 소정의 2-바이트 한글 완성형 코드 또는 아스키 코드 중 적어도 어느 하나 이상에 의한 코드값으로 출력 가능하도록 구성될 수 있다. 그리고 상기 출력된 8-비트 단위의 비트 스트림을, 2 바이트 중 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이후, 상기 출력된 코드값에 해당하는 텍스트를 출력하는 단계 이전에, 상기 출력된 코드값에 텍스트 종료(end of text) 문자가 있는 경우, 상기 텍스트 종료 문자를 제거하는 단계를 더 포함하도록 구성될 수 있다. 한편, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
본 발명에 따른, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법을 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체에서, 상기 프로그램은, 텍스트를 입력받는 단계와, 상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와, 상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와, 상기 산출된 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 0을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고, 상기 산출된 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계를 실행시키도록 구성될 수 있다. 이때, 상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 입력받는 텍스트에 알파벳이 포함된 경우에는, 포함된 알파벳을 아스키(ASCII) 코드에 의한 코드값으로 변환하여 출력하도록 구성될 수 있다. 그리고 상기 입력받는 텍스트를 2 바이트 중 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 입력받는 텍 스트가 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 이미 변환되어 입력된 경우, 입력된 코드값을 상기 소정의 2-바이트 한글 완성형 코드 및 아스키 코드에 따라 변환하여 출력하도록 구성될 수 있다. 한편, 상기 텍스트를 입력받는 단계 이후, 상기 입력받는 텍스트를 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이전에, 상기 입력받는 텍스트의 데이터량이 미리 설정된 최대의 인코딩 데이터보다 적은 경우에는 텍스트 종료 처리(end of text)하는 단계를 더 포함하도록 구성될 수 있다. 이때, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
본 발명에 따른, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 디코딩 방법을 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체에서, 상기 프로그램은 비트 스트림을 입력받는 단계와, 상기 입력받는 비트 스트림을 8-비트 단위의 비트 스트림으로 분해하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와, 상기 산출된 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하위 비트 0을 제거하여 7-비트 단위의 비트 스트림을 출력하고, 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않고 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 0을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와, 상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스 키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와, 상기 출력된 코드값에 해당하는 텍스트 또는 상기 출력된 코드값을 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 변환하여 출력하는 단계를 실행시키도록 구성될 수 있다. 여기에서, 상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는, 상기 출력된 8-비트 단위의 비트 스트림을 상기 소정의 2-바이트 한글 완성형 코드 또는 아스키 코드 중 적어도 어느 하나 이상에 의한 코드값으로 출력 가능하도록 구성될 수 있다. 그리고 상기 출력된 8-비트 단위의 비트 스트림을, 2 바이트 중 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이후, 상기 출력된 코드값에 해당하는 텍스트를 출력하는 단계 이전에, 상기 출력된 코드값에 텍스트 종료 문자(end of text)가 있는경우, 상기 텍스트 종료 문자를 제거하는 단계를 더 포함하도록 구성될 수 있다. 한편, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 2 내지 도 5는 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드의 한글 코드 변환표이다.
도 2 내지 도 5를 참조하면, 본 발명의 2-바이트 한글 완성형 코드는 대략 2300 여 한글에 대한 완성형 코드로서, 한 글자당 2-바이트의 코드로 구성된다. 도 2 내지 도 5에서 세로와 가로의 숫자는 16진 코드로서, 세로와 가로의 숫자를 병합하여 하나의 코드가 된다. 즉, 한글 '가'의 2-바이트 한글 완성형 코드는 0x0101이고, '나'의 2-바이트 한글 완성형 코드는 0x040A이고, '다'의 2-바이트 한글 완성형 코드는 0x0539임을 알 수 있다. 물론, 도 2 내지 도 5의 한글 코드 변환표에 더하여 물음표나 마침표 등의 텍스트 부호를 표현하기 위한 코드가 더 부가될 수 있다. 그런데, 도 2 내지 도 5에 도시된 본 발명의 2-바이트 한글 완성형 코드는 하나의 예시에 불과하다. 본 발명의 2-바이트 한글 완성형 코드는 다음의 특징을 가지는 모든 코드를 포괄한다.
본 발명의 2-바이트 한글 완성형 코드는 2 바이트로 구성되며, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 것을 특징으로 한다. 이로 인해 본 발명의 2-바이트 한글 완성형 코드는 알파벳을 표현하기 위한 7-비트의 아스키 코드와 연동될 수 있음을 특징으로 한다.
도 2 내지 도 5에서 보듯이, 본 발명의 한글 완성형 코드는 완성형 한글 한 자(字)당 2-바이트의 코드가 할당된다. 이때, 2-바이트의 상위 바이트와 하위 바이트를 나누어 살펴보면, 상위 바이트가 도 1의 아스키 코드(7-비트)와 중복되지 않는 코드로 할당되어 있다. 먼저, 도 1의 아스키 코드는 0x20 내지 0x7E의 코드(십진수로는 32 내지 126에 해당하는 코드)로 구성되며 0x00 내지 0x1F의 코드(십 진수로는 0 내지 31에 해당)는 할당되어 있지 않다. 본 발명의 2-바이트 한글 완성형 코드는 아스키 코드에서 규정되지 않은 0x00 내지 0x1F(십진수 0 내지 31)의 코드를 활용하도록 구성됨으로써, 본 발명의 2-바이트 한글 완성형 코드와 아스키 코드가 서로 중복되지 않도록 하는 것을 기본 전제로 한다. 즉, 본 발명의 2 바이트로 구성된 한글 완성형 코드 중 상위 바이트를 0x00 내지 0x1F의 코드(십진수로는 0 내지 31) 중에서 채택하도록 구성될 수 있다. 이와 같이 2-바이트 한글 완성형 코드를 규정하는 것은 한글을 위한 본 발명의 2-바이트 한글 완성형 코드와 알파벳을 위한 아스키 코드가 병용될 수 있는 전제가 된다.
다시 도 2 내지 도 5를 참조하면, 2-바이트 한글 완성형 코드는 상위 바이트가 0x01 내지 0x08, 0x0E 내지 0x1F(십진수로는 0 내지 8, 14 내지 31)가 구성되어 있음을 알 수 있다. 즉, 아스키 코드에서는 사용되지 않는 코드로 상위 바이트가 구성되어 있다. 상위 바이트를 0x09 내지 0x0D(십진수로는 9 내지 13)로 구성하는 경우에는, 각종 텍스트 부호를 해당 코드에 할당할 수 있다.
한편, 본 발명에 따른 2-바이트 한글 완성형 코드의 데이터 구조는 컴퓨터로 읽을 수 있는 매체에 기록될 수 있다. 컴퓨터로 읽을 수 있는 매체란 각종 메모리, CD-ROM 등의 저장 매체를 의미한다. 본 발명의 컴퓨터로 읽을 수 있는 매체에는, 2 바이트로 구성되며 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 2-바이트 한글 완성형 코드를 포함하는 데이터 구조가 기록될 수 있다.
이때, 상기 본 발명의 컴퓨터로 읽을 수 있는 매체에는 아스키 코드를 더 포 함하는 데이터 구조가 기록될 수 있다.
한편, 상기 본 발명의 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체에서, 2-바이트 한글 완성형 코드는 도 2 내지 도 5의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
한편, 앞서 설명한 바와 같이 본 발명의 2-바이트 한글 완성형 코드는 2 바이트(16비트)로 구성되는 반면, 아스키 코드는 7비트로 구성된다. 이때, 텍스트가 국문인 경우에는 본 발명의 2-바이트 한글 완성형 코드를 이용하여 인코딩 및 디코딩을 하고, 텍스트가 영문인 경우에는 아스키 코드를 이용하여 인코딩 및 디코딩을 하면 되므로, 아무런 문제가 없다. 그러나, 국문과 영문이 혼합된 텍스트의 경우에는, 인코딩 및 디코딩 시 양 코드 길이의 불일치로 인한 문제를 해결할 필요가 있다. 본 발명에서는 코드 길이가 긴 2-바이트 한글 완성형 코드를 14-비트의 코드로 변환함으로써, 7-비트의 아스키 코드와 병용할 수 있도록 하고, 동시에 송수신할 데이터량을 줄일 수 있도록 한다. 이하에서는, 도 6 내지 도 9를 참조하여, 본 발명에 의한 인코더 및 디코더, 이를 이용하는 인코딩 방법 및 디코딩 방법을 설명한다.
도 6은 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더의 블록 구성도이다.
도 6을 참조하면, 본 발명의 인코더(100)는 코드 변환 모듈(110), 8-비트 분해 모듈(120), 7-비트 구성 모듈(130) 및 8-비트 구성 모듈(140)을 포함하도록 구성될 수 있다.
여기에서, 인코더(100)는 유선 또는 무선 송신기 내에 구현될 수 있다. 상기 인코더(100)는 국문, 영문 또는 국문과 영문이 혼합된 텍스트를 인코딩할 수 있도록 구성된다. 인코더(100)는 국문의 경우 본 발명의 2-바이트 한글 완성형 코드를 이용하고 영문의 경우 아스키 코드를 이용한다. 인코더(100)는 2-바이트 한글 완성형 코드를 이용하여 변환된 2 바이트(16 비트)의 코드값을 14 비트로 다시 변환함으로써, 송수신하고자 하는 데이터량을 줄임과 동시에 7 비트의 아스키 코드와 병용되도록 구성될 수 있다. 이하, 세부적인 구성에 대하여 설명한다.
코드 변환 모듈(110)은 입력된 텍스트를 소정의 2-바이트 한글 완성형 코드에 의하 코드값으로 변환하여 출력하도록 구성될 수 있다. 이때, 상기 소정의 2-바이트 한글 완성형 코드는, 상위 바이트가 아스키 코드에서는 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 것을 특징으로 한다. 예시적으로, 상기 소정의 2-바이트 한글 완성형 코드는 도 2 내지 도 5의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 의해 정해지도록 구성될 수 있다.
한편, 코드 변환 모듈(110)은 상기 입력된 텍스트에 알파벳이 포함된 경우에는, 포함된 알파벳을 아스키 코드에 의한 코드값으로 변환하도록 구성될 수 있다. 즉, 본 발명은 2-바이트 한글 완성형 코드와 아스키 코드를 병용하여 이용하도록 구성될 수 있다. 예를 들어 설명하면, "가나다ABC"의 텍스트는 "0x0101, 0x040A, 0x0539, 0x41, 0x42, 0x43"의 코드값으로 변환된다.
그리고 상기 텍스트가 기존의 다른 송신기 등에서 이미 표준 한글 완성형 코드(KS X1001)에 의한 코드값으로 변환되어 입력된 경우, 인코더(100)는 입력된 코 드값을 상기 소정의 2-바이트 한글 완성 코드 및 아스키 코드에 의한 코드값으로 변환하여 출력하도록 구성될수 있다. 예를 들어 설명하면, 텍스트 "가나다ABC"가 한글 완성형 코드(KS X 1001)에 따라 변환된 코드값 "0xBOA1, OxB3AA, OxB4D9, Ox41 Ox42, 0x43"은 "0x0101, 0x040A, 0x0539, 0x41, 0x42, 0x43"으로 변환된다. 이에 따라, 기존의 송신기에 본 발명에 의한 인코더(100)를 추가적으로 구성하여 본 발명에 의한 2-바이트 한글 완성형 코드의 변환을 하도록 구성될 수 있다.
다른 한편, 상기 설명한 2-바이트 한글 완성형 코드, 아스키 코드, 표준 한글 완성형 코드(KS X 1001)의 데이터 구조는 소정의 메모리(미도시)에 저장되도록 구성될 수 있다. 도 6에서는 이러한 메모리가 코드 변환 모듈(110) 내에 구현된 것으로 상정한다.
다음으로, 8-비트 분해 모듈(120)은 상기 코드 변환 모듈(110)에서 출력된 코드값을 8-비트 단위의 비트 스트림으로 변환하여 출력하도록 구성될 수 있다. 즉, 16진 코드값을 8비트 단위의 2진 코드로 분해하는데, 예를 들어 앞서 변환된 코드값 "0xBOA1, OxB3AA, OxB4D9, Ox41 Ox42, 0x43"는 "00000001 00000001 00000100 00001010 00000101 00111001 01000001 01000010 01000011"의 비트 스트림으로 변환된다. 이때, 텍스트 "ABC"는 아스키 코드에 의해 7 비트로 변환되겠지만, 최상위 비트(most significatn bit, MSB) '0'을 추가함으로써 일률적으로 8비트 단위의 비트 스트림으로 변환한다.
다음으로, 7-비트 구성 모듈(130)은 상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력하도 록 구성될 수 있다. 앞서 출력된 8-비트 단위의 비트 스트림 "00000001 00000001 00000100 00001010 00000101 00111001 01000001 01000010 01000011"은 7-비트 단위의 비트 스트림 "0000001 0000001 0000100 0001010 0000101 0111001 1000001 1000010 1000011"으로 변환된다.
7-비트 단위의 비트 스트림으로 구성하는 이유는 다음과 같다. 2-바이트 한글 완성형 코드에 의한 16 비트의 코드값에서 2개의 최상위 비트가 제거되면 14 비트의 코드값으로 변환되는데, 14 비트의 코드값은 7-비트 단위로 분해될 수 있으므로 아스키 코드에 의한 7 비트의 코드값과 동일한 포맷을 갖게 되기 때문이다. 즉, 2-바이트 한글 완성형 코드와 아스키 코드는 병용될 수 있게 된다.
이 경우, 아스키 코드에 의한 비트 스트림의 경우에는 8-비트 분해 모듈(120)에서 임의로 추가한 최상위 비트 '0'을 다시 제거하는 것이고, 2-바이트 한글 완성형 코드에 의한 비트 스트림의 경우에도 모든 비트 스트림의 최상위 비트가 '0'이므로 제거하여도 포함된 정보의 손실은 없다. 이에, 8-비트 단위의 비트 스트림이 7-비트 단위의 비트 스트림으로 변환되어 송수신 데이터량이 줄어들게 된다. 이는 송수신기의 부하 감소를 의미한다.
다음으로, 8-비트 구성 모듈(140)은 상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하되, 산출 결과 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 '0'을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고, 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력하도록 구성될 수 있다.
예를 들어, 앞서 7-비트 구성 모듈(130)에서 출력된 7-비트 단위의 비트 스트림 "0000001 0000001 0000100 0001010 0000101 0111001 1000001 1000010 1000011"의 총 비트수는 63이다. 이 경우, 총 비트수 63이 8의 배수가 아니기 때문에 상기 7-비트 단위의 비트 스트림에 최하위 비트(lesat significant bit, LSB) '0'을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림 "00000010 00000010 00001000 00010100 00001010 01110010 10000010 10000100 10000110"을 출력한다. 그리고 7-비트 단위의 비트 스트림이 "0000001 0000001 0000100 0001010 0000101 0111001 1000001 1000010"인 경우, 총 비트수가 56이 되고 이는 8의 배수이다. 그래서 패딩 처리없이 8-비트 단위로 재정렬한 비트 스트림 "00000010 00000100 00100000 10100000 10101110 01100000 11000010"을 출력한다.
이처럼 7-비트 단위로 구성한 비트 스트림을 8-비트 단위로 재구성하는 것은 송신기를 통해 8-비트(1-바이트) 단위의 비트 스트림을 송신하기 위한 것이다. 8-비트 구성 모듈(140)에서 출력된 8-비트 단위의 비트 스트림은 RF 처리 등을 통해 수신기로 송신될 수 있다.
도 7은 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코더의 블록 구성도이다.
도 7을 참조하면, 본 발명의 디코더(200)는 8-비트 분해 모듈(210), 7-비트 복원 모듈(220), 8-비트 복원 모듈(230) 및 코드 복원 모듈(240)을 포함하도록 구성될 수 있다.
여기에서, 디코더(200)는 상기 인코더(100)에 의해 인코딩된 비트 스트림을 수신하여 디코딩하거나, 미군이 사용하는 통신기로부터 아스키 코드에 의해 인코딩된 비트 스트림을 수신하여 디코딩하기 위한 구성이다. 디코더(200)는 유선 또는 무선 수신기 내에 구현될 수 있다. 이하, 세부적인 구성에 대하여 설명한다.
8-비트 분해 모듈(210)은 입력된 비트 스트림을 8-비트(1-바이트) 단위의 비트 스트림으로 분해하여 출력하도록 구성될 수 있다. 이러한 비트 스트림은 본 발명에 의한 2-바이트 한글 완성형 코드 또는 아스키 코드로부터 변환된 비트 스트림이다.
다음으로, 7-비트 복원 모듈(220)은 상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하되, 산출 결과 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하위 비트 0을 제거하여 7-비트 단위의 비트 스트림을 출력하고, 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않고 7-비트 단위의 비트 스트림으로 변환하여 출력하도록 구성될 수 있다.
예를 들어 설명하면, 상기 출력된 8-비트 단위의 비트 스트림이 "00000010 00000010 00001000 00010100 00001010 01110010 10000010 10000100 10000110"인 경우, 총 비트수는 72이므로 7의 배수가 아니다. 그러므로, 최하위 비트 '0'을 제거하여 7-비트 단위의 비트 스트림 "0000001 0000001 0000100 0001010 0000101 0111001 1000001 1000010 1000011"을 출력한다. 이때, 상기 출력된 8-비트 단위의 비트 스트림은 인코더(100)의 8-비트 구성 모듈(140)에서 패딩 처리가 되어 송신된 경우이다. 그리고 상기 출력된 8-비트 단위의 비트 스트림이 "00000010 00000100 00100000 10100000 10101110 01100000 11000010"인 경우, 총 비트수는 56이 되고 이는 7의 배수이다. 그러므로, 최하위 비트의 제거없이 7-비트 단위로 재정렬한 비트 스트림 "0000001 0000001 0000100 0001010 0000101 0111001 1000001 1000010"을 출력한다. 이때, 상기 출력된 8-비트 단위의 비트 스트림은 인코더(100)의 8-비트 구성 모듈(140)에서 패딩 처리 없이 송신된 경우가 될 것이다.
상기 설명한 바와 같이, 7-비트 복원 모듈(220)은 인코더(100)의 8-비트 구성 모듈(140)에서 패딩 처리를 통해 8-비트 단위로 재구성한 비트 스트림을 코드에 대한 정보만을 갖고 있는 7-비트 단위의 비트 스트림으로 복원한다.
다음으로, 8-비트 복원 모듈(230)은 상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 '0'을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력하도록 구성될 수 있다.
예를 들어 설명하면, 상기 출력된 7-비트 단위의 비트 스트림이 "0000001 0000001 0000100 0001010 0000101 0111001 1000001 1000010 1000011"인 경우, 최상위 비트 '0'이 추가됨으로써 8-비트 단위의 비트 스트림 "00000001 00000001 00000100 00001010 00000101 00111001 01000001 01000010 01000011"이 출력된다. 그리고 상기 출력된 7-비트 단위의 비트 스트림이 "0000001 0000001 0000100 0001010 0000101 0111001 1000001 1000010"인 경우에도, 최상위 비트 '0'이 추가됨으로써 8-비트 단위의 비트 스트림 "00000001 00000001 00000100 00001010 00000101 00111001 01000001 01000010"이 출력된다.
상기 설명한 바와 같이 8-비트 복원 모듈(230)은 인코더(100)의 7-비트 구성 모듈(130)에서 임의로 제거된 최상위 비트 '0'을 다시 추가하여 8-비트 단위의 비트 스트림으로 복원한다.
다음으로, 코드 복원 모듈(240)은 상기 출력된 8-비트 단위의 비트 스트림을 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하고, 변환된 코드값에 해당하는 텍스트를 출력하도록 구성될 수 있다. 여기에서, 상기 소정의 2-바이트 한글 완성형 코드는, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되도록 구성될 수 있다. 이는 인코더(100)에서 인코딩 시 이용한 2-바이트 한글 완성형 코드와 동일한 2-바이트 한글 완성형 코드이어야함은 두말 할 나위없다. 한편, 상기 소정의 2-바이트 한글 완성형 코드는 도 2 내지 도 5에 도시된 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다.
그리고 코드 복원 모듈(240)은 상기 2-바이트 한글 완성형 코드에 의한 코드값의 복원뿐만 아니라 아스키 코드에 의한 코드값의 복원도 가능하도록 구성될 수 있다. 물론, 영문과 국문이 혼합된 텍스트가 수신된 경우에는, 코드 복원 모듈(240)은 상기 8-비트 복원 모듈(230)에서 출력된 8-비트 단위의 비트 스트림을 상기 소정의 2-바이트 한글 완성형 코드 또는 아스키 코드 중 적어도 어느 하나 이상에 의한 코드값으로 출력하도록 구성될 수 있다.
예를 들어, 8-비트 복원 모듈(230)에서 출력된 8-비트 단위의 비트 스트림이 "00000001 00000001 00000100 00001010 00000101 00111001 01000001 01000010 01000011"인 경우, 16진 코드값으로 변환하면 "0x0101, 0x040A, 0x0539, 0x41, 0x42, 0x43"이 된다. 변환된 코드값을 도 2내지 도 5의 2-바이트 한글 완성형 코드 및 아스키 코드를 이용하여 텍스트 복원하면 "가나다ABC"가 출력된다. 그리고 8-비트 복원 모듈(230)에서 출력된 8-비트 단위의 비트 스트림이 "00000001 00000001 00000100 00001010 00000101 00111001 01000001 01000010"인 경우, 16진 코드값으로 변환하면 "0x0101, 0x040A, 0x0539, 0x41, 0x42이 된다. 변환된 코드값을 도 2내지 도 5의 2-바이트 한글 완성형 코드 및 아스키 코드를 이용하여 텍스트 복원하면 "가나다AB"가 출력된다.
그런데, 코드 복원 모듈(240)은 상기 변환된 16진 코드값을 다시 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 변환하여 출력하도록 구성될 수 있다. 본 발명의 2-바이트 한글 완성형 코드는 특히 무선 환경에서의 송수신 효율을 높이고, 미군의 아스키 코드와의 상호 연동을 목적으로 하기 때문에, 일반적으로 많이 이용되는 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 변환하여 소정 애플리케이션에 제공하게끔 하는 것이다. 이처럼 구현된 본 발명의 인코더(100)나 디코더(200)가 기존의 송수신기에 부가되는 경우, 기존의 송수신기를 그대로 활용할 수 있으므로 훨씬 유용할 수 있다.
상기 설명한 2-바이트 한글 완성형 코드, 아스키 코드, 표준 한글 완성형 코드(KS X 1001)의 데이터 구조는 소정의 메모리(미도시)에 저장되도록 구성될 수 있다. 도 7에서는 이러한 메모리가 코드 복원 모듈(240) 내에 구현된 것으로 상정한다.
결국, 본 발명의 2-바이트 한글 완성형 코드를 이용하는 인코더(100) 및 디코더(200)에 의해 송신 데이터량을 줄여 송신기의 부하를 줄이고, 한국군의 통신기가 아스키 코드에 의한 영문 텍스트를 이용하는 미군의 통신기와 상호 연동할 수 있다.
도 8은 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코딩 방법의 흐름도이다.
여기에서, 상기 인코딩 방법은 본 발명의 인코더(100)에서 구현될 수 있다. 이하, 도 8을 참조하여 각 단계를 세부적으로 설명한다.
도 8을 참조하면, 먼저 코드 변환 모듈(110)이 텍스트를 입력받는다(S110). 이때, 입력받는 텍스트는 국문이거나 영문과 같이 알파벳으로 작성된 텍스트가 될 수 있다.
코드 변환 모듈(110)은 상기 입력받는 텍스트의 데이터량이 미리 설정된 최대의 인코딩 데이터량 보다 적은지를 판단한다(S120). 이때, 텍스트의 데이터량이 미리 설정된 최대치의 인코딩 데이터량인 경우에는 0x7F의 코드를 추가하여 텍스트 종료 처리(end of text)를 한다(S125).
다음으로, 코드 변환 모듈(110)은 상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력한다(S130). 여기서, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다. 그리고 상기 입력받은 텍 스트에 알파벳이 포함된 경우에는, 상기 입력받는 텍스트에 알파벳이 포함된 경우에는, 포함된 알파벳을 아스키(ASCII) 코드에 의한 코드값으로 변환하여 출력되도록 구성될 수 있다. 그리고 상기 입력받는 텍스트가 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 이미 변환되어 입력된 경우라면, 입력된 코드값을 상기 소정의 2-바이트 한글 완성형 코드 및 아스키 코드에 따라 변환하여 출력하도록 구성될 수 있다.
다음으로, 8-비트 분해 모듈(120)은 상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력한다(S140).
그리고 나서, 7-비트 구성 모듈(130)은 상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력한다(S150). 이때, 8-비트 구성 모듈(140)은 상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하고(S160), 산출된 총 비트수가 8의 배수인지를 판단한다(S170).
8-비트 구성 모듈(140)은 상기 판단 결과 산출된 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 '0'을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고(S185), 산출된 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력한다(S180).
도 9는 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코딩 방법의 흐름도이다.
여기에서, 상기 디코딩 방법은 본 발명의 디코더(200)에서 구현될 수 있다. 이하, 도 9를 참조하여 각 단계를 세부적으로 설명한다.
도 9를 참조하면, 먼저 8-비트 분해 모듈(210)이 비트 스트림을 입력받고(S210), 입력받은 비트 스트림을 8-비트 단위의 비트 스트림으로 분해하여 출력한다(S220).
다음으로, 7-비트 복원 모듈(220)은 상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하고(S230), 산출된 총 비트수가 7의 배수인지를 판단한다(S240).
7-비트 복원 모듈(220)은, 상기 산출 결과 산출된 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하위 비트 '0'을 제거하여 7-비트 단위의 비트 스트림을 출력하고(S255), 산출된 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않고 7-비트 단위의 비트 스트림으로 변환하여 출력한다(S250).
다음으로, 8-비트 복원 모듈(230)은 상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 '0'을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력한다(S260).
그리고 나서, 코드 복원 모듈(240)은, 상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력한다(S270). 이때, 상기 소정의 2-바이트 한글 완성형 코드는, 도 2 내지 도 5에 도시된 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성 될 수 있다. 한편, 코드 복원 모듈(240)은 상기 출력된 8-비트 단위의 비트 스트림을 상기 소정의 2-바이트 한글 완성형 코드 또는 아스키 코드 중 적어도 어느 하나 이상에 의한 코드값으로 출력하도록 구성될 수 있다.
여기에서, 코드 복원 모듈(240)은 상기 출력된 코드값에 텍스트 종료(end of text) 문자가 있는지 판단하고(S280), 상기 텍스트 종료 문자가 있는 경우 상기 텍스트 종료 문자를 제거한다(S285).
다음으로, 코드 복원 모듈(240)은 상기 출력된 코드값에 해당하는 텍스트를 출력하거나 상기 출력된 코드값을 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 변환하여 출력한다(S290).
한편, 상기 설명한 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코딩 방법 및 디코딩 방법은 프로그램으로 구현될 수 있으며, 이 프로그램은 컴퓨터로 읽을 수 있는 매체에 기록될 수 있다.
상기 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코딩 방법을 행하는 프로그램은 다음의 각 단계를 실행시키도록 구성될 수 있다.
먼저 코드 변환 모듈(110)이 텍스트를 입력받는다(S110). 이때, 입력받는 텍스트는 국문이거나 영문과 같이 알파벳으로 작성된 텍스트가 될 수 있다.
코드 변환 모듈(110)은 상기 입력받는 텍스트의 데이터량이 미리 설정된 최대의 인코딩 데이터량 보다 적은지를 판단한다(S120). 이때, 텍스트의 데이터량이 미리 설정된 최대치의 인코딩 데이터량인 경우에는 0x7F의 코드를 추가하여 텍스트 종료 처리(end of text)를 한다(S125).
다음으로, 코드 변환 모듈(110)은 상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력한다(S130). 여기서, 상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다. 그리고 상기 입력받은 텍스트에 알파벳이 포함된 경우에는, 상기 입력받는 텍스트에 알파벳이 포함된 경우에는, 포함된 알파벳을 아스키(ASCII) 코드에 의한 코드값으로 변환하여 출력되도록 구성될 수 있다. 그리고 상기 입력받는 텍스트가 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 이미 변환되어 입력된 경우라면, 입력된 코드값을 상기 소정의 2-바이트 한글 완성형 코드 및 아스키 코드에 따라 변환하여 출력하도록 구성될 수 있다.
다음으로, 8-비트 분해 모듈(120)은 상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력한다(S140).
그리고 나서, 7-비트 구성 모듈(130)은 상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력한다(S150). 이때, 8-비트 구성 모듈(140)은 상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하고(S160), 산출된 총 비트수가 8의 배수인지를 판단한다(S170).
8-비트 구성 모듈(140)은 상기 판단 결과 산출된 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 '0'을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고(S185), 산출된 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력한다(S180).
한편, 앞서 설명한, 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코딩 방법은 다음의 각 단계로 구성될 수있다.
상기 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코딩 방법을 행하는 프로그램은 다음의 각 단계를 실행시키도록 구성될 수 있다.
먼저 8-비트 분해 모듈(210)이 비트 스트림을 입력받고(S210), 입력받은 비트 스트림을 8-비트 단위의 비트 스트림으로 분해하여 출력한다(S220).
다음으로, 7-비트 복원 모듈(220)은 상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하고(S230), 산출된 총 비트수가 7의 배수인지를 판단한다(S240).
7-비트 복원 모듈(220)은, 상기 산출 결과 산출된 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하위 비트 '0'을 제거하여 7-비트 단위의 비트 스트림을 출력하고(S255), 산출된 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않고 7-비트 단위의 비트 스트림으로 변환하여 출력한다(S250).
다음으로, 8-비트 복원 모듈(230)은 상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 '0'을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력한다(S260).
그리고 나서, 코드 복원 모듈(240)은, 상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력한다(S270). 이때, 상기 소정의 2-바이트 한글 완성형 코드는, 도 2 내지 도 5에 도시된 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지도록 구성될 수 있다. 한편, 코드 복원 모듈(240)은 상기 출력된 8-비트 단위의 비트 스트림을 상기 소정의 2-바이트 한글 완성형 코드 또는 아스키 코드 중 적어도 어느 하나 이상에 의한 코드값으로 출력하도록 구성될 수 있다.
여기에서, 코드 복원 모듈(240)은 상기 출력된 코드값에 텍스트 종료(end of text) 문자가 있는지 판단하고(S280), 텍스트 종료 문자가 있는 경우 상기 텍스트 종료 문자를 제거한다(S285).
다음으로, 코드 복원 모듈(240)은 상기 출력된 코드값에 해당하는 텍스트를 출력하거나 상기 출력된 코드값을 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 변환하여 출력한다(S290).
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이 다.
도 1은 아스키 코드의 코드 변환표이다.
도 2는 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드의 제1 한글 코드 변환표이다.
도 3은 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드의 제2 한글 코드 변환표이다.
도 4는 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드의 제3 한글 코드 변환표이다.
도 5는 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드의 제4 한글 코드 변환표이다.
도 6은 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더의 블록 구성도이다.
도 7은 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코더의 블록 구성도이다.
도 8은 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코딩 방법의 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코딩 방법의 흐름도이다.
<도면의 주요 부분에 대한 부호의 설명>
110: 코드 변환 모듈 120: 8-비트 분해 모듈
130: 7-비트 구성 모듈 140: 8-비트 구성 모듈
210: 8-비트 분해 모듈 220: 7-비트 복원 모듈
230: 8-비트 복원 모듈 240: 코드 복원 모듈

Claims (29)

  1. 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드의 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체로서,
    상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체.
  2. 제1항에 있어서,
    아스키 코드를 더 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체.
  3. 제2항에 있어서,0
    상기 2-바이트 한글 완성형 코드는, 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지고,
    상기 제1 한글 코드 변환표는
    Figure 112009074303437-PAT00009
    이고,
    상기 코드 변환표 2는
    Figure 112009074303437-PAT00010
    이고,
    상기 코드 변환표 3은
    Figure 112009074303437-PAT00011
    이고,
    상기 코드 변환표 4는
    Figure 112009074303437-PAT00012
    인 것을 특징으로 하는 2-바이트 한글 완성형 코드의 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체.
  4. 입력된 텍스트를 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 코드 변환 모듈과,
    상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력하는 8-비트 분해 모듈과,
    상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력하는 7-비트 구성 모듈과,
    상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하되, 산출 결과 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 0을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고, 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력하는 8-비트 구성 모듈을 포함하되,
    상기 소정의 2-바이트 한글 완성형 코드는, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 것을 특징으로 하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더.
  5. 제4항에 있어서,
    상기 코드 변환 모듈은,
    상기 입력된 텍스트에 알파벳(alphabet)이 포함된 경우에는, 포함된 알파벳을 아스키(ASCII) 코드에 의한 코드값으로 변환하는 것을 특징으로 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더.
  6. 제5항에 있어서,
    상기 코드 변환 모듈은,
    상기 텍스트가 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 이미 변환되어 입력된 경우, 입력된 코드값을 상기 소정의 2-바이트 한글 완성형 코드 및 아스키 코드에 의한 코드값으로 변환하여 출력하는 것을 특징으로 하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더.
  7. 제6항에 있어서,
    상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지는 것을 특징으로 하는 2-바이트 한글 완성형 코드를 이용하는 인코더.
  8. 입력된 비트 스트림을 8-비트 단위의 비트 스트림으로 분해하여 출력하는 8-비트 분해 모듈과,
    상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하되, 산출 결과 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하위 비트 0을 제거하여 7-비트 단위의 비트 스트림을 출력하고, 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않고 7-비트 단위의 비트 스트림으로 변환하여 출력하는 7-비트 복원 모듈과,
    상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 0을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력하는 8-비트 복원 모듈과,
    상기 출력된 8-비트 단위의 비트 스트림을 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하고, 변환된 코드값에 해당하는 텍스트를 출력하는 코드 복원 모듈과,
    상기 소정의 2-바이트 한글 완성형 코드는, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 것을 특징으로 하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코더.
  9. 제8항에 있어서,
    상기 코드 복원 모듈은,
    상기 8-비트 복원 모듈에서 출력된 8-비트 단위의 비트 스트림을 상기 소정 의 2-바이트 한글 완성형 코드 또는 아스키 코드 중 적어도 어느 하나 이상에 의한 코드값으로 출력 가능한 것을 특징으로 하는 2-바이트 한글 완성형 코드를 이용하는 디코더.
  10. 제9항에 있어서,
    상기 코드 복원 모듈은,
    상기 변환된 소정의 2-바이트 한글 완성형 코드에 의한 코드값을 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 출력 가능한 것을 특징으로 하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코더.
  11. 제10항에 있어서,
    상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지는 것을 특징으로 하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코더.
  12. 텍스트를 입력받는 단계와,
    상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와,
    상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력하는 단계와,
    상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와,
    상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와,
    상기 산출된 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 0를 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고, 상기 산출된 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계를 포함하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코딩 방법.
  13. 제12항에 있어서,
    상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는,
    상기 입력받는 텍스트에 알파벳이 포함된 경우에는, 포함된 알파벳을 아스키(ASCII) 코드에 의한 코드값으로 변환하여 출력하는 것을 특징으로 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코딩 방법.
  14. 제13항에 있어서,
    상기 입력받는 텍스트를 2 바이트 중 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는,
    상기 입력받는 텍스트가 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 이미 변환되어 입력된 경우, 입력된 코드값을 상기 소정의 2-바이트 한글 완성형 코드 및 아스키 코드에 따라 변환하여 출력하는 것을 특징으로 하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코딩 방법.
  15. 제14항에 있어서,
    상기 텍스트를 입력받는 단계 이후, 상기 입력받는 텍스트를 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이전에,
    상기 입력받는 텍스트의 데이터량이 미리 설정된 최대의 인코딩 데이터보다 적은 경우에는 텍스트 종료 처리(end of text)하는 단계를 더 포함하는 것을 특징으로 하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코딩 방법.
  16. 제15항에 있어서,
    상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지는 것을 특징으로 하는 2-바이트 한글 완 성형 코드를 이용하는 인코딩 방법.
  17. 비트 스트림을 입력받는 단계와,
    상기 입력받는 비트 스트림을 8-비트 단위의 비트 스트림으로 분해하여 출력하는 단계와,
    상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와,
    상기 산출된 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하위 비트 0을 제거하여 7-비트 단위의 비트 스트림을 출력하고, 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않고 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와,
    상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 0을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와,
    상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와,
    상기 출력된 코드값에 해당하는 텍스트 또는 상기 출력된 코드값을 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 변환하여 출력하는 단계를 포함하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코딩 방법.
  18. 제17항에 있어서,
    상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는,
    상기 출력된 8-비트 단위의 비트 스트림을 상기 소정의 2-바이트 한글 완성형 코드 또는 아스키 코드 중 적어도 어느 하나 이상에 의한 코드값으로 출력 가능한 것을 특징으로 하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코딩 방법.
  19. 제18항에 있어서,
    상기 출력된 8-비트 단위의 비트 스트림을, 2 바이트 중 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이후, 상기 출력된 코드값에 해당하는 텍스트를 출력하는 단계 이전에,
    상기 출력된 코드값에 텍스트 종료(end of text) 문자가 있는 경우, 상기 텍스트 종료 문자를 제거하는 단계를 더 포함하는 것을 특징으로 하는 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 디코딩 방법.
  20. 제19항에 있어서,
    상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지는 것을 특징으로 하는 2-바이트 한글 완 성형 코드를 이용하는 디코딩 방법.
  21. 아스키 코드와 연동 가능한 2-바이트 한글 변환 코드를 이용하는 인코딩 방법을 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체에 있어서,
    텍스트를 입력받는 단계와,
    상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와,
    상기 출력된 코드값을 8-비트 단위의 비트 스트림(bit stream)으로 변환하여 출력하는 단계와,
    상기 출력된 8-비트 단위의 비트 스트림 중에서 최상위 비트를 제거하여 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와,
    상기 출력된 7-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와,
    상기 산출된 총 비트수가 8의 배수가 아니면 상기 7-비트 단위의 비트 스트림에 최하위 비트 0을 추가하는 패딩 처리를 하여 8-비트 단위의 비트 스트림을 출력하고, 상기 산출된 총 비트수가 8의 배수이면 상기 7-비트 단위의 비트 스트림을 패딩 처리하지 않고 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계를 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체.
  22. 제21항에 있어서,
    상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는,
    상기 입력받는 텍스트에 알파벳이 포함된 경우에는, 포함된 알파벳을 아스키(ASCII) 코드에 의한 코드값으로 변환하여 출력하는 것을 특징으로 컴퓨터로 읽을 수 있는 매체.
  23. 제22항에 있어서,
    상기 입력받는 텍스트를, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는,
    상기 입력받는 텍스트가 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 이미 변환되어 입력된 경우, 입력된 코드값을 상기 소정의 2-바이트 한글 완성형 코드 및 아스키 코드에 따라 변환하여 출력하는 것을 특징으로 하는 컴퓨터로 읽을 수 있는 매체.
  24. 제23항에 있어서,
    상기 텍스트를 입력받는 단계 이후, 상기 입력받는 텍스트를 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이전에,
    상기 입력받는 텍스트의 데이터량이 미리 설정된 최대의 인코딩 데이터량보다 작은 경우에는 텍스트 종료 처리(end of text)하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터로 읽을 수 있는 매체.
  25. 제24항에 있어서,
    상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지는 것을 특징으로 하는 2-바이트 한글 완성형 코드를 이용하는 인코딩 방법을 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체.
  26. 아스키 코드와 연동 가능한 2-바이트 한글 변환 코드를 이용하는 디코딩 방법을 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체에 있어서,
    비트 스트림을 입력받는 단계와,
    상기 입력받는 비트 스트림을 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와,
    상기 출력된 8-비트 단위의 비트 스트림의 총 비트수를 산출하는 단계와,
    상기 산출된 총 비트수가 7의 배수가 아니면 인코딩 시 패딩 처리된 최하위 비트 0을 제거하여 7-비트 단위의 비트 스트림을 출력하고, 총 비트수가 7의 배수이면 최하위 비트를 제거하지 않고 7-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와,
    상기 출력된 7-비트 단위의 비트 스트림에 최상위 비트 0을 추가하여 8-비트 단위의 비트 스트림으로 변환하여 출력하는 단계와,
    상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계와,
    상기 출력된 코드값에 해당하는 텍스트 또는 상기 출력된 코드값을 표준 한글 완성형 코드(KS X 1001)에 의한 코드값으로 변환하여 출력하는 단계를 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체.
  27. 제26항에 있어서,
    상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완성형 코드에 의한 코드값으로 변환하여 출력하는 단계는,
    상기 출력된 8-비트 단위의 비트 스트림을 상기 소정의 2-바이트 한글 완성형 코드 또는 아스키 코드 중 적어도 어느 하나 이상에 의한 코드값으로 출력 가능한 것을 특징으로 하는 컴퓨터로 읽을 수 있는 매체.
  28. 제27항에 있어서,
    상기 출력된 8-비트 단위의 비트 스트림을, 상위 바이트가 아스키 코드에서 사용되지 않는 0x00 내지 0x1F 중 어느 하나로 구성되는 소정의 2-바이트 한글 완 성형 코드에 의한 코드값으로 변환하여 출력하는 단계 이후, 상기 출력된 코드값에 해당하는 텍스트를 출력하는 단계 이전에,
    상기 출력된 코드값에 텍스트 종료(end of text) 문자가 있는 경우, 상기 텍스트 종료 문자를 제거하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터로 읽을 수 있는 매체.
  29. 제28항에 있어서,
    상기 소정의 2-바이트 한글 완성형 코드는, 제3항의 제1 한글 코드 변환표 내지 제4 한글 코드 변환표에 따라 정해지는 것을 특징으로 하는 2-바이트 한글 완성형 코드를 이용하는 디코딩 방법을 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체.
KR1020090118153A 2009-12-02 2009-12-02 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더 및 디코더와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체 KR101127063B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090118153A KR101127063B1 (ko) 2009-12-02 2009-12-02 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더 및 디코더와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090118153A KR101127063B1 (ko) 2009-12-02 2009-12-02 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더 및 디코더와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체

Publications (2)

Publication Number Publication Date
KR20110061680A true KR20110061680A (ko) 2011-06-10
KR101127063B1 KR101127063B1 (ko) 2012-03-23

Family

ID=44395977

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090118153A KR101127063B1 (ko) 2009-12-02 2009-12-02 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더 및 디코더와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체

Country Status (1)

Country Link
KR (1) KR101127063B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101315683B1 (ko) * 2012-03-12 2013-12-13 이니텍(주) 데이터 사이즈 및 형태 변경이 없는 암호화 인코딩 및 복호화 인코딩 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101867663B1 (ko) 2016-04-25 2018-07-17 국방과학연구소 사슬구조의 otp 생성방법 및 이를 이용한 고정형 자료의 인코딩, 디코딩 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010091589A (ko) * 2000-03-16 2001-10-23 구자홍 코드 변환테이블을 이용한 코드 변환방법
US7359850B2 (en) 2003-09-26 2008-04-15 Chai David T Spelling and encoding method for ideographic symbols
KR100732618B1 (ko) 2005-12-21 2007-06-27 주식회사 드림시큐리티 한글을 이용한 인코딩/디코딩 장치 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101315683B1 (ko) * 2012-03-12 2013-12-13 이니텍(주) 데이터 사이즈 및 형태 변경이 없는 암호화 인코딩 및 복호화 인코딩 방법

Also Published As

Publication number Publication date
KR101127063B1 (ko) 2012-03-23

Similar Documents

Publication Publication Date Title
CN107561564B (zh) 一种北斗卫星信息传输的压缩实现方法
FI2297856T3 (fi) Menetelmä symbolin koodaamiseksi, menetelmä symbolin dekoodaamiseksi, menetelmä symbolin lähettämiseksi lähettimeltä vastaanottimelle, kooderi, dekooderi ja järjestelmä symbolin lähettämiseksi lähettimeltä vastaanottimelle
CN101534124B (zh) 一种用于短小自然语言的压缩算法
KR100969748B1 (ko) 직렬 통신 시스템에서 직렬 데이터의 송수신 방법 및 장치와 이를 위한 직렬 통신 시스템
JP5656593B2 (ja) 符号化データを復号する装置及び方法
CN106452607B (zh) 一种传输、解析信息的方法及装置
CN116614139B (zh) 一种售酒小程序内用户交易信息压缩存储方法
KR101127063B1 (ko) 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 포함하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 매체와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용하는 인코더 및 디코더와, 아스키 코드와 연동 가능한 2-바이트 한글 완성형 코드를 이용한 인코딩 방법 및 디코딩 방법과, 이를 행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체
CN101840394A (zh) 数据解码方法
CN101345952B (zh) 客户身份识别卡的数据存储、读取方法、装置及系统
Abas et al. Increasing data storage of coloured QR code using compress, multiplexing and multilayered technique
EP2712089A1 (en) Method for compressing texts and associated equipment
CN111368508A (zh) 数据处理方法、装置、设备及介质
KR100528139B1 (ko) 코드워드를 생성하는 방법 및 장치
JP4263627B2 (ja) 通信端末装置、受信装置、及び、プログラム
CN103631983A (zh) 一种战术数据报文模拟方法及系统
EP2113845A1 (en) Character conversion method and apparatus
CN102891730B (zh) 基于bcd码卫星短报文的编码方法和装置
CN110298017B (zh) 一种编码数据处理方法、装置及计算机存储介质
JPH0523097B2 (ko)
CN102567294A (zh) 文本数据处理方法和装置
JP4953145B2 (ja) 文字列データ圧縮装置及びその方法並びに文字列データ復元装置及びその方法
RU177174U1 (ru) Устройство для кодирования и декодирования двоичных кодов данных
KR100608151B1 (ko) 유무선 통신망을 매개로 전송되는 데이터의 통신량감축방법과 이 감축방법을 이용한 데이터 통신방법
TWI280749B (en) Error correction and decoding method and system for communications system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150302

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160303

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170303

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180305

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20200303

Year of fee payment: 9