정신문화연구제 41 권제 4 호 ( 통권 153 호 ) 213 238 쪽 硏究論文 옛한글코드의변천사 양왕성 한글과컴퓨터부사장, 정보통신공학전공 yang@hancom.com I. 머리말 : 옛한글코드와인문학 II. 한글코드변천사 III. 옛한글코드운용과입출력 IV. 표준코드의의의와전망 V. 맺음말
Ⅰ. 머리말 : 옛한글코드와인문학 세종대왕의한글창제이전에우리말이없었던것은아니다. 한글이창제되기이전에도이미한문을통해문자생활을영위했으며향찰 이두 구결등을통해우리말을적기도했다. 다만한문또, 한글이전의여러우리말표기방식은부자연스럽거나불편한것이어서극소수의사람만이쓰고읽을수있었다. 세종대왕의한글창제는이모든부자연스러움과불편함을한번에해결한획기적인일이었다. 코드는정보세계의문자이다. 코드가없다면어떤정보도입력및출력을할수없다. 이를통해보면한글코드를제정하는것은정보세계에한글을창제하는것과같은종류의일이다. 물론한글코드체계는우리말그리고한글의기반위에서만들어진다. 또한개인이아니라많은사람들의협동위에서만들어지며, 전세계가모여만든규약위에서만들어진다. 그러나그것이없다면 말하고자하는바가있어도표현할수없게 되기때문에감히한글창제와비견하는것이다. 한글이세종대왕의창제이후많은변화가있었던것과같이한글코드또한많은변화가있었다. 다행스럽게도현대한글 11,172자의경우비교적초기에안정화되고국제문자코드 (ISO/IEC 10646, 유니코드 ) 에까지반영이되었다. 이결과로우리는스마트폰을비롯한거의모든전산기기에서한글을무리없이사용하고있다. 반면옛한글은아직현대한글만큼자유롭게운영할수있는환경이아니다. 상대적으로늦게표준화가진행되었을뿐더러이를입력하거나출력할수있는제품들도많지않은상황이다. 더구나옛한글코드는비교적짧은기간안에압축적인변화가있었기때문에그변화가비록긍정적인방향으로발전한것이었다하더라도여러문제를야기하기도했다. 옛한글을컴퓨터를이용해입력하고가공한다면그것역시코드없이는불가능하며코드체계에지대한영향을받는일이기때문이다. 따라서옛한글코드의변화한궤적을일별하고그궤적을정리하는일은옛한글을다루는모든인문학분야에요긴한일이다. 현재옛한글코드를표준화하려는오랜노력이결실을거두어국제문자코드에반영되어있다. 이는국제적인표준이확립되었다는말이다. 그간의현대한글코드에대한논란은논외로하고, 초기부터옛한글을 214 정신문화연구제 41 권제 4 호
담기위해어떠한시도들이있었는지, 또어떠한발전이있었는지특히 글워드프로세서의코드체계에유의하며살펴보고자한다. Ⅱ. 한글코드변천사 옛한글코드는한글코드의확장이므로한글코드의변천사를같이볼필요가있다. 초기미국에서개발된컴퓨터는기본적으로로마자알파벳기준의입출력으로만설계되어있다. 여기에한글을인식하게하려면주어진규격에맞게확장해야했다. 주어진규격을벗어나면시스템의안정성을해칠수있기때문에, 규격의준수는중요한제약조건이다. 각코드규격의세부장단점은다분히기술적인내용이기에이글에서는논외로하고, 한글의지원범위와옛한글관련부분을위주로살펴본다. 1. 7 비트한글코드 영어권은기본로마자알파벳기준으로운영할수있기에 128자만으로도충분하다. 영어권에서는 7비트 128자 (2의 7승 ) 가정의된 ASCII Code 를사용하는데, 이는제어문자, 알파벳대문자, 알파벳소문자, 숫자, 괄호문자및기타기호를포함하고있다. 이 7비트시스템에서한글을표기하기위한방식은, 로마자알파벳코드값이어떤모드 (mode) 전환에따라영어가표기되거나또는한글이표기되도록하는방식이다. 즉모드를바꾸는특별한제어코드 SI(Shift In) 와 SO(Shift out) 가그것인데, SO 제어코드다음은한글자소로해석하고, SI 제어코드다음은다시로마자알파벳으로해석한다. 당시전보를발송했던전신시설이나메인프레임컴퓨터들이이방식을이용했으며, 애플II PC의한글시스템 ( 일명 call 3327 ) 도이방식이었다. ASCII 기호들과한글자모맵핑 (mapping) 은각구현시스템마다달랐고, 아래예는 KS로등록된 7비트한글코드맵핑을나타낸다. 한글글자마디하나를나타내기위해여러바이트가필요하므로 N바이트한글코드 방식으로분류되기도한다. 조합되지않으면풀어쓰기형태로나열되고, 기본운용에있어음절구분등의문제가있는미숙한 옛한글코드의변천사 215
코드체계였다. 당시 (70년대후반 80년대초반 ) 로는한글이입출력되는것만으로도대단한일이었기에옛한글까지고려되지않았다. 표1 N바이트한글코드의예코드값 English <SO> ^bdazi <SI> English 출력 English 한글 English #Note: A hangul string must be between SO (0x0E) and SI (0x0F). 1) 표 2 ASCII 코드와 7 비트한글코드 Mapping(KS) Hex Char 한글 Hex Char 한글 0x40 @. ᅠ 0x60 0x41 A ᄀ 0x61 a 0x42 B ᄁ 0x62 b ᅡ 0x43 C ᆪ 0x63 c ᅢ 0x44 D ᄂ 0x64 d ᅣ 0x45 E ᆬ 0x65 e ᅤ 0x46 F ᆭ 0x66 f ᅥ 0x47 G ᄃ 0x67 g ᅦ 0x48 H ᄄ 0x68 h 0x49 I ᄅ 0x69 i 0x4A J ᆰ 0x6A j ᅧ 0x4B K ᆱ 0x6B k ᅨ 0x4C L ᆲ 0x6C l ᅩ 0x4D M ᆳ 0x6D m ᅪ 0x4E N ᆴ 0x6E n ᅫ 0x4F O ᆵ 0x6F o ᅬ 0x50 P ᄚ 0x70 p 0x51 Q ᄆ 0x71 q 0x52 R ᄇ 0x72 r ᅭ 0x53 S ᄈ 0x73 s ᅮ 0x54 T ᄡ 0x74 t ᅯ 0x55 U ᄉ 0x75 u ᅰ 0x56 V ᄊ 0x76 v ᅱ 0x57 W ᄋ 0x77 w ᅲ 0x58 X ᄌ 0x78 x 0x59 Y ᄍ 0x79 y 0x5A Z ᄎ 0x7A z ᅳ 0x5B [ ᄏ 0x7B { ᅴ 0x5C \ ᄐ 0x7C ᅵ 0x5D ] ᄑ 0x7D } 0x5E ^ ᄒ 0x7E ~ 0x5F _ 0x7F 1) SO/SI, KS X 1001:2004, KS, Annex 4 216 정신문화연구제 41 권제 4 호
2. DBCS 옛한글자모 환경이 IBM XT/AT 호환 MS DOS 환경으로바뀌면서, 로마자알파벳을쓰는환경도 8비트 256자로확장되었다. Extended ASCII Code 로확장된이코드시스템은로마자알파벳외서구유럽의프랑스, 독일등에서필요한알파벳 (ç, ë, ô, î, Ä, ä, Ö, ö, Ü, ü, ß) 까지추가되었고, 화폐단위와약간의수학기호및장식기호들이추가되었다. 그러나 Extended ASCII Code 처럼 8비트영역을확장한다고해도 128자밖에확장이안되기때문에, 몇천글자이상을포함하려면다중바이트문자집합 (MBCS: Multi Byte Character Sets) 이란특별한방법으로확장해야한다. 한자를포함해야하는한국과중국, 일본, 대만은일찍이 MBCS의일종인 DBCS(Double Byte Character Sets) 방법으로코드영역을확장하여필요한글자를배열하였다. DBCS는 8비트시스템에서연달아있는두개의바이트 (8비트코드두개 ) 를합해서 16비트코드로처리하는방법이다. DBCS도 ISO 2022 규격에따르는가, 아닌가에따라확장글자수의차이가있다. ISO 2022에따라확장하면모두 9,216(96 96) 자를정의할수있는데, KS X 1001( 구 : KSC 5601 1987, 일명 완성형코드 ) 이이와같은규격으로정의한규격이다 ( 한글 2,350자와한자 4,888자포함 ). 표3 KS X 1001( 구 KS C 5601) 특수문자영역전각한글자모 _0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F A4A0 ㄱ ㄲ ㄳ ㄴ ㄵ ㄶ ㄷ ㄸ ㄹ ㄺ ㄻ ㄼ ㄽ ㄾ ㄿ A4B0 ㅀ ㅁ ㅂ ㅃ ㅄ ㅅ ㅆ ㅇ ㅈ ㅉ ㅊ ㅋ ㅌ ㅍ ㅎ ㅏ A4C0 ㅐ ㅑ ㅒ ㅓ ㅔ ㅕ ㅖ ㅗ ㅘ ㅙ ㅚ ㅛ ㅜ ㅝ ㅞ ㅟ A4D0 ㅠ ㅡ ㅢ ㅣ ( 채움 ) ㅥ ㅦ ㅧ ㅨ ㅩ ㅪ ㅫ ㅬ ㅭ ㅮ ㅯ A4E0 ㅰ ㅱ ㅲ ㅳ ㅴ ㅵ ㅶ ㅷ ㅸ ㅹ ㅺ ㅻ ㅼ ㅽ ㅾ ㅿ A4F0 ㆀ ㆁ ㆂ ㆃ ㆄ ㆅ ㆆ ㆇ ㆈ ㆉ ㆊ ㆋ ㆌ ㆍ ㆎ 표4 KS X 1001의옛한글자소수 현대한글자모 옛한글자모 합 자음 30 34 64 모음 21 8 29 합 51 42 옛한글코드의변천사 217
완성형코드는영역대부분이모두정의되어옛한글확장의여지가거의없는규격이다. 한글음절 2,350자는통계적으로사용빈도가높은글자들이선택되었고, 2,350자외빈도가낮은한글음절은표현할수없다는치명적인약점이있는데, 이에대해제정당시 (1987) 부터많은비판이있었다. 특히잘알려진문제로, 발음표기 ( 예 : 태권도 [ 태꿘도 ]), 축약어 ( 예 : 아뢔 / 아뢰어 ), 방언 ( 예 : 똠방각하, 닁큼 / 냉큼 ), 외래어표기 ( 찦차 / 커피숖 ) 등빈도는낮지만필요한글자들을처리할수없다는점등, 많은전문가와학자들로부터비판을받았다. ( 구체적인비판항목들은여러논문에기록되어있고, 이글의주제와거리가멀어생략한다.) 단, 완성형코드에도특수기호문자영역에 한글자모 로정의된 94자 ( 채움코드 1자포함 ) 가있는데, 여기에옛한글자소 42자가포함되어있다. 이영역의한글자모는독립자소로만사용되고, 자소간의조합으로글자를이루는데사용되지는않는다. 따라서옛한글자소가포함되어있다는것외그이상의활용도는없다.( 이한글자모 96자는이후 Unicode 에 Hangul Compatibility Jamo 로포함되게된다.) 3. 조합형옛한글과 OCHP DBCS에서확장하는또다른방법하나는 ISO 2022 규격을벗어나지만모든현대한글을나타낼수있는조합형한글코드가가능한방법이다. 1987년완성형코드 (KSC 5601) 가정의되기이전, 대부분의 PC 제조업체들이조합형한글코드를사용하였는데, 코드배열은회사별로차이가있었다. 여러가지조합형배열중 상용조합형 2) 이라불리던코드가가장일반적으로사용되었다. 상용조합형외는특정회사제품에서만구현된경우가대부분이다. 또한글코드의배열은상용조합형과같아도, 한자나특수 ( 도형 ) 기호들의배열차이가있어다른코드로취급하기도한다. 1987년 KSC5601 이후 PC 제조업체들이 KSC5601 완성형을따라가고, 대부분의조합형은사라진반면, 상용조합형은 KSSM이란규격이만들어져 KS 대안으로정리되고있었다. 조합형과완성형의장단점 2) 상용조합형 : 1987 년 KSC 5601 제정이전에가장일반적으로사용되던한글코드. 초기 IBM 을비롯한삼보컴퓨터등에서쓰였고, 한글외기호들을 KS 에맞춘 KSSM 코드로개정한뒤, 이후 KSC5601 1992 에 2 바이트조합형부호계 로 KS 에등록되었다. 218 정신문화연구제 41 권제 4 호
논쟁은 1992년 KSSM 조합형이 KS 규격에포함됨으로써표면적인논쟁은일단락된다. 조합형중옛한글확장을구현한경우도상용조합형이거의유일하다. 상용조합형은옛한글확장관련하여 KSSM(1991년 ) 이전 TG코드 3) 와 KSSM코드두가지로구분할수있다. 조합형의옛한글확장은한국어전산학회요청에삼보컴퓨터가적극적 표 5 TG 코드옛한글확장구조 표 6 OCHP 옛한글확장구조 (KSSM) 상위 문자영역 : TG (NKP) 전산학회확장 상위문자영역 : KSSM OCHP 확장 80 : D3 상용조합형한글 + 조합형확장 ( 중성2, 종성1) : ㆍ, ㆎ, ㅭ 80 : D3 상용조합형한글 + 조합형확장 ( 중성2, 종성2) : ㆍ, ㆎ, ㅭ, ㆁ D4 특수문자 (TG 212 ) D4 특수문자 (TG 212 ) D5 D6 D7 (reserved) D5 D6 D7 (reserved) D8 D9 DA DB DC : 사용자정의문자영역 I (= 4 x 204 ) 한자 3640자 + 옛한글확장I : 816자 D8 D9 DA DB DC DD DE 사용자정의문자 I 특수문자 986자 (KSC5601과동일 ) ED EE EF F0 F1 사용자정의문자영역 II (= 2 x 204 ) + 옛한글확장II : 408자 DF E0 : F9 사용자정의문자 II 한자 4888자 (KSC5601과동일 ) F2 : FE (reserved) FA FB FC FD FE (reserved) 1025자영역 + 옛한글확장 : 1025자 FF (reserved) FF (reserved) 3) TG 코드 : TG 는삼보컴퓨터의영문이름 (TriGem) 의약자이다. TG 코드 는일반적인용어는아니었지만, 상용조합형 KSSM 조합형코드와대비하여, 그이전에쓰던코드를 TG 코드 로부른다. 옛한글코드의변천사 219
으로반영하여구현되었고, 삼보컴퓨터는전용 H/W( 비디오카드, 프린터 ) 를제작하여공급하기까지하였다. 한국어전산학회는초기 TG코드를기반으로 사용자정의영역 에옛한글확장 4) 을하였고, 1991년 KSSM 개발이후 KSSM 기반으로옛한글을재정렬하여 OCHP 옛한글코드시스템을개발하였다. 상용조합형한글코드는 DBCS 규격의 16비트특성상초중종은각각 5비트까지만허용되고, 각각 32개의공간이있다. 그러나사용할수없는배치공간 ( 사용제한 ) 이섞여있어, 실제사용할수있는공간은더적다. 표 7 상용조합형자소배열과 OCHP 자소확장 초성 중성 종성 값 비트 배열 비트 배열 비트 배열 0 00000 00000 < 사용제한 > 00000 < 사용제한 > 1 00001 < 채움 > 00001 < 사용제한 > 00001 < 채움 > 2 00010 ㄱ 00010 < 채움 > 00010 ㄱ 3 00011 ㄲ 00011 ㅏ 00011 ㄲ 4 00100 ㄴ 00100 ㅐ 00100 ㄳ 5 00101 ㄷ 00101 ㅑ 00101 ㄴ 6 00110 ㄸ 00110 ㅒ 00110 ㄵ 7 00111 ㄹ 00111 ㅓ 00111 ㄶ 8 01000 ㅁ 01000 < 사용제한 > 01000 ㄷ 9 01001 ㅂ 01001 < 사용제한 > 01001 ㄹ 10 01010 ㅃ 01010 ㅔ 01010 ㄺ 11 01011 ㅅ 01011 ㅕ 01011 ㄻ 12 01100 ㅆ 01100 ㅖ 01100 ㄼ 13 01101 ㅇ 01101 ㅗ 01101 ㄽ 14 01110 ㅈ 01110 ㅘ 01110 ㄾ 15 01111 ㅉ 01111 ㅙ 01111 ㄿ 16 10000 ㅊ 10000 < 사용제한 > 10000 ㅀ 17 10001 ㅋ 10001 < 사용제한 > 10001 ㅁ 18 10010 ㅌ 10010 ㅚ 10010 + ㅭ 19 10011 ㅍ 10011 ㅛ 10011 ㅂ 20 10100 ㅎ 10100 ㅜ 10100 ㅄ 21 10101 10101 ㅝ 10101 ㅅ 22 10110 10110 ㅞ 10110 ㅆ 23 10111 10111 ㅟ 10111 ㅇ 24 11000 11000 < 사용제한 > 11000 ㅈ 25 11001 11001 < 사용제한 > 11001 ㅊ 26 11010 11010 ㅠ 11010 ㅋ 27 11011 11011 ㅡ 11011 ㅌ 28 11100 11100 ㅢ 11100 ㅍ 29 11101 11101 ㅣ 11101 ㅎ 30 11110 11110 + ㆍ 11110 + ㆁ 31 11111 11111 + ㆎ 11111 < 사용제한 > + : OCHP에서확장된자소. 4) 김흥규, 한글옛글자의컴퓨터처리효율화방안과이에대한고시조데이터베이스시스템개발연구 ( 한국어전산학회, 1992), 13 18 쪽. 220 정신문화연구제 41 권제 4 호
현대한글자소를배치하고남은공간을보면, 중성이 2개, 종성이 2개이다. 초성영역은 12개가남는데, 한자나도형문자등을확장하기위한영역이다. 중성과종성은각각 2개까지확장가능하다. TG코드는조합형기반으로중성 2개 (, ㆎ ), 종성 1개 ( ㅭ ) 를확장하였고, 옛한글완성자 1,224자를사용자정의영역에확장하였다. TG코드옛한글확장은마지막단계에서 KSSM기반의 OCHP로전환되었다. OCHP는조합형기반으로옛한글중성 2개 (, ㆎ ) 와종성 2개 ( ㅭ, ㆁ ) 씩추가배열하였고, 조합되지않는옛한글은 OCHP 완성자형태로 1,025자 ( 표8) 를배열하였다. 그외발음기호와연구에필요한일부한자등을포함하여사용자정의영역II에 205자를배치하였다. KSSM 시스템하에서는최대치배열을한방법이라할수있다. OCHP 의구체적설계과정과사양은 한글옛글자의컴퓨터처리효율화방안과이에의한고시조데이터베이스시스템개발연구 ( 김흥규 : 1992) 에잘나타나있다. OCHP를구현한한글비디오보드의사용지침서에는당시 (1991) 알려진옛한글의 95% 까지처리가능하다 5) 고안내하고있다. OCHP는본격적인옛한글연구의기그림1 삼보컴퓨터옛한글틀이되었다고평가할수있다. 당시까사용지침서 (1991) 지이렇다할옛한글코드시스템이없는상황에서, OCHP 의등장은옛한글자료를전산화하고, 분류 분석할수있는기준도구가되었다는데큰의미가있다. 특히컴퓨터운영체체 (OS) 에조합형코드체계 (KSSM) 를확장적용해서, 텍스트편집기와 DB프로그램등일반응용프로그램들에서도옛한글을이용할수있게된것은당시옛한글연구상황에비추어, 본격적인연구를할수있는중요한전환점이되었다고할수있다. 5) OCHP, 한글비디오보드 ( 고어 ) 사용지침서 ( 삼보컴퓨터, 1991), 2 3 쪽. 옛한글코드의변천사 221
그림 2 OCHP 개발의바탕이된논문 ( 김흥규, 1992) 그러나 KSSM코드는구조상추가적인옛한글확장이불가능하고, 당시까지조사되었던옛한글외옛한글이새로발견되어도대응할수없다는한계가있었다. 코드상으로는한글조합에이용되는중성코드에아래아 ( ) 의확장이큰의의를갖는다. 아래아 ( ) 가포함된옛글자들은대부분조합형으로처리하고나머지옛한글을완성자로처리할수있어코드의효율을크게높인다. 모음인아래아 ( ) 가포함된옛한글의개수가절대적으로많은데다근대까지남아있던자소여서, 옛한글에대한표현가능성이알려진글자들보다훨씬넓어졌다는것을의미한다. 4. HNC 1.x/2.x/3.x 조합형 ( 한글과컴퓨터조합형 ) 옛한글데이터처리에많이쓰이는아래아한글 ( 글, HWP) 의내부데이터문자코드는 HNC코드라 ( 한글과컴퓨터코드또는한컴코드 ) 라하는데, 글1.0 시절부터완전한 16비트시스템으로설계되었다. 8비트시스템과는달리 16비트시스템은모든글자를 16비트로처리하는것을이르는데, 영문자 A 나숫자 1 또는한글 가 등이모두 16비트크기의글자단위로동일하게취급된다. 완전한 16비트코드시스템이기에, 222 정신문화연구제 41 권제 4 호
표 8 OCHP 옛한글완성자확장목록 1,025 자 (FA30 FEFE) FA30 FA40 FA50 FA60 FA70 FA80 FA90 FAA0 FAB0 FAC0 FAD0 FAE0 FAF0 FD30 FD40 FD50 FD60 FD70 FD80 FD90 FDA0 FDB0 FDC0 FDD0 FDE0 FDF0 FB30 FB40 FB50 FB60 FB70 FB80 FB90 FBA0 FBB0 FBC0 FBD0 FBE0 FBF0 FE30 FE40 FE50 FE60 FE70 FE80 FE90 FEA0 FEB0 FEC0 FED0 FEE0 FEF0 FC30 FC40 FC50 FC60 FC70 FC80 FC90 FCA0 FCB0 FCC0 FCD0 FCE0 FCF0 (*) 김흥규 (1992), 앞의논문, 27 29쪽. 옛한글코드의변천사 223
모두 65,536자 (2의 16승 ) 를배열할수있는데, 한글약 32,000여자, 한자 16,000여자를포함하여사용자정의로 2,048자까지배열할수있다. HWP에서사용하는조합형도상용조합형을바탕으로확장한조합형이다. 16비트조합형이라자소당 5비트제한은있지만, 완전한 16비트시스템이기때문에상용조합형처럼 < 사용제한 > 영역을가지지는않는다. 따라서상용조합형보다많은자소를배열할수있다. 글1.0에서구현했던초기조합형 (HNC 1.x) 과 글2.0으로판올림하면서수정된조합형 (HNC 2.x) 이있다. 또윈도우버전인 글3.0으로판올림하면서, HNC 3.x로바뀌었으나, 한글코드부분은 2.x와같아서, 한글코드관련해서 HNC 3.x는 HNC 2.x로통칭하기도한다. 표 9 HNC 1.x 와 2.x/3.x 코드비교 옛한글자소수 초성 중성 종성 HNC 1.x 조합형옛한글확장 + 12자ㅸ, ㅲ, ㅺ, ㅳ, ㅼ, ㅽ, ㅄ, ㅿ, ㆁ, ㅶ, ㅾ, ㆆ + 8자ㆇ, ㆈ, ㆉ, ㆊ, ㆋ, ㆌ,, ㆎ + 4자ㅭ, ㅁㄱ, ㆆ, ㆁ HNC 2.x/3.x 조합형옛한글확장 + 12자ㅲ, ㅳ, ㅄ, ㅶ, ㅸ, ㅺ, ㅼ, ㅽ, ㅾ, ㅿ, ㆁ, ㆅ + 5자ㆉ, ㆊ, ㆌ,, ㆎ + 4자ㅭ, ㅸ, ㅿ, ㆁ HNC 1.x와 2.x에서확장한옛한글자소배열은 OCHP와다르다. 중성의아래아두글자 (, ㆎ ) 외에는모두다른배열을가진다. 상용조합형에서는하지못했던초성자음군확장도 12자나했고, 중성도 8자나확장했다. HNC 2.x에서는오히려 1.x보다중성자소가적게배열되었다. 중성의일부코드 (<Ext>) 를확장플랙으로이용하여, 옛한글완성자를추가할수있도록하기위함이다. 이방법 ( 기술적인내용생략 ) 으로 HNC 2.x에서는자소조합으로지원하지못하는옛한글 1,865자를완성자로추가지원한다. 확장된옛한글조합자소는실제사용용도나중요도가높은자소를우선으로배치했지만, 32자공간에모두배치하지못하고, 다수의옛한글자소는완성자로지원하는방법을사용한것이다. 대표적인예로정치음치두음자소가포함된옛한글은완성자방법으로만지원한다. 224 정신문화연구제 41 권제 4 호
표10 HNC 1.x 조합형자소배열 값 비트 초성 중성 종성 0 00000 + ㅸ + ㅭ 1 00001 < 채움 > < 채움 > 2 00010 ㄱ < 채움 > ㄱ 3 00011 ㄲ ㅏ ㄲ 4 00100 ㄴ ㅐ ㄳ 5 00101 ㄷ ㅑ ㄴ 6 00110 ㄸ ㅒ ㄵ 7 00111 ㄹ ㅓ ㄶ 8 01000 ㅁ + ㆇ ㄷ 9 01001 ㅂ + ㆈ ㄹ 10 01010 ㅃ ㅔ ㄺ 11 01011 ㅅ ㅕ ㄻ 12 01100 ㅆ ㅖ ㄼ 13 01101 ㅇ ㅗ ㄽ 14 01110 ㅈ ㅘ ㄾ 15 01111 ㅉ ㅙ ㄿ 16 10000 ㅊ + ㆉ ㅀ 17 10001 ㅋ + ㆊ ㅁ 18 10010 ㅌ ㅚ + ㅁㄱ 19 10011 ㅍ ㅛ ㅂ 20 10100 ㅎ ㅜ ㅄ 21 10101 + ㅲ ㅝ ㅅ 22 10110 + ㅺ ㅞ ㅆ 23 10111 + ㅳ ㅟ ㅇ 24 11000 + ㅼ + ㆋ ㅈ 25 11001 + ㅽ + ㆌ ㅊ 26 11010 + ㅄ ㅠ ㅋ 27 11011 + ㅿ ㅡ ㅌ 28 11100 + ㆁ ㅢ ㅍ 29 11101 + ㅶ ㅣ ㅎ 30 11110 + ㅾ + + ㆆ 31 11111 + ㆆ + ㆎ + ㆁ +: 조합형에서확장된자소 표11 HNC 2.x/3.x 조합형자소배열 값 비트 초성 중성 종성 0 00000 + ㅲ <Ext> + ㅭ 1 00001 < 채움 > <Ext> < 채움 > 2 00010 ㄱ < 채움 > ㄱ 3 00011 ㄲ ㅏ ㄲ 4 00100 ㄴ ㅐ ㄳ 5 00101 ㄷ ㅑ ㄴ 6 00110 ㄸ ㅒ ㄵ 7 00111 ㄹ ㅓ ㄶ 8 01000 ㅁ <Ext> ㄷ 9 01001 ㅂ <Ext> ㄹ 10 01010 ㅃ ㅔ ㄺ 11 01011 ㅅ ㅕ ㄻ 12 01100 ㅆ ㅖ ㄼ 13 01101 ㅇ ㅗ ㄽ 14 01110 ㅈ ㅘ ㄾ 15 01111 ㅉ ㅙ ㄿ 16 10000 ㅊ ㅀ 17 10001 ㅋ + ㆉ ㅁ 18 10010 ㅌ ㅚ + ㅸ 19 10011 ㅍ ㅛ ㅂ 20 10100 ㅎ ㅜ ㅄ 21 10101 + ㅳ ㅝ ㅅ 22 10110 + ㅄ ㅞ ㅆ 23 10111 + ㅶ ㅟ ㅇ 24 11000 + ㅸ + ㆊ ㅈ 25 11001 + ㅺ + ㆌ ㅊ 26 11010 + ㅼ ㅠ ㅋ 27 11011 + ㅽ ㅡ ㅌ 28 11100 + ㅾ ㅢ ㅍ 29 11101 + ㅿ ㅣ ㅎ 30 11110 + ㆁ + + ㅿ 31 11111 + ㆅ + ㆎ + ㆁ +: 조합형에서확장된자소 옛한글코드의변천사 225
HNC 2.x/3.x 코드도 글97(HWP) 까지만사용되고, 글워디안 (2000) 판올림때부터유니코드를채택함으로서 HNC 코드는더이상 글제품에반영되지않는다. 글의첫번째코드시스템인 HNC 1.x 코드는실제사용된기간이길지않고, 옛한글배열의실용성도떨어졌다. 코드를설계할때, 옛한글관련하여참고할데이터가많지않았던때이기도하다. 글 2.0부터탑재된 HNC 2.x/3.x 코드는많은옛한글자소를조합형으로지원함과동시에옛한글완성자로도 1,865자를지원함으로써, 당시 (1993년) 가장많은옛한글표현할수있는제품이되었고, 옛한글을실용적인수준까지끌어올렸다고할수있다. 대부분응용프로그램들특히문서편집기 (Word Processor) 들이 OS가제공하는 2,350자완성형코드를기반으로제품을만들때도, 글은모든한글을표현하는것을중요한가치로삼아, 조합형한글기반으로코드시스템을설계하였고, 덕분에필요한거의대부분의옛한글을표현할수있었다. 또한 HNC코드는 HWP 내부구현용으로만들어졌으나, 외부데이터처리를위해 16비트 Text파일 (.2b) 형태로내보내기 (Import/ Export) 기능을지원하였고, 실용적인옛한글 DB구축과입출력도구가되었다. 또옛한글관련문헌들이나논문을정리하는중요한도구로써 2000년대초반까지옛한글에관한한거의유일한해결책이었다. 그러나조합형자소받침배열이 OCHP와다르게확장된부분은아쉬운부분으로남는다. 중성의아래아 (, ㆎ ) 는같은배열이지만, 받침은 1.x에서배열되었던 2글자의위치를유지함으로서결론적으로 OCHP 받침배열과다른배열을가지게되었는데, 같은배열을가졌으면좀더활용성이높았을것으로생각된다. OCHP의기반이된 KSSM 배열이 KS 표준에포함되었는데, 만약 OCHP의중성종성이 글의중성종성배열과같았다면, 이도 KS 표준의기회가있었을것같다. 5. 유니코드 PUA 옛한글 1995 년유니코드 2.0 의기본평면 (BMP 6) ) 에현대한글글자마디 11,172 6) BMP(Basic Multilingual Plane): 유니코드는 65,536 자를처리하는 17 개의다국어평면 (Multilingual Plane) 으로구성되어있는데, 그중코드포인트 U+0000 부터 U+FFFF 까지 226 정신문화연구제 41 권제 4 호
자가들어가는역사적인사건이일어났다. 유니코드 1.0에서배열되어있던한글 2,350자가제외되고, 새로운영역에 11,172자현대한글이모두반영되었는데, 유니코드역사상이미배치된글자블록이제외되고재배치되는경우는, 이경우말고는없다. 이로서조합형 / 완성형코드논란 7) 은일단락이되고, 이제옛한글을어떻게처리할지가남은이슈가되었다. 원래유니코드방안대로라면, 옛한글은 초중종열린조합 으로각각 3개씩최대 9개까지를모아서한글자로처리해야하지만, 어느시스템도실용적으로구현하지못했고, 이방법으로옛한글을지원하는시스템은없었다. 대신유니코드의 PUA(Private Use Area: 사용자정의영역 ) 8) 를이용하여옛한글을완성자로배열하고, 이를입출력하는방법이일반화되었다. PUA에는초중종자소 359자를비롯하여옛한글글자마디 5,277자의옛한글이배열되어있다. 일반적으로 PUA 옛한글은유니코드현대한글글자마디와같이운용한다. PUA 옛한글폰트가공급된이후많은제품들 ( 글워디안(2000), 글 2002 글2007을비롯하여 MS워드2000등 ) 과프로젝트들이 PUA방식의데이터를생성하였다. 최근 (2018년 7월 ) 까지도 PUA 방식의옛한글자료들이많이운용되고있다. 그러나유니코드 PUA는임의로정의해서사용할수있는영역으로해당시스템에설치된폰트나응용프로그램및 PC환경 (Locale) 에따라다른내용으로보일수있는영역이다. 극단적으로제2, 제3의 PUA 폰트가설치되거나, 옛한글 PUA 폰트가설치되지않는다면, 해당자료는판독할수없는상태가될수도있다. 이경우웹서비스도안정적이지않아, 보는기기에따라데이터가올바르게보이지않을수도있다. 특히 PUA 옛한글은완성형특성을갖고있어서, 별도의변환 Table 참조를 를처리할수있는첫번째평면을 BMP라고한다. 첫번째평면글자들은 16비트로처리할수있다. 7) 유니코드글자마디 11,172자도완성형이라는지적이있지만, 별도의변환 Table 없이, 수학식으로자소를정확히분리및조합할수있기에, 이는완전히조합형특징을갖는다고할수있다. 8) 유니코드 PUA: Private Use Area. 원래유니코드에는확장영역의 PUA(U+F0000 U+10FFFD) 도있으나, 여기서는 16비트로처리할수있는기본 BMP영역의 PUA (U+E000 U+F8FF) 를대상으로한다. 옛한글코드의변천사 227
표 12 유니코드 (5.2) 속여러종류의한글영역 집합이름한글자모 (1) 한글자모확장 ( 한글자소 : 초, 중, 종 ) (2) 한글글자마다 (3) 한글호환용자모 ( 자음, 모음 ) (4) 반각한글부호 (5) 사용자정의옛한글 (PUA 옛한글 ) 유니코드내영역이름코드범위 Hangul Jamo 1100~11FF Hangul Jamo Extended A A960~A97C Hangul Jamo Extended B D7B0~D7FB Hangul Syllables AC00~D7A3 Hangul Compatibility Jamo 3131~318E Halfwidth Hangul variants FFA1~FFDC *PUA (Private User Area) E000~F8FF 설명 첫가끝 조합한글자소들 ( 옛한글자소포함 ) { 초성 + 중성또는초성 + 중성 + 종성 }. 초성 124자중성 94자종성 137자현대한글 11,172자주로전각처리 ( 옛한글자모포함.) 자음 64자, 모음 29자반각한글자소. ( 코드호환영역 ) 자음 30자, 모음 21자 ( 비표준 ) 옛한글글자마디 : 5,277 초중종자소 : 359자불완전음절 : 22 (()+ 중 + 종 ) 통해서만자소분리가가능하기에그리효율이좋은방식은아니라고할수있다. 유니코드첫가끝방식의옛한글표준이정착되면자연스럽게그역할을다했다고할수있을것이나, 아직까지많은데이터가 PUA로구축되어있어한동안같이운용될것으로보인다. 가능한한이른시일안에 PUA자료들은모두첫가끝표준형식으로전환하는게바람직하다. 6. 유니코드첫가끝옛한글 유니코드에옛한글자소가들어간것은유니코드초기 (2.0) 부터들어가있었으나, 열린조합방식으로는실용적인시스템으로구현하는것이힘들었다. 특히 3중자소를자유롭게결합하고 9개의자소를묶어서글자하나로표시하는것은현실성이없는방식이었다. 따라서복합자소 ( 특히 3중자소 ) 를한개의자소처럼운영할수있도록하는방안이강구되었고, 이후유니코드 5.2(2009.10) 에서옛한글자소 117자가추가됨으로써실용적인옛한글시스템이가능해졌다. 228 정신문화연구제 41 권제 4 호
표13 유니코드 5.2의한글자소수 한글자모 5.2에서추가된 ( 옛 ) 한글자모 자소수 초성 90 + 34 124자 중성 66 + 28 94자 종성 82 + 55 137자 초 + 중 + 종 + 117 355자 이것은전혀별개의사건으로시작되었는데, 코드를자소단위로풀고조립하는정규화 (Normalization) 과정에서옛한글과현대한글이혼용되는문제가제기되어이에대한해결책으로복합자소코드의필요성이생겼고, 이에따라복합자소들을코드로추가하게된다. 한글조합시 초 + 중 또는 초 + 중 + 종 각하나씩최대 3개의자소만으로한글을구성하는방법을 첫가끝방식 ( 첫소리 + 가운데소리 + 끝소리 ) 이라부르는데, 첫가끝방식으로만들수있는한글 ( 현대한글옛한글포함 ) 은 160여만자 (=124 94 138, 유니코드 5.2 기준 ) 가가능하다. 9) 유니코드의추가된옛한글자소들은고려대학교비표준문자등록센터의데이터를바탕으로 117자가선정 10) 되었다. 옛한글자소들이배치된영역 (Hangul Jamo Extended A/B) 이몇개로나눠진것은, 유니코드 BMP영역에글자가할당되지않고비어있는영역이거의없는상황이어서최선의선택이었다고본다. 만약 BMP영역에배정받지못하고, 16비트가아닌확장영역쪽에배정이되었다면, 자소단위처리에서상당한비효율이발생했을것이자명하다. 다행히모든자소가 BMP영역에있어서, 각자소당 16비트로처리가능하다. 자소들의순서가바뀌어있어정렬이쉽지않다는지적이있다. 그러나대부분다른언어에서도코드기준으로정렬하는순서가사전순서와맞지않는다. 영어도코드순서와사전순서가다르다. 옛한글자소가확장됨으로써, 쓸만한옛한글시스템이갖춰졌다는것은큰의의를갖는다. 실제국제표준의지위를가진옛한글코드이기에, 그데이터들의영속성이보장될것이고, 옛한글분석연구도구들도 9) 일반적으로 첫가끝방식 이라하면옛한글을포함한자소조합방식을이른다. 10) 정우봉, 추가옛한글자소선정과정, 21 세기세종계획문자코드표준화연구 ( 국립국어원 2006), 9 12 쪽. 옛한글코드의변천사 229
효율적으로개발및고도화될것이다. 또여러기기들, 특히모바일과웹에서옛한글을안정적으로지원하는방향으로발전할것이다. 표 14 유니코드한글자소와확장한글자소배열 [_] 5.2 에서추가된자소그림출처 : www/unicode.org/charts/ 230 정신문화연구제 41 권제 4 호
Ⅲ. 옛한글코드운용과입출력 유니코드에서옛한글을사용하는방식은 첫가끝옛한글 방식과 PUA 옛한글 방식두가지가있다. 표 15 유니코드내옛한글운용방법 옛한글운용방법 글자마디 11,172 자 + 첫가끝조합옛한글 글자마디 11,172 자 + PUA 옛한글 표준 표준규격 비표준규격 두방식다유니코드에서옛한글을운용하는방법이고, 옛한글은서로다른독립적인영역에존재해서두가지종류의데이터가공존할수있다. 그러나전혀다른두방식의데이터가한개의문서에공존한다는것은데이터의일관성을떨어뜨려혼재하는상황이된다. 즉글자모양만보고는어느방식의옛한글인지구분이되지않고, 검색정렬등데이터가공에혼란이발생하여올바로운용할수없거나엄청난비효율을감수해야한다. KS X 1026 1은유니코드의한글운용방식에대해정의하고있다. 요약하면, 다음과같다. 현대한글은 11,172 자글자마디를사용하고, 그외는첫가끝방식을사용한다. 즉첫가끝방식으로현대한글처리가가능해도, 표준규격은아니라는것이다. 또옛한글은무조건첫가끝방식으로운용하라는것이고, PUA 방식은제외하라는뜻이다. 옛한글데이터에대해명확히어느방식인지확인할필요가있고, 가능하면표준규격인 첫가끝옛한글 방식으로전환하는것이바람직하다. 옛한글관련작업을하려면, 우선첫가끝데이터가올바로나타나는지확인해야한다. 옛한글이제대로나타내려면첫가끝방식의옛한글을지원하는폰트 ( 글꼴 ) 로설정되어야한다. 즉 초중두개의연속된자소 또는 초중종세개의연속된자소 를한개의글자로표현할수있는능력은대부분폰트의능력 11) 이고, 그러한처리가된폰트로설정되어야한다. 이런폰트들은개발비용이많이들기때문에흔치는않다. 옛한글코드의변천사 231
표16 첫가끝옛한글을지원하는폰트 (2018.7월기준 ) 배포업체 폰트이름 한글과컴퓨터 함초롬바탕, 함초롬돋움 네이버 나눔바른고딕옛한글 오픈폰트 은글꼴, 구글, Adobe 본고딕, 본명조 Noto Sans CJK 웹서비스에 HTML로구현할때, 첫가끝이가능한폰트를정확히지정하면웹브라우저에서도조합된옛한글을볼수있다. 폰트가제대로지원하지못하면, 첫가끝자소들이조합되지않은채나눠져서보일것이다. 표 17 폰트의옛한글지원여부에따라 HTML 에서출력예 웹브라우저에서.html 출력예 첫가끝옛한글을표시못하는글꼴 첫가끝옛한글을표시할수있는글꼴 문서편집기에서옛한글첫가끝방식 ( 이하첫가끝 ) 지원은 글은 2010, MS워드는 2002 확장팩을통해서지원한다. 옛한글편집기로주로쓰이는 글의경우, 각버전에따라생성된옛한글의코드방식이다르다. 표 18 글 (HWP) 버전에따라생성된옛한글코드 글버전 HWP 3.0, HWP 96, HWP 97 HWP 2002~HWP 2007 HWP 2010~(HWP 2018)~ 생성된옛한글코드 HNC 3.x 코드옛한글 (==2.x) 유니코드 PUA 옛한글유니코드첫가끝옛한글 11) 한글폰트파일 (.ttf) 에자소들의조합규칙과조합위치정보를담은 GSUB 테이블 이포함되어있어야옛한글을예쁘게조합하여표현할수있다. 232 정신문화연구제 41 권제 4 호
글97 이전에생성된.hwp 파일의경우최근 글버전 (2010 2018) 은첫가끝으로자동변환해서읽는다. 그러나 2000년이후 글2007이전버전으로생성된.hwp파일의경우, 유니코드 PUA로된옛한글글자마디데이터는변환없이그대로읽어들인다 12). 첫가끝옛한글 로변환하고자하면, HWP 설치할때에같이제공되는옛한글변환도구를이용해서변환할수있다. HncPUAConverter.exe (HWP2010 ) :PUA 옛한글코드 ( 글자마디 ) 를찾아서표준방식첫가끝옛한글로변환 (File 단위변환 ) 표 19 글에서옛한글데이터포함한.hwp 파일열기.hwp 파일글버전 HWP 3.0 ~ HWP 97 HWP 2002 ~ HWP 2007 HWP 2010 ~ HWP 2018 HWP 97 이전생성한.hwp파일 (HNC 코드 3.x) [ HNC코드로불러오기 ] 자동변환 : PUA 옛한글로. 자동변환 : 첫가끝옛한글로. HWP 2007 이하버전에서 HWP 2010 이후버전에서 생성한.hwp 파일 생성한.hwp파일 (PUA 옛한글 ) ( 첫가끝옛한글 ) [ PUA로불러오기 ] [ PUA로불러오기 ] ( 권고 : 옛한글컨버터 로변환 ) 첫가끝 읽지못함. ( 유니코드처리불가 ) [ 첫가끝코드유지 ] ( 옛한글출력은폰트따라 ) [ 첫가끝으로불러오기 ] 참고 : 글패치 (2018.6 이후 ) HWP 패치에서 옛한글변환기 를 Addon으로메뉴에등록가능. 문서에사용된 PUA옛한글을찾아서첫가끝으로바꿀수있음. [PUA 옛한글찾기 ], [ 첫가끝옛한글로변환 ] HWP 이외타응용프로그램에서첫가끝옛한글을입력할수있도록, 옛한글입력기인 HncIME 2018( 윈도우 ) 을별도로배포. 12) 글의 PUA 옛한글변환정책 : 사용자의의도없이임의로변환하지않는다. 옛한글코드의변천사 233
그림 3 글 2018 의옛한글 Addon 메뉴 Ⅳ. 표준코드의의의와전망 현재옛한글코드는국제표준규격이라는충분히좋은지위에있다. 이는비로소옛한글에대한연구가국제적으로공유될수있음을의미한다. 약간의이슈가있기는하지만, 비로소남북한과중국일본학자들까지도옛한글과옛문헌연구를공유하고교류할수있는상황이되었음을의미한다. 이전에 PUA 방식으로작성되었을때는, 국내용코드정의여서, 국제적으로데이터를공유하는데한계가있었다. 첫가끝방식의의미는옛한글의범위를이미알려진옛문헌으로한정하지는않는다. 첫가끝방식은이론적으로약 160만자정도를표현할수있다. PUA 방식은알려진글자들로만처리하는반면, 첫가끝방식은조합가능한글자들모두가처리가능하다. 즉아직발견되지않은문헌에서새로나올글자나, 또는문헌상표기는없지만필요한글자표기할수있다. 옛한글용례에는중세외국어 ( 중국, 몽골, 일본, 여진 ) 통역교재와개화기영어교재표기등에도많은출처를가지고있다. 첫가끝방식은중세와근대문헌이아닌앞으로연구될제3세계외국어 ( 베트남, 태국등동남아및아랍어, 아프리카어등 ) 표기에도확장할수있는가능성을연것이다. 예로최근의외국어학습교재에도이러한표기가이용되는경우가종종있다. 제3세계언어를표기할때는문헌에출처가없는옛한글도얼마든지나올수있다. 즉기존의 PUA 방식으로는대응할수없는경우도첫가끝은대응할수있는것이다. 또방언의경우기록되지않은경우가많이있다. 방언은분명우리말이 234 정신문화연구제 41 권제 4 호
지만, 기록된자료가많지않고, 또지방특유의음가의경우현대자모표기보다옛한글자모로더근접하게표기할수있는경우도있을것이다. 따라서옛한글의응용범위를옛문헌뿐아니라현대와미래자료까지확장할수있다는의미가있다. 옛문헌을디지털화하는데는옛한글코드외여러가지요소가필요하다. 한자는물론이고, 방점 13) 과한글이전의이두구결향찰등여러한국어표기등여러가지가있다. 그러나이두, 구결등은거의표준화논의가진행되지않고있다. 반면한자는한중일통합한자 14) 로계속표준에활발히추가되고있다. 옛문헌을깊이있게연구하려면가능한한많은정보를디지털화해야한다. 옛문헌에는문자 (?) 외기호들도많이있을것이고, 이를기록하는방법도필요하다. 일례로최근중국은고전악보에표기하는음계를표준으로등록했고, 갑골문의문양도등록했다. 우리나라의옛문헌들도문자외기호들에대한연구와표준화노력이필요하다. 이는인문분야옛문헌전문가들의연구와도움이꼭필요한부분이다. Ⅴ. 맺음말 유니코드가확장되고옛한글표준이정해진지약 10년이지났다. 여러가지이유가있겠지만아직옛한글표준에대해잘알려져있지않고, 또각종데이터베이스에서일괄적으로적용되고있지도않다. 아울러그것이적용된제품또한많지않은실정이다. 이러한표준방식과비표준방식의공존은매우많은혼란을일으킨다. 오랜세월축적되어온데이터라면더욱문제가클것이다. 이런혼재의대표적인문제가검색과정렬의오류이다. 검색과정렬이되지않는데이터베이스의쓸모를찾기란어렵다. 옛한글코드의표준이제정된이후 10년동안첫가끝표준방식의커다란단점이제기된적은거의없다. 다만비표준화로인한다양한 13) 방점 ( 입성, 거성 ) 은유니코드표준에포함되어있다. 14) CJKV 통합한자 : 한국, 중국, 일본, 대만, 베트남까지한자기록을가진나라들이 IRG 위원회합의를통해서유니코드에한자를추가하고있다. 옛한글코드의변천사 235
문제점들은산발적으로제기되어왔다. 비표준코드를지원하는각종프로그램을사용할때생기는당연한오류, 비표준코드를표준코드로전환할때생길수있는데이터오류등이그것이다. 그러나이러한문제는극복가능한것이며극복해야할것들일뿐이다. 옛한글표준이하루빨리정착되어야만전세계의많은기계에서자연스럽게옛한글이구현될수있을것이다. 표준방식을이용한옛한글데이터와이에대한연구성과물들이많아지길기대한다. 236 정신문화연구제 41 권제 4 호
참고문헌 1. 단행본김병선, 컴퓨터자판옛자모배열연구. 국립국어연구원, 1993. 김흥규, 한글옛글자의컴퓨터처리효율화방안과이에대한고시조데이터베이스시스템개발연구. 한국어전산학회, 1992. 정우봉, 21세기세종계획문자코드표준화연구. 국립국어원, 2006. 홍윤표, 한글코드에관한연구. 국립국어연구원, 1995. 2. 논문이승재, 한국어정보자료의구축과활용방안연구. 서강대학교박사학위논문, 2003. 3. 기타자료 KSC 5601 1992 정보교환용부호계, 2바이트조합형부호계, 1992 삼보컴퓨터, 한글비디오보드 ( 고어 ) 사용설명서. 1991 양왕성, 옛한글코드와표준코드. 훈민정음학회 ( 강연자료 ), 2018. 유니코드, www.unicode.org/charchart/, Unicode 11.0 Character Code Charts. 한글과컴퓨터, 글사용자메뉴얼. 1993. 옛한글코드의변천사 237
국문초록 현재우리가쓰는대부분의 IT 기기에서한글은매우효율적인입출력구조를가지고있어, 크게불편함을느끼지않는다. 반면옛한글은아직실용적인수준으로는미흡하며, 많은기기들이옛한글규격을지원하기위해서는시간이더필요한상황이다. 옛한글을지원하기위한규격은 1980년대부터있어왔고, 몇차례의큰변화를겪으며옛한글코드도국제문자코드에까지반영되었다. 한글코드들에서옛한글을지원하기위한어떤노력들이있었는지살펴보고, 최근의옛한글코드에대한표준규격과올바른이용에대해서도살펴본다. 앞으로많은기기들이옛한글코드를지원하여, 옛한글들도현대한글만큼이나혼란없이자연스럽게쓸수있는환경이되길기대한다. 투고일 2018. 6. 20. 심사일 2018. 7. 15. 게재확정일 2018. 8. 27. 주제어 (keyword) 유니코드 (Unicode), 옛한글 (old Hangul), 현대한글 (modern Hangul), 옛한글코드 (old Hangul code), 현대한글코드 (modern Hangul code), 조합형한글자모 (conjoining Hangul Jamo characters), 한글완성형글자마디 (precomposed modern Hangul syllables)
Abstracts A Study on Changes in the Old Hangul Code Yang, Wang sung Modern Hangul is very efficient to input and output on most IT devices. On the other hand, the input of old Hangul is not sufficient and it is not practical to input and output on the devices. More work is required to facilitate the use of old Hangul on many devices. The standard code of old Hangul has been on the system since the 1980s. A few rounds of changes have occurred to the standard and the changes are reflected in the International Character Set. My study examines the trajectory of changes in the old Hangul code as well as the standard code and its correct use. Many devices will need to support the old Hangul code in the future. I hope that old Hangul will be made as seemless as modern Hangul to use on the system.