KS X 1001

In the following article, KS X 1001 will be addressed from a comprehensive and detailed perspective, with the aim of providing a deep understanding on this topic. Different aspects related to KS X 1001 will be analyzed, including its origin, impact on current society, possible solutions or future implications. In addition, different opinions and perspectives from experts on the topic will be presented, in order to enrich the debate and provide a more complete vision. The purpose of this article is to promote knowledge and reflection around KS X 1001, with the intention of promoting a broader and more critical understanding of this topic.

KS X 1001
MIME / IANAks_c_5601-1987
Alias(es)KS C 5601
Language(s)
Partial support:
StandardKS X 1001
ClassificationISO-2022-compatible DBCS, CJK encoding
Encoding formats
Preceded byN-byte Hangul code (KS C 5601-1974)
Other related encoding(s)Associated supplements: KS X 1002
Other Hangul ISO 2022 DBCSes:
Other CJK ISO 2022 DBCSes:

KS X 1001, "Code for Information Interchange (Hangul and Hanja)", formerly called KS C 5601, is a South Korean coded character set standard to represent Hangul and Hanja characters on a computer.

KS X 1001 is encoded by the most common legacy (pre-Unicode) character encodings for Korean, including EUC-KR and Microsoft's Unified Hangul Code (UHC). It contains Korean Hangul syllables, CJK ideographs (Hanja), Greek, Cyrillic, Japanese (Hiragana and Katakana) and some other characters.

KS X 1001 is arranged as a 94×94 table, following the structure of 2-byte code words in ISO 2022 and EUC. Therefore, its code points are pairs of integers 1–94. However, some encodings (UHC and Johab), in addition to providing codes for every code point, provide additional codes for characters otherwise representable only as code point sequences.

History

This standard was previously known as KS C 5601. There have been several revisions of this standard. For example, there were revisions in 1987, 1992, 1998 and 2002.

The present, double-byte, Wansung (완성, Wanseong, 'precomposing') character set was standardised by the third edition of KS C 5601, which was published in 1986. It is an ISO 2022 compatible encoding, typically used in EUC form, which assigns double-byte codes for non-Hangul, Hangul jamo, and the most common Hangul syllables, in contrast to Johab (조합, Johap, 'combining') which is not compatible with ISO 2022, but assigns double-byte codes to all Hangul syllables using modern jamo. Wansung is technically a variable-length encoding, allowing other syllables to be represented with eight-byte sequences (using the jamo and Hangul Filler character), but this feature is not always implemented.

The earliest edition of KS C 5601, published in 1974, defined a variable-length 7-bit character set which assigned single-byte code points to 51 basic Hangul jamo, somewhat analogously to JIS C 6220, in an encoding known as "N-byte Hangul". The second edition, published in 1982, retained the main character set from the 1974 edition but defined two supplementary sets, including a version of Johab. Neither edition was adopted as widely as intended.

Wansung was kept unchanged in the 1987 and 1992 editions. In the 1992 edition, additional annex material was added, including the definition of the Johab encoding in annex 3, and the older N-byte Hangul encoding in annex 4. It was published in response to industry use of Johab as a competing encoding to Wansung, being used at the time by Hangul Word Processor. Following the introduction of Unified Hangul Code by Microsoft in Windows 95, and Hangul Word Processor abandoning Johab in favour of Unicode in 2000, Johab ceased to be commonly used.

Encodings

(A screenshot of an old version of Firefox showing Big5, GB2312, GBK, GB18030, HZ, ISO-2022-CN, Big5-HKSCS, EUC-TW, EUC-JP, ISO-2022-JP, Shift_JIS, EUC-KR, UHC, Johab and ISO-2022-KR as available encodings under the CJK sub-menu.)
Various CJK encodings, including four based on KS X 1001, supported by Mozilla Firefox as of 2004. (This support has been reduced in later versions to avoid certain cross site scripting attacks.)

Encoding schemes of KS X 1001 include EUC-KR (in both ASCII and ISO 646-KR based variants, the latter of which includes a won currency sign () at byte 0x5C rather than a backslash) and ISO-2022-KR, as well as ISO-2022-JP-2 (which also encodes JIS X 0208 and JIS X 0212). These all have the drawback that they only assign codes for the 2350 precomposed Hangul syllables which have their own KS X 1001 codepoints (out of 11172 in total, not counting those using obsolete jamo), and require others to use eight-byte composition sequences, which are not supported by some partial implementations of the standard.

The Johab encoding (stipulated in annex 3 of the 1992 version of the standard) and the EUC-KR superset known as Unified Hangul Code (UHC, also called Windows-949) provide single codes for all 11172 Hangul syllables. ISO-2022-KR and Johab are rarely used. Some operating systems extend this standard in other non-uniform ways, e.g. the EUC-KR extensions MacKorean on the classic Mac OS, and IBM-949 by IBM.

Hangul Filler

The Hangul Filler character is used to introduce eight-byte Hangul composition sequences and to stand in for an absent element (usually an empty final) in such a sequence.

Unicode includes the Wansung code Hangul Filler in the Hangul Compatibility Jamo block for round-trip compatibility, but uses its own system (with its own, differently used, filler characters) for composing Hangul. The KS X 1001 Hangul composition system is not used in Unicode, and the filler renders merely as an empty space; KS X 1001 composition sequences using modern jamo may be mapped to precomposed characters in Unicode. This is not usually done with Unified Hangul Code.

For round-trip compatibility, Unicode also includes the N-byte Hangul code Hangul Filler separately in the Halfwidth and Fullwidth Forms block, named the "Halfwidth Hangul Filler".

N-byte Hangul code

This is the N-byte Hangul code, as specified by KS C 5601-1974 and by annex 4 of KS C 5601–1992. The second half of IBM's Code page 1040 is a superset of this, assigning the characters ¢¬\~ (although not £) to the same locations as in Code page 1041, while the unextended N-Byte Hangul (besides C0 control code replacement graphics in some usage contexts, shared with IBM-1040) is Code page 891. Character 0x40/0xC0 is a Hangul Filler (see above), used in combining sequences.

Similarly to its Japanese counterpart JIS C 6220 (JIS X 0201), N-byte Hangul code could be used as a 7-bit encoding, with character allocations over the range 0x40 through 0x7C. The chart below shows the code in an 8-bit environment with the high bit set (i.e. over 0xC0 through 0xFC), as it is used in e.g. code page 891 or 1040.

KS C 5601-1974 / N-byte Hangul
0 1 2 3 4 5 6 7 8 9 A B C D E F
8x
9x
Ax
Bx
Cx HWHF
Dx
Ex
Fx

Wansung code charts

Following are the code charts for KS X 1001 in Wansung layout. Where a pair of hexadecimal numbers is given, the smaller is used when encoded over GL (0x21-0x7E), as in ISO-2022-KR when the Korean set has been shifted to, and the larger is used in the more typical case of it being encoded over GR (0xA1-0xFE), as in EUC-KR or UHC. Johab changes the arrangement to encode all 11172 Hangul clusters separately and in order.

To illustrate vendor differences in implementation, multiple Unicode mappings are shown for some characters. Apple's HangulTalk extensions to the Wansung plane (i.e. where both bytes are in the 0xA1-0xFE range) are shown, but other HangulTalk extension ranges are not. The additional codes for composed syllables in Unified Hangul Code, and IBM's extensions in IBM-949, are also not shown, since both fall outside of the Wansung plane.

Lead bytes

KS X 1001 (Wansung code)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax SP 1-_ 2-_ 3-_ 4-_ 5-_ 6-_ 7-_ 8-_ 9-_ 10-_ 11-_ 12-_ 13-_ 14-_ 15-_
3x/Bx 16-_ 17-_ 18-_ 19-_ 20-_ 21-_ 22-_ 23-_ 24-_ 25-_ 26-_ 27-_ 28-_ 29-_ 30-_ 31-_
4x/Cx 32-_ 33-_ 34-_ 35-_ 36-_ 37-_ 38-_ 39-_ 40-_ 41-_ 42-_ 43-_ 44-_ 45-_ 46-_ 47-_
5x/Dx 48-_ 49-_ 50-_ 51-_ 52-_ 53-_ 54-_ 55-_ 56-_ 57-_ 58-_ 59-_ 60-_ 61-_ 62-_ 63-_
6x/Ex 64-_ 65-_ 66-_ 67-_ 68-_ 69-_ 70-_ 71-_ 72-_ 73-_ 74-_ 75-_ 76-_ 77-_ 78-_ 79-_
7x/Fx 80-_ 81-_ 82-_ 83-_ 84-_ 85-_ 86-_ 87-_ 88-_ 89-_ 90-_ 91-_ 92-_ 93-_ 94-_ DEL

Non-Hanja non-precomposed sets

The rows 41 and 94 may be used for user-defined purposes.

Character set 0x21 / 0xA1 (row number 1, special characters)

This set contains punctuation and other symbols, excluding punctuation present in KS X 1003 (which is included in row 3). Encodings which combine KS X 1001 with single-byte ASCII may use alternative Unicode mapping to the Halfwidth and Fullwidth Forms block for the backslash. Unicode mapping of the wave dash (tilde dash) also differs between vendors, and may be U+301C (favoured by IBM and Apple) or U+223C (favoured by Microsoft). Compare the similar but not identical handling of the JIS wave dash, and the handling of the tilde in the next row.

Except for the backslash, if two mappings are shown below, the first is used by Apple and the second is used by Microsoft.

KS X 1001 (prefixed with 0x21 / 0xA1)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax IDSP · ¨ /SHY / / \/ /
3x/Bx ± ×
4x/Cx ÷ ° ¢/ £/ ¥/
5x/Dx §
6x/Ex
7x/Fx ¬/

Character set 0x22 / 0xA2 (row number 2, special characters)

This set contains additional punctuation and symbols. Similarly to the tilde character in the previous row, different mappings are used by Apple and Microsoft for the tilde character in this row (U+02DC by Apple, FF5E by Microsoft), which is intended to be shown as a raised tilde, whereas the tilde in the previous row is intended to be shown in-line at dash height. Mapping of the circled dot also differs.

The euro and registered trademark sign were added to the standard in 1998, while the Korean postal mark (㉾) was added in 2002. These three code points, as with the still-unused code points, have been put to use for other, non-standard, purposes by vendors, e.g. for boxed list markers by Apple. Microsoft updated its Unified Hangul Code implementation to add the 1998 additions including the euro sign, but did not add the Korean postal mark when it was added to the standard.

KS X 1001 (prefixed with 0x22 / 0xA2)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax ´ ˜/ ˇ ˘ ˝ ˚ ˙ ¸ ˛ ¡ ¿
3x/Bx ː ¤
4x/Cx /
5x/Dx
6x/Ex /1 ®/2 /3 4 5 6 7 8 9
7x/Fx 𝄂 𝄃
  Additions by Apple
  Later standard additions colliding with Apple additions

Character set 0x23 / 0xA3 (row number 3, basic Latin / ISO 646-KR)

This set corresponds to KS X 1003 (the ISO 646 variant for Korean, a similar set to ASCII), but as two-byte codes preceded by 0x23 (or 0xA3 in GR-invoked (EUC) form). It includes the English alphabet / Basic Latin alphabet, western Arabic numerals and punctuation.

Compare the Roman set of JIS X 0201, which differs by including a Yen sign rather than a Won sign. Contrast the third rows of KPS 9566 and of JIS X 0208, which follow the ISO 646 layout but only include letters and digits.

KS X 1001 (prefixed with 0x23 / 0xA3); non-fullwidth mappings
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax ! " # $ % & ' ( ) * + , - . /
3x/Bx 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
4x/Cx @ A B C D E F G H I J K L M N O
5x/Dx P Q R S T U V W X Y Z [ ] ^ _
6x/Ex ` a b c d e f g h i j k l m n o
7x/Fx p q r s t u v w x y z { | }

Encodings such as EUC-KR and UHC combine KS X 1001 with single-byte ASCII or KS X 1003, and hence use alternative Unicode mappings to the Halfwidth and Fullwidth Forms block for the double-byte representations of these characters.

KS X 1001 (prefixed with 0x23 / 0xA3); fullwidth mappings
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
3x/Bx
4x/Cx
5x/Dx _
6x/Ex
7x/Fx

Character set 0x24 / 0xA4 (row number 4, Hangul jamo)

This set includes modern Hangul consonants, followed by vowels, both ordered by South Korean collation customs, followed by obsolete consonants. When used individually, these characters map to the Unicode Hangul Compatibility Jamo block, and do not have a one-to-one mapping with the position-specific characters in the Hangul Jamo block. Compare with row 4 of the North Korean KPS 9566. Character 04-52 is a Hangul Filler (see above), used in combining sequences.

KS X 1001 (prefixed with 0x24 / 0xA4)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
3131

3132

3133

3134

3135

3136

3137

3138

3139

313A

313B

313C

313D

313E

313F
3x/Bx
3140

3141

3142

3143

3144

3145

3146

3147

3148

3149

314A

314B

314C

314D

314E

314F
4x/Cx
3150

3151

3152

3153

3154

3155

3156

3157

3158

3159

315A

315B

315C

315D

315E

315F
5x/Dx
3160

3161

3162

3163
HF
3164

3165

3166

3167

3168

3169

316A

316B

316C

316D

316E

316F
6x/Ex
3170

3171

3172

3173

3174

3175

3176

3177

3178

3179

317A

317B

317C

317D

317E

317F
7x/Fx
3180

3181

3182

3183

3184

3185

3186

3187

3188

3189

318A

318B

318C

318D

318E

Character set 0x25 / 0xA5 (row number 5, Roman numerals and Greek)

This set contains Roman numerals and basic support for the Greek alphabet, without diacritics or the final sigma. Apple includes some additional punctuation in this row, as well as some black circled list markers continuing from those in row 6.

Contrast row 6 of KPS 9566, which includes the same characters but in a different layout.

KS X 1001 (prefixed with 0x25 / 0xA5)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
3x/Bx
4x/Cx Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο
5x/Dx Π Ρ Σ Τ Υ Φ Χ Ψ Ω !︀ 。︀
6x/Ex α β γ δ ε ζ η θ ι κ λ μ ν ξ ο
7x/Fx π ρ σ τ υ φ χ ψ ω (27) (28) (29) (30)
  Additions by Apple

Character set 0x26 / 0xA6 (row number 6, box drawing)

This row contains characters for drawing boxes in a semigraphic context. Apple also includes some black circled list markers.

KS X 1001 (prefixed with 0x26 / 0xA6)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
3x/Bx
4x/Cx
5x/Dx
6x/Ex
7x/Fx (21) (22) (23) (24) (25) (26)
  Additions by Apple

Character set 0x27 / 0xA7 (row number 7, unit symbols)

This row contains unit symbols as single characters, including those which consist of multiple letters. Apple also includes some circled list markers continuing from those in row 8.

Compare and contrast with the repertoire of unit symbols included in row 8 of KPS 9566.

KS X 1001 (prefixed with 0x27 / 0xA7)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
3x/Bx
4x/Cx
5x/Dx
6x/Ex
7x/Fx
  Additions by Apple

Character set 0x28 / 0xA8 (row number 8, extended Latin, encircled, fractions)

KS X 1001 (prefixed with 0x28 / 0xA8)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax Æ Ð ª Ħ IJ Ŀ Ł Ø Œ º Þ Ŧ Ŋ
3x/Bx
4x/Cx
5x/Dx
6x/Ex
7x/Fx ½ ¼ ¾

Character set 0x29 / 0xA9 (row number 9, extended Latin, encircled, superscript and subscript)

KS X 1001 (prefixed with 0x29 / 0xA9)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax æ đ ð ħ ı ij ĸ ŀ ł ø œ ß þ ŧ ŋ
3x/Bx ʼn
4x/Cx
5x/Dx
6x/Ex
7x/Fx ¹ ² ³

Character set 0x2A / 0xAA (row number 10, Hiragana)

This set contains Hiragana for writing the Japanese language. Apple also includes some bracketed list markers continuing from those in row 9.

Compare row 10 of KPS 9566, which uses the same layout. Compare and contrast row 4 of JIS X 0208, which also uses the same layout, but in a different row.

KS X 1001 (prefixed with 0x2A / 0xAA)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
3x/Bx
4x/Cx
5x/Dx
6x/Ex
7x/Fx (21) (22) (23) (24) (25) (26)
  Additions by Apple

Character set 0x2B / 0xAB (row number 11, Katakana)

This set contains katakana for writing the Japanese language. However, the Japanese long vowel mark, which is used in katakana text and included in row 1 of JIS X 0208, is not included. Apple also includes some bracketed list markers continuing from those in rows 9 and 10.

Compare row 11 of KPS 9566, which uses the same layout. Compare and contrast row 5 of JIS X 0208, which also uses the same layout, but in a different row.

KS X 1001 (prefixed with 0x2B / 0xAB)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
3x/Bx
4x/Cx
5x/Dx
6x/Ex
7x/Fx (27) (28) (29) (30)
  Additions by Apple

Character set 0x2C / 0xAC (row number 12, Cyrillic)

This set contains the modern Russian alphabet, and is not necessarily sufficient to represent other forms of the Cyrillic script. Apple also includes some black boxed list markers.

Compare row 5 of KPS 9566 and row 7 of JIS X 0208, which use the same layout (but in a different row).

KS X 1001 (prefixed with 0x2C / 0xAC)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax А Б В Г Д Е Ё Ж З И Й К Л М Н
3x/Bx О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э
4x/Cx Ю Я 1 2 3 4 5 6 7 8 9
5x/Dx а б в г д е ё ж з и й к л м н
6x/Ex о п р с т у ф х ц ч ш щ ъ ы ь э
7x/Fx ю я
  Additions by Apple

Extended character set 0x2D / 0xAD (row number 13, Apple additional punctuation)

Apple additions to KS X 1001 (prefixed with 0x2D / 0xAD)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax 🠩
3x/Bx !

Precomposed Hangul sets (rows number 16 through 40)

Code points for precomposed Hangul are included in a continuous sorted block between code points 16-01 and 40-94 inclusive. Not all possible syllable clusters are included in this range. Compare the different ordering and availability in KPS 9566.

Initial+vowel+final syllables 뢨, 썅, 쏀, 쓩, and 쭁 are included but their initial+vowel counterparts 뢔, 쌰, 쎼, 쓔, and 쬬 are not. This causes a problem with inputting, because input methods have to go through an initial+vowel syllable first in order to get to an initial+vowel+final syllable (e.g. ㅎ → 하 → 한).

Those which are not listed here may be represented using eight-byte composition sequences. All other modern-jamo clusters are assigned codes elsewhere by UHC. All possible modern-jamo clusters are assigned codes by Johab.

KS X 1001 (precomposed Hangul syllables)
0 1 2 3 4 5 6 7 8 9 A B C D E F
302x/B0Ax
AC00

AC01

AC04

AC07

AC08

AC09

AC0A

AC10

AC11

AC12

AC13

AC14

AC15

AC16

AC17
303x/B0Bx
AC19

AC1A

AC1B

AC1C

AC1D

AC20

AC24

AC2C

AC2D

AC2F

AC30

AC31

AC38

AC39

AC3C

AC40
304x/B0Cx
AC4B

AC4D

AC54

AC58

AC5C

AC70

AC71

AC74

AC77

AC78

AC7A

AC80

AC81

AC83

AC84

AC85
305x/B0Dx
AC86

AC89

AC8A

AC8B

AC8C

AC90

AC94

AC9C

AC9D

AC9F

ACA0

ACA1

ACA8

ACA9

ACAA

ACAC
306x/B0Ex
ACAF

ACB0

ACB8

ACB9

ACBB

ACBC

ACBD

ACC1

ACC4

ACC8

ACCC

ACD5

ACD7

ACE0

ACE1

ACE4
307x/B0Fx
ACE7

ACE8

ACEA

ACEC

ACEF

ACF0

ACF1

ACF3

ACF5

ACF6

ACFC

ACFD

AD00

AD04

AD06
312x/B1Ax
AD0C

AD0D

AD0F

AD11

AD18

AD1C

AD20

AD29

AD2C

AD2D

AD34

AD35

AD38

AD3C

AD44
313x/B1Bx
AD45

AD47

AD49

AD50

AD54

AD58

AD61

AD63

AD6C

AD6D

AD70

AD73

AD74

AD75

AD76

AD7B
314x/B1Cx
AD7C

AD7D
굿
AD7F

AD81

AD82

AD88

AD89

AD8C

AD90

AD9C

AD9D

ADA4

ADB7

ADC0

ADC1

ADC4
315x/B1Dx
ADC8

ADD0

ADD1

ADD3

ADDC

ADE0

ADE4

ADF8

ADF9

ADFC
귿
ADFF

AE00

AE01

AE08

AE09

AE0B
316x/B1Ex
AE0D

AE14

AE30

AE31

AE34

AE37

AE38

AE3A

AE40

AE41

AE43

AE45

AE46

AE4A

AE4C

AE4D
317x/B1Fx
AE4E

AE50

AE54

AE56

AE5C

AE5D

AE5F

AE60

AE61

AE65

AE68

AE69

AE6C

AE70

AE78
322x/B2Ax
AE79

AE7B

AE7C

AE7D

AE84

AE85

AE8C

AEBC

AEBD

AEBE

AEC0

AEC4

AECC

AECD

AECF
323x/B2Bx
AED0

AED1

AED8

AED9

AEDC

AEE8

AEEB

AEED

AEF4

AEF8

AEFC

AF07

AF08

AF0D

AF10

AF2C
324x/B2Cx
AF2D

AF30

AF32

AF34

AF3C

AF3D
꼿
AF3F

AF41

AF42

AF43

AF48

AF49

AF50

AF5C

AF5D

AF64
325x/B2Dx
AF65

AF79

AF80

AF84

AF88

AF90

AF91

AF95

AF9C

AFB8

AFB9

AFBC

AFC0

AFC7

AFC8

AFC9
326x/B2Ex
AFCB

AFCD

AFCE

AFD4

AFDC

AFE8

AFE9

AFF0

AFF1

AFF4

AFF8
뀀
B000

B001

B004

B00C

B010
327x/B2Fx
B014

B01C

B01D

B028

B044

B045

B048

B04A

B04C

B04E

B053

B054

B055

B057

B059
332x/B3Ax
B05D

B07C

B07D

B080

B084

B08C

B08D

B08F

B091

B098

B099

B09A

B09C

B09F

B0A0
333x/B3Bx
B0A1

B0A2

B0A8

B0A9

B0AB

B0AC

B0AD

B0AE

B0AF

B0B1

B0B3

B0B4

B0B5

B0B8

B0BC

B0C4
334x/B3Cx
B0C5

B0C7

B0C8

B0C9

B0D0

B0D1

B0D4

B0D8

B0E0

B0E5

B108

B109

B10B

B10C

B110

B112
335x/B3Dx
B113

B118

B119

B11B

B11C

B11D

B123

B124

B125

B128

B12C

B134

B135

B137

B138

B139
336x/B3Ex
B140

B141

B144

B148

B150

B151

B154

B155

B158

B15C

B160

B178

B179

B17C

B180

B182
337x/B3Fx
B188

B189

B18B

B18D

B192

B193

B194

B198

B19C

B1A8

B1CC

B1D0

B1D4

B1DC

B1DD
342x/B4Ax
B1DF

B1E8

B1E9

B1EC

B1F0

B1F9

B1FB

B1FD

B204

B205

B208

B20B

B20C

B214

B215
343x/B4Bx
B217

B219

B220

B234

B23C

B258

B25C

B260

B268

B269

B274

B275

B27C

B284

B285

B289
344x/B4Cx
B290

B291

B294

B298

B299

B29A

B2A0

B2A1

B2A3

B2A5

B2A6

B2AA

B2AC

B2B0

B2B4

B2C8
345x/B4Dx
B2C9

B2CC

B2D0

B2D2

B2D8

B2D9

B2DB

B2DD

B2E2

B2E4

B2E5

B2E6

B2E8

B2EB

B2EC

B2ED
346x/B4Ex
B2EE

B2EF

B2F3

B2F4

B2F5

B2F7

B2F8

B2F9

B2FA

B2FB

B2FF

B300

B301

B304

B308

B310
347x/B4Fx
B311

B313

B314

B315

B31C

B354

B355

B356

B358

B35B

B35C

B35E

B35F

B364

B365
352x/B5Ax
B367

B369

B36B

B36E

B370

B371

B374

B378

B380

B381

B383

B384

B385

B38C

B390
353x/B5Bx
B394

B3A0

B3A1

B3A8

B3AC

B3C4

B3C5

B3C8

B3CB

B3CC

B3CE

B3D0

B3D4

B3D5

B3D7

B3D9
354x/B5Cx
B3DB

B3DD

B3E0

B3E4

B3E8

B3FC

B410

B418

B41C

B420

B428

B429

B42B

B434

B450

B451
355x/B5Dx
B454

B458

B460

B461

B463

B465

B46C

B480

B488

B49D

B4A4

B4A8

B4AC

B4B5

B4B7

B4B9
356x/B5Ex
B4C0

B4C4

B4C8

B4D0

B4D5

B4DC

B4DD

B4E0

B4E3

B4E4

B4E6

B4EC

B4ED

B4EF

B4F1

B4F8
357x/B5Fx
B514

B515

B518

B51B

B51C

B524

B525

B527

B528

B529

B52A

B530

B531

B534

B538
362x/B6Ax
B540

B541

B543

B544

B545

B54B

B54C

B54D

B550

B554

B55C

B55D

B55F

B560

B561
363x/B6Bx
B5A0

B5A1

B5A4

B5A8

B5AA

B5AB

B5B0

B5B1

B5B3

B5B4

B5B5

B5BB

B5BC

B5BD

B5C0

B5C4
364x/B6Cx
B5CC

B5CD

B5CF

B5D0

B5D1

B5D8

B5EC

B610

B611

B614

B618

B625

B62C

B634

B648

B664
365x/B6Dx
B668

B69C

B69D

B6A0

B6A4

B6AB

B6AC

B6B1

B6D4

B6F0

B6F4

B6F8

B700

B701

B705

B728
366x/B6Ex
B729

B72C

B72F

B730

B738

B739

B73B

B744

B748

B74C

B754

B755

B760

B764

B768

B770
367x/B6Fx
B771

B773

B775

B77C

B77D

B780

B784

B78C

B78D

B78F

B790

B791

B792

B796

B797
372x/B7Ax
B798

B799

B79C

B7A0

B7A8

B7A9

B7AB

B7AC

B7AD

B7B4

B7B5

B7B8

B7C7

B7C9

B7EC
373x/B7Bx
B7ED

B7F0

B7F4

B7FC

B7FD

B7FF

B800

B801

B807

B808

B809

B80C

B810

B818

B819

B81B
374x/B7Cx
B81D

B824

B825

B828

B82C

B834

B835

B837

B838

B839

B840

B844

B851

B853

B85C

B85D
375x/B7Dx
B860

B864

B86C

B86D

B86F

B871

B878

B87C

B88D

B8A8

B8B0

B8B4

B8B8

B8C0

B8C1

B8C3
376x/B7Ex
B8C5

B8CC

B8D0

B8D4

B8DD

B8DF

B8E1

B8E8

B8E9

B8EC

B8F0

B8F8

B8F9

B8FB

B8FD

B904
377x/B7Fx
B918

B920

B93C

B93D

B940

B944

B94C

B94F

B951

B958

B959

B95C

B960

B968

B969
382x/B8Ax
B96B

B96D

B974

B975

B978

B97C

B984

B985

B987

B989

B98A

B98D

B98E

B9AC

B9AD
383x/B8Bx
B9B0

B9B4

B9BC

B9BD
릿
B9BF

B9C1

B9C8

B9C9

B9CC

B9CE

B9CF

B9D0

B9D1

B9D2

B9D8

B9D9
384x/B8Cx
B9DB

B9DD

B9DE

B9E1

B9E3

B9E4

B9E5

B9E8

B9EC

B9F4

B9F5

B9F7

B9F8

B9F9

B9FA

BA00
385x/B8Dx
BA01

BA08

BA15

BA38

BA39

BA3C

BA40

BA42

BA48

BA49

BA4B

BA4D

BA4E

BA53

BA54

BA55
386x/B8Ex
BA58

BA5C

BA64

BA65

BA67

BA68

BA69

BA70

BA71

BA74

BA78

BA83

BA84

BA85

BA87

BA8C
387x/B8Fx
BAA8

BAA9

BAAB

BAAC

BAB0

BAB2

BAB8

BAB9

BABB

BABD

BAC4

BAC8

BAD8

BAD9

BAFC
392x/B9Ax
BB00

BB04

BB0D

BB0F

BB11

BB18

BB1C

BB20

BB29

BB2B

BB34

BB35

BB36

BB38

BB3B
393x/B9Bx
BB3C

BB3D

BB3E

BB44

BB45

BB47

BB49

BB4D

BB4F

BB50

BB54

BB58

BB61

BB63

BB6C

BB88
394x/B9Cx
BB8C

BB90

BBA4

BBA8

BBAC

BBB4

BBB7

BBC0

BBC4

BBC8

BBD0

BBD3

BBF8

BBF9

BBFC
믿
BBFF
395x/B9Dx
BC00

BC02

BC08

BC09

BC0B

BC0C

BC0D

BC0F

BC11

BC14

BC15

BC16

BC17

BC18

BC1B

BC1C
396x/B9Ex
BC1D

BC1E

BC1F

BC24

BC25

BC27

BC29

BC2D

BC30

BC31

BC34

BC38

BC40

BC41

BC43

BC44
397x/B9Fx
BC45

BC49

BC4C

BC4D

BC50

BC5D

BC84

BC85

BC88

BC8B

BC8C

BC8E

BC94

BC95

BC97
3A2x/BAAx
BC99

BC9A

BCA0

BCA1

BCA4

BCA7

BCA8

BCB0

BCB1

BCB3

BCB4

BCB5

BCBC

BCBD

BCC0
3A3x/BABx
BCC4

BCCD

BCCF

BCD0

BCD1

BCD5

BCD8

BCDC

BCF4

BCF5

BCF6

BCF8

BCFC

BD04

BD05

BD07
3A4x/BACx
BD09

BD10

BD14

BD24

BD2C

BD40

BD48

BD49

BD4C

BD50

BD58

BD59

BD64

BD68

BD80

BD81
3A5x/BADx
BD84

BD87

BD88

BD89

BD8A

BD90

BD91

BD93

BD95

BD99

BD9A

BD9C

BDA4

BDB0

BDB8

BDD4
3A6x/BAEx
BDD5

BDD8

BDDC

BDE9

BDF0

BDF4

BDF8

BE00

BE03

BE05

BE0C

BE0D

BE10

BE14

BE1C

BE1D
3A7x/BAFx
BE1F

BE44

BE45

BE48

BE4C

BE4E

BE54

BE55

BE57

BE59

BE5A

BE5B

BE60

BE61

BE64
3B2x/BBAx
BE68

BE6A

BE70

BE71

BE73

BE74

BE75

BE7B

BE7C

BE7D

BE80

BE84

BE8C

BE8D

BE8F
3B3x/BBBx
BE90

BE91

BE98

BE99

BEA8

BED0

BED1

BED4

BED7

BED8

BEE0

BEE3

BEE4

BEE5

BEEC

BF01
3B4x/BBCx
BF08

BF09

BF18

BF19

BF1B

BF1C

BF1D

BF40

BF41

BF44

BF48

BF50

BF51

BF55

BF94

BFB0
3B5x/BBDx
BFC5

BFCC

BFCD

BFD0

BFD4

BFDC

BFDF

BFE1

C03C

C051

C058

C05C

C060

C068

C069

C090
3B6x/BBEx
C091

C094

C098

C0A0

C0A1

C0A3

C0A5

C0AC

C0AD

C0AF

C0B0

C0B3

C0B4

C0B5

C0B6

C0BC
3B7x/BBFx
C0BD

C0BF

C0C0

C0C1

C0C5

C0C8

C0C9

C0CC

C0D0

C0D8

C0D9

C0DB

C0DC

C0DD

C0E4
3C2x/BCAx
C0E5

C0E8

C0EC

C0F4

C0F5

C0F7

C0F9

C100

C104

C108

C110

C115

C11C

C11D

C11E
3C3x/BCBx
C11F

C120

C123

C124

C126

C127

C12C

C12D

C12F

C130

C131

C136

C138

C139

C13C

C140
3C4x/BCCx
C148

C149

C14B

C14C

C14D

C154

C155

C158

C15C

C164

C165

C167

C168

C169

C170

C174
3C5x/BCDx
C178

C185

C18C

C18D

C18E

C190

C194

C196

C19C

C19D

C19F

C1A1

C1A5

C1A8

C1A9

C1AC
3C6x/BCEx
C1B0

C1BD

C1C4

C1C8

C1CC

C1D4

C1D7

C1D8

C1E0

C1E4

C1E8

C1F0

C1F1

C1F3

C1FC

C1FD
3C7x/BCFx
C200

C204

C20C

C20D

C20F

C211

C218

C219

C21C

C21F

C220

C228

C229

C22B

C22D
3D2x/BDAx
C22F

C231

C232

C234

C248

C250

C251

C254

C258

C260

C265

C26C

C26D

C270

C274
3D3x/BDBx
C27C

C27D

C27F

C281

C288

C289

C290

C298

C29B

C29D

C2A4

C2A5

C2A8

C2AC

C2AD

C2B4
3D4x/BDCx
C2B5

C2B7

C2B9

C2DC

C2DD

C2E0

C2E3

C2E4

C2EB

C2EC

C2ED

C2EF

C2F1

C2F6

C2F8

C2F9
3D5x/BDDx
C2FB

C2FC

C300

C308

C309

C30C

C30D

C313

C314

C315

C318

C31C

C324

C325

C328

C329
3D6x/BDEx
C345

C368

C369

C36C

C370

C372

C378

C379

C37C

C37D

C384

C388

C38C

C3C0

C3D8

C3D9
3D7x/BDFx
C3DC

C3DF

C3E0

C3E2

C3E8

C3E9

C3ED

C3F4

C3F5

C3F8

C408

C410

C424

C42C

C430
3E2x/BEAx
C434

C43C

C43D

C448

C464

C465

C468

C46C

C474

C475

C479

C480

C494

C49C

C4B8
3E3x/BEBx
C4BC

C4E9

C4F0

C4F1

C4F4

C4F8

C4FA

C4FF

C500

C501

C50C

C510

C514

C51C

C528

C529
3E4x/BECx
C52C

C530

C538

C539

C53B

C53D

C544

C545

C548

C549

C54A

C54C

C54D

C54E

C553

C554
3E5x/BEDx
C555

C557

C558

C559

C55D

C55E

C560

C561

C564

C568

C570

C571

C573

C574

C575

C57C
3E6x/BEEx
C57D

C580

C584

C587

C58C

C58D

C58F

C591

C595

C597

C598

C59C

C5A0

C5A9

C5B4

C5B5
3E7x/BEFx
C5B8

C5B9

C5BB

C5BC

C5BD

C5BE

C5C4

C5C5

C5C6

C5C7

C5C8

C5C9

C5CA

C5CC

C5CE
3F2x/BFAx
C5D0

C5D1

C5D4

C5D8

C5E0

C5E1

C5E3

C5E5

C5EC

C5ED

C5EE

C5F0

C5F4

C5F6

C5F7
3F3x/BFBx
C5FC

C5FD

C5FE

C5FF

C600

C601

C605

C606

C607

C608

C60C

C610

C618

C619

C61B

C61C
3F4x/BFCx
C624

C625

C628

C62C

C62D

C62E

C630

C633

C634

C635

C637

C639

C63B

C640

C641

C644
3F5x/BFDx
C648

C650

C651

C653

C654

C655

C65C

C65D

C660

C66C

C66F

C671

C678

C679

C67C

C680
3F6x/BFEx
C688

C689

C68B

C68D

C694

C695

C698

C69C

C6A4

C6A5

C6A7

C6A9

C6B0

C6B1

C6B4

C6B8
3F7x/BFFx
C6B9

C6BA

C6C0

C6C1

C6C3

C6C5

C6CC

C6CD

C6D0

C6D4

C6DC

C6DD

C6E0

C6E1

C6E8
402x/C0Ax
C6E9

C6EC

C6F0

C6F8

C6F9

C6FD

C704

C705

C708

C70C

C714

C715

C717

C719

C720
403x/C0Bx
C721

C724

C728

C730

C731

C733

C735

C737

C73C

C73D

C740

C744

C74A

C74C

C74D

C74F
404x/C0Cx
C751

C752

C753

C754

C755

C756

C757

C758

C75C

C760

C768

C76B

C774

C775

C778

C77C
405x/C0Dx
C77D

C77E

C783

C784

C785

C787

C788

C789

C78A

C78E

C790

C791

C794

C796

C797

C798
406x/C0Ex
C79A

C7A0

C7A1

C7A3

C7A4

C7A5

C7A6

C7AC

C7AD

C7B0

C7B4

C7BC

C7BD

C7BF

C7C0

C7C1
407x/C0Fx
C7C8

C7C9

C7CC

C7CE

C7D0

C7D8

C7DD

C7E4

C7E8

C7EC

C800

C801

C804

C808

C80A
412x/C1Ax
C810

C811

C813

C815

C816

C81C

C81D

C820

C824

C82C

C82D

C82F

C831

C838

C83C
413x/C1Bx
C840

C848

C849

C84C

C84D

C854

C870

C871

C874

C878

C87A

C880

C881

C883

C885

C886
414x/C1Cx
C887

C88B

C88C

C88D

C894

C89D

C89F

C8A1

C8A8

C8BC

C8BD

C8C4

C8C8

C8CC

C8D4

C8D5
415x/C1Dx
C8D7

C8D9

C8E0

C8E1

C8E4

C8F5

C8FC

C8FD

C900

C904

C905

C906

C90C

C90D

C90F

C911
416x/C1Ex
C918

C92C

C934

C950

C951

C954

C958

C960

C961

C963

C96C

C970

C974

C97C

C988

C989
417x/C1Fx
C98C

C990

C998

C999

C99B

C99D

C9C0

C9C1

C9C4

C9C7

C9C8

C9CA

C9D0

C9D1

C9D3
422x/C2Ax
C9D5

C9D6

C9D9

C9DA

C9DC

C9DD

C9E0

C9E2

C9E4

C9E7

C9EC

C9ED

C9EF

C9F0

C9F1
423x/C2Bx
C9F8

C9F9

C9FC

CA00

CA08

CA09

CA0B

CA0C

CA0D

CA14

CA18

CA29

CA4C

CA4D

CA50

CA54
424x/C2Cx
CA5C

CA5D

CA5F

CA60

CA61

CA68

CA7D

CA84

CA98

CABC

CABD

CAC0

CAC4

CACC

CACD

CACF
425x/C2Dx
CAD1

CAD3

CAD8

CAD9

CAE0

CAEC

CAF4

CB08

CB10

CB14

CB18

CB20

CB21

CB41

CB48

CB49
426x/C2Ex
CB4C

CB50

CB58

CB59

CB5D

CB64

CB78

CB79

CB9C

CBB8

CBD4

CBE4

CBE7

CBE9

CC0C

CC0D
427x/C2Fx
CC10

CC14

CC1C

CC1D

CC21

CC22

CC27

CC28

CC29

CC2C

CC2E

CC30

CC38

CC39

CC3B
432x/C3Ax
CC3C

CC3D

CC3E

CC44

CC45

CC48

CC4C

CC54

CC55

CC57

CC58

CC59

CC60

CC64

CC66
433x/C3Bx
CC68

CC70

CC75

CC98

CC99

CC9C

CCA0

CCA8

CCA9

CCAB

CCAC

CCAD

CCB4

CCB5

CCB8

CCBC
434x/C3Cx
CCC4

CCC5

CCC7

CCC9

CCD0

CCD4

CCE4

CCEC

CCF0

CD01

CD08

CD09

CD0C

CD10

CD18

CD19
435x/C3Dx
CD1B

CD1D

CD24

CD28

CD2C

CD39

CD5C

CD60

CD64

CD6C

CD6D

CD6F

CD71

CD78

CD88

CD94
436x/C3Ex
CD95

CD98

CD9C

CDA4

CDA5

CDA7

CDA9

CDB0

CDC4

CDCC

CDD0

CDE8

CDEC

CDF0

CDF8

CDF9
437x/C3Fx
CDFB

CDFD

CE04

CE08

CE0C

CE14

CE19

CE20

CE21

CE24

CE28

CE30

CE31

CE33

CE35
442x/C4Ax
CE58

CE59

CE5C

CE5F

CE60

CE61

CE68

CE69

CE6B

CE6D

CE74

CE75

CE78

CE7C

CE84
443x/C4Bx
CE85

CE87

CE89

CE90

CE91

CE94

CE98

CEA0

CEA1

CEA3

CEA4

CEA5

CEAC

CEAD

CEC1

CEE4
444x/C4Cx
CEE5

CEE8

CEEB

CEEC

CEF4

CEF5

CEF7

CEF8

CEF9

CF00

CF01

CF04

CF08

CF10

CF11

CF13
445x/C4Dx
CF15

CF1C

CF20

CF24

CF2C

CF2D

CF2F

CF30

CF31

CF38

CF54

CF55

CF58

CF5C

CF64

CF65
446x/C4Ex
CF67

CF69

CF70

CF71

CF74

CF78

CF80

CF85

CF8C

CFA1

CFA8

CFB0

CFC4

CFE0

CFE1

CFE4
447x/C4Fx
CFE8

CFF0

CFF1

CFF3

CFF5

CFFC
퀀
D000

D004

D011

D018

D02D

D034

D035

D038

D03C
452x/C5Ax
D044

D045

D047

D049

D050

D054

D058

D060

D06C

D06D

D070

D074

D07C

D07D

D081
453x/C5Bx
D0A4

D0A5

D0A8

D0AC

D0B4

D0B5

D0B7

D0B9

D0C0

D0C1

D0C4

D0C8

D0C9

D0D0

D0D1

D0D3
454x/C5Cx
D0D4

D0D5

D0DC

D0DD

D0E0

D0E4

D0EC

D0ED

D0EF

D0F0

D0F1

D0F8

D10D

D130

D131

D134
455x/C5Dx
D138

D13A

D140

D141

D143

D144

D145

D14C

D14D

D150

D154

D15C

D15D

D15F

D161

D168
456x/C5Ex
D16C

D17C

D184

D188

D1A0

D1A1

D1A4

D1A8

D1B0

D1B1

D1B3

D1B5

D1BA

D1BC

D1C0

D1D8
457x/C5Fx
D1F4

D1F8

D207

D209

D210

D22C

D22D

D230

D234

D23C

D23D

D23F

D241

D248

D25C
462x/C6Ax
D264

D280

D281

D284

D288

D290

D291

D295

D29C

D2A0

D2A4

D2AC

D2B1

D2B8

D2B9
463x/C6Bx
D2BC

D2BF

D2C0

D2C2

D2C8

D2C9

D2CB

D2D4

D2D8

D2DC

D2E4

D2E5

D2F0

D2F1

D2F4

D2F8
464x/C6Cx
D300

D301

D303

D305

D30C

D30D

D30E

D310

D314

D316

D31C

D31D

D31F

D320

D321

D325
465x/C6Dx
D328

D329

D32C

D330

D338

D339

D33B

D33C

D33D

D344

D345

D37C

D37D

D380

D384

D38C
466x/C6Ex
D38D

D38F

D390

D391

D398

D399

D39C

D3A0

D3A8

D3A9

D3AB

D3AD

D3B4

D3B8

D3BC

D3C4
467x/C6Fx
D3C5

D3C8

D3C9

D3D0

D3D8

D3E1

D3E3

D3EC

D3ED

D3F0

D3F4

D3FC

D3FD

D3FF

D401
472x/C7Ax
D408

D41D

D440

D444

D45C

D460

D464

D46D

D46F

D478

D479

D47C

D47F

D480

D482
473x/C7Bx
D488

D489

D48B

D48D

D494

D4A9

D4CC

D4D0

D4D4

D4DC

D4DF

D4E8

D4EC

D4F0

D4F8

D4FB
474x/C7Cx
D4FD

D504

D508

D50C

D514

D515

D517

D53C

D53D

D540

D544

D54C

D54D

D54F

D551

D558
475x/C7Dx
D559

D55C

D560

D565

D568

D569

D56B

D56D

D574

D575

D578

D57C

D584

D585

D587

D588
476x/C7Ex
D589

D590

D5A5

D5C8

D5C9

D5CC

D5D0

D5D2

D5D8

D5D9

D5DB

D5DD

D5E4

D5E5

D5E8

D5EC
477x/C7Fx
D5F4

D5F5

D5F7

D5F9

D600

D601

D604

D608

D610

D611

D613

D614

D615

D61C

D620
482x/C8Ax
D624

D62D

D638

D639

D63C

D640

D645

D648

D649

D64B

D64D

D651

D654

D655

D658
483x/C8Bx
D65C

D667

D669

D670

D671

D674

D683

D685

D68C

D68D

D690

D694

D69D

D69F

D6A1

D6A8
484x/C8Cx
D6AC

D6B0

D6B9

D6BB

D6C4

D6C5

D6C8

D6CC

D6D1

D6D4

D6D7

D6D9

D6E0

D6E4

D6E8

D6F0
485x/C8Dx
D6F5

D6FC

D6FD

D700

D704

D711

D718

D719

D71C

D720

D728

D729

D72B

D72D

D734

D735
486x/C8Ex
D738

D73C

D744

D747

D749

D750

D751

D754

D756

D757

D758

D759

D760

D761

D763

D765
487x/C8Fx
D769

D76C

D770

D774

D77C

D77D

D781

D788

D789

D78C

D790

D798

D799

D79B

D79D

Hanja sets (rows number 42 through 93)

KS X 1001 encodes several Hanja with multiple readings multiple times. One character, 樂, is encoded four times. The first 268 characters (U+F900–U+FA0B) in the CJK Compatibility Ideographs block correspond to these duplicates.

In the table below, the first row-cell value (and reading) for each Hanja maps to the CJK Unified Ideographs block; others map to the CJK Compatibility Ideographs block.

Duplicate Hanja in KS X 1001
Hanja Locations and readings
42-25 ( ga), 45-47 ( go)
43-29 ( gang), 90-02 ( hang)
44-24 ( gyeon), 90-70 ( hyeon)
44-58 ( gyeong), 43-54 ( gaeng)
44-88 ( gye), 48-48 ( geul)
45-90 ( got), 46-13 ( gwan)
46-09 ( gwak), 92-09 ( hwak)
47-03 ( gu), 47-91 ( gwi)
47-47 ( gu), 48-02 ( gwi), 48-24 ( gyun)
49-34 ( gi), 43-48 ( gae)
49-49 ( gim), 48-61 ( geum)
49-57 ( na), 52-92 ( ra)
49-71 ( nak), 53-11 ( rak)
50-15 ( nae), 49-53 ( na)
50-19 ( nyeo), 69-92 ( yeo)
50-20 ( nyeon), 70-36 ( yeon)
50-21 ( nyeon), 70-42 ( yeon)
50-22 ( nyeon), 70-60 ( yeon)
50-23 ( nyeom), 70-86 ( yeom)
50-26 ( nyeom), 70-87 ( yeom)
50-27 ( nyeong), 54-24 ( ryeong), 71-12 ( yeong)
50-33 ( no), 54-45 ( ro)
尿 50-67 ( nyo), 72-81 ( yo)
50-78 ( nyu), 74-84 ( yu)
50-79 ( nyu), 75-10 ( yu)
50-90 ( ni), 76-18 ( i)
50-91 ( nik), 76-41 ( ik)
50-92 ( nik), 76-42 ( ik)
50-94 ( da), 83-17 ( cha)
51-01 ( dan), 53-14 ( ran)
51-56 ( dang), 87-24 ( tang)
51-75 ( daek), 87-40 ( taek)
51-88 ( do), 86-84 ( tak)
52-33 ( dok), 52-70 ( du)
52-55 ( dong), 87-51 ( tong)
52-90 ( ra), 49-52 ( na)
52-91 ( ra), 49-56 ( na)
52-93 ( ra), 49-59 ( na)
52-94 ( ra), 49-60 ( na)
53-01 ( ra), 49-61 ( na)
53-02 ( ra), 49-62 ( na)
53-03 ( ra), 49-63 ( na)
53-04 ( ra), 49-64 ( na)
53-06 ( rak), 49-67 ( nak)
53-07 ( rak), 49-68 ( nak)
53-08 ( rak), 49-69 ( nak)
53-10 ( rak), 49-70 ( nak)
53-12 ( rak), 49-72 ( nak)
53-13 ( rak), 49-73 ( nak)
53-15 ( ran), 49-74 ( nan)
53-16 ( ran), 49-75 ( nan)
53-17 ( ran), 49-77 ( nan)
53-20 ( ran), 49-79 ( nan)
53-21 ( ran), 49-80 ( nan)
53-22 ( ran), 49-82 ( nan)
53-25 ( ram), 49-86 ( nam)
53-29 ( ram), 49-90 ( nam)
53-32 ( ram), 49-92 ( nam)
53-33 ( ram), 49-93 ( nam)
53-35 ( rap), 49-94 ( nap)
53-36 ( rap), 50-02 ( nap)
53-37 ( rap), 50-03 ( nap)
53-38 ( rang), 50-07 ( nang)
53-39 ( rang), 50-08 ( nang)
53-40 ( rang), 50-09 ( nang)
53-41 ( rang), 50-10 ( nang)
53-45 ( rang), 50-11 ( nang)
53-46 ( rae), 50-13 ( nae)
53-50 ( raeng), 50-18 ( naeng)
53-51 ( ryak), 69-17 ( yak)
53-52 ( ryak), 69-18 ( yak)
53-53 ( ryang), 69-25 ( yang)
53-55 ( ryang), 69-27 ( yang)
53-56 ( ryang), 69-28 ( yang)
53-57 ( ryang), 69-36 ( yang)
53-61 ( ryang), 69-46 ( yang)
53-62 ( ryang), 69-48 ( yang)
53-63 ( ryang), 69-50 ( yang)
53-65 ( ryang), 69-54 ( yang)
53-68 ( ryeo), 69-90 ( yeo)
53-69 ( ryeo), 69-91 ( yeo)
53-70 ( ryeo), 69-94 ( yeo)
53-73 ( ryeo), 70-01 ( yeo)
53-75 ( ryeo), 70-04 ( yeo)
53-76 ( ryeo), 70-07 ( yeo)
53-79 ( ryeo), 70-13 ( yeo)
53-81 ( ryeo), 70-15 ( yeo)
53-82 ( ryeo), 70-16 ( yeo)
53-83 ( ryeo), 70-17 ( yeo)
53-84 ( ryeok), 70-19 ( yeok)
53-85 ( ryeok), 70-23 ( yeok)
53-86 ( ryeok), 70-24 ( yeok)
53-89 ( ryeok), 70-28 ( yeok)
53-91 ( ryeon), 70-38 ( yeon)
53-92 ( ryeon), 70-39 ( yeon)
53-94 ( ryeon), 70-50 ( yeon)
54-01 ( ryeon), 70-54 ( yeon)
54-02 ( ryeon), 70-57 ( yeon)
54-03 ( ryeon), 70-63 ( yeon)
54-04 ( ryeon), 70-65 ( yeon)
54-05 ( ryeon), 70-69 ( yeon)
54-06 ( ryeon), 70-68 ( yeon)
54-07 ( ryeon), 70-70 ( yeon)
54-08 ( ryeon), 70-72 ( yeon)
54-10 ( ryeol), 70-74 ( yeol)
54-11 ( ryeol), 70-75 ( yeol)
54-13 ( ryeol), 70-79 ( yeol)
54-14 ( ryeol), 70-81 ( yeol)
54-15 ( ryeom), 70-85 ( yeom)
54-17 ( ryeom), 70-89 ( yeom)
54-19 ( ryeom), 71-01 ( yeom)
54-20 ( ryeop), 71-06 ( yeop)
54-21 ( ryeong), 71-09 ( yeong)
54-23 ( ryeong), 71-10 ( yeong)
54-26 ( ryeong), 71-13 ( yeong)
54-27 ( ryeong), 71-16 ( yeong)
54-28 ( ryeong), 71-31 ( yeong)
54-30 ( ryeong), 71-38 ( yeong)
54-32 ( ryeong), 71-39 ( yeong)
54-34 ( ryeong), 71-43 ( yeong)
54-35 ( ryeong), 71-45 ( yeong)
54-36 ( ryeong), 71-47 ( yeong)
54-37 ( ryeong), 71-48 ( yeong)
54-39 ( rye), 71-51 ( ye)
54-41 ( rye), 71-63 ( ye)
54-42 ( rye), 71-68 ( ye)
54-43 ( rye), 71-70 ( ye)
54-44 ( ro), 50-30 ( no)
54-47 ( ro), 50-34 ( no)
54-48 ( ro), 50-35 ( no)
54-51 ( ro), 50-36 ( no)
54-52 ( ro), 50-38 ( no)
54-53 ( ro), 50-39 ( no)
54-54 ( ro), 50-40 ( no)
54-55 ( ro), 50-41 ( no)
54-56 ( ro), 50-42 ( no)
54-58 ( ro), 50-43 ( no)
54-59 ( ro), 50-45 ( no)
54-60 ( ro), 50-46 ( no)
54-62 ( rok), 50-47 ( nok)
祿 54-63 ( rok), 50-48 ( nok)
54-64 ( rok), 50-49 ( nok)
54-65 ( rok), 50-50 ( nok)
54-66 ( rok), 50-51 ( nok)
鹿 54-67 ( rok), 50-52 ( nok)
54-69 ( ron), 50-53 ( non)
54-70 ( rong), 50-54 ( nong)
54-71 ( rong), 50-55 ( nong)
54-75 ( rong), 50-57 ( nong)
54-76 ( rong), 50-58 ( nong)
54-79 ( roe), 50-62 ( noe)
54-80 ( roe), 50-63 ( noe)
54-81 ( roe), 50-65 ( noe)
54-84 ( roe), 50-66 ( noe)
54-85 ( ryo), 72-71 ( yo)
54-86 ( ryo), 72-72 ( yo)
54-87 ( ryo), 72-80 ( yo)
54-89 ( ryo), 72-87 ( yo)
54-90 ( ryo), 72-91 ( yo)
54-91 ( ryo), 72-94 ( yo)
54-94 ( ryo), 73-07 ( yo)
55-01 ( ryo), 73-12 ( yo)
55-03 ( ryong), 73-44 ( yong)
55-04 ( ru), 50-68 ( nu)
55-06 ( ru), 50-69 ( nu)
55-07 ( ru), 50-70 ( nu)
55-08 ( ru), 50-71 ( nu)
55-09 ( ru), 50-72 ( nu)
55-11 ( ru), 50-73 ( nu)
55-12 ( ru), 50-74 ( nu)
55-16 ( ru), 50-75 ( nu)
55-17 ( ryu), 74-69 ( yu)
55-19 ( ryu), 74-87 ( yu)
55-21 ( ryu), 74-92 ( yu)
55-22 ( ryu), 74-94 ( yu)
55-24 ( ryu), 75-04 ( yu)
55-26 ( ryu), 75-07 ( yu)
55-28 ( ryu), 75-09 ( yu)
55-30 ( ryu), 75-26 ( yu)
55-31 ( ryuk), 75-27 ( yuk)
55-32 ( ryuk), 75-29 ( yuk)
55-33 ( ryuk), 75-33 ( yuk)
55-35 ( ryun), 75-34 ( yun)
55-36 ( ryun), 75-38 ( yun)
55-37 ( ryun), 75-39 ( yun)
55-39 ( ryun), 75-44 ( yun)
55-40 ( ryul), 75-47 ( yul)
55-41 ( ryul), 75-48 ( yul)
55-42 ( ryul), 75-49 ( yul)
55-44 ( ryung), 75-56 ( yung)
55-45 ( reuk), 50-80 ( neuk)
55-46 ( reuk), 50-81 ( neuk)
55-47 ( reum), 50-82 ( neum)
55-48 ( reung), 50-83 ( neung)
55-50 ( reung), 50-84 ( neung)
55-51 ( reung), 50-85 ( neung)
55-52 ( reung), 50-87 ( neung)
55-53 ( reung), 50-88 ( neung)
55-55 ( ri), 76-06 ( i)
55-57 ( ri), 76-07 ( i)
55-59 ( ri), 76-10 ( i)
55-61 ( ri), 76-16 ( i)
55-62 ( ri), 76-17 ( i)
55-66 ( ri), 76-21 ( i)
55-69 ( ri), 76-24 ( i)
55-71 ( ri), 76-26 ( i)
55-74 ( ri), 76-32 ( i)
55-75 ( ri), 76-33 ( i)
55-76 ( ri), 76-37 ( i)
55-78 ( ri), 76-38 ( i)
55-80 ( rin), 76-53 ( in)
55-82 ( rin), 76-61 ( in)
55-83 ( rin), 76-62 ( in)
55-84 ( rin), 76-65 ( in)
55-86 ( rin), 76-68 ( in)
55-87 ( rin), 76-71 ( in)
55-88 ( rin), 76-72 ( in)
55-89 ( rim), 76-87 ( im)
55-90 ( rim), 76-88 ( im)
55-92 ( rim), 76-90 ( im)
56-01 ( rip), 77-01 ( ip)
56-02 ( rip), 77-02 ( ip)
56-03 ( rip), 77-03 ( ip)
58-82 ( ban), 59-68 ( beon)
60-54 ( bok), 61-05 ( bu)
60-63 ( bok), 88-80 ( pok)
60-84 ( bu), 61-53 ( bul)
61-33 ( buk), 59-37 ( bae)
63-15 ( sal), 65-77 ( swae)
63-50 ( sang), 77-78 ( jang)
63-61 ( sae), 63-65 ( saek)
63-67 ( saek), 62-94 ( sak)
64-67 ( seol), 65-13 ( se), 70-82 ( yeol)
64-93 ( seong), 63-72 ( saeng)
65-67 ( sol), 55-43 ( ryul), 75-50 ( yul)
66-06 ( su), 62-92 ( sak)
67-06 ( seup), 68-09 ( sip)
67-59 ( sik), 82-29 ( ji)
68-07 ( sip), 82-90 ( jip)
68-34 ( ak), 71-87 ( o)
68-37 ( ak), 49-66 ( nak), 53-05 ( rak), 72-89 ( yo)
69-20 ( yak), 69-14 ( ya)
70-22 ( yeok), 76-15 ( i)
71-08 ( yeop), 64-81 ( seop)
72-54 ( wan), 74-33 ( won)
76-22 ( i), 55-68 ( ri)
76-54 ( in), 70-76 ( yeol)
77-09 ( ja), 84-07 ( cheok)
77-19 ( ja), 78-59 ( jeok)
79-23 ( jeol), 84-78 ( che)
82-67 ( jin), 67-85 ( sin)
83-19 ( cha), 43-71 ( geo)
83-49 ( cham), 63-19 ( sam)
84-12 ( cheok), 86-86 ( tak)
86-56 ( chim), 68-01 ( sim)
便 88-21 ( pyeon), 60-05 ( byeon)
88-76 ( pok), 88-59 ( po)
89-18 ( pil), 61-84 ( bi)
90-28 ( haeng), 90-01 ( hang)
91-09 ( hyeong), 71-33 ( yeong)
92-33 ( hwal), 45-72 ( gol)
93-27 ( hun), 73-87 ( un)

Johab encoding

Diagram of Johab encoding as stipulated by KS X 1001

KS X 1001, since 1992, also defines an alternative encoding known as Johab. This represents a Hangul syllable as the sequence of three five-bit values, split across two 8-bit bytes, most significant bit first. The most significant bit of the lead byte is always set (allowing combination with single-byte ASCII or KS X 1003). This encoding is also used for the modern jamo from row 4 of KS X 1001, by using the filler values for the other components. The Johab encoding for Hangul is shown in the table below.

Johab encodes the remainder of KS X 1001 using lead bytes which do not correspond to an initial jamo (0xE0–0xF9 for Hanja and 0xD9–0xDE for non-Hanja, excluding Hangul syllables and modern jamo), with trail bytes in the ranges 0x31–0x7E and 0x91–0xFE. These codes are algorithmically mapped from the characters' KS X 1001 code points, with two KS X 1001 rows per lead byte (compare and contrast Shift JIS).

Layout of EBCDIC-based Johab variant when in double-byte state

The ASCII-based Johab encoding is numbered Code page 1361 by Microsoft. Other, vendor-defined, Johab variants also exist; for example, IBM defines one for use as a Shift Out set with EBCDIC. That variant uses shift in and shift out to switch between a single-byte EBCDIC page and Johab, uses a different encoding for the non-Hangul characters (using lead bytes 0x40–6C with a different layout), and uses lead bytes 0xD4–DD as a user-defined region, but uses the same Johab layout as the 1992 standard for the Hangul characters when in shift-out state. IBM number the EBCDIC-based, stateful Johab encoding Code page 1364, and also define a subset of that encoding, including fewer Hangul characters but in the same layout, as Code page 933.

Some other vendors such as Samsung or GoldStar (now LG) used other "Johab" encodings where the mappings of five-bit codes to jamo differ from the below, consequently not being compatible with the 1992 standard Johab. The table below corresponds to the 1992 standard and also to IBM usage.

Johab codes for Hangul in KS C 5601(/X 1001):1992
Five-bit sequence As initial As vowel As final
00000 Not used Not used Not used
00001 Filler Not used Filler (empty final)
00010 Filler
00011
00100
00101
00110
00111
01000 Not used
01001 Not used
01010
01011
01100
01101
01110
01111
10000 Not used
10001 Not used
10010 Not used
10011
10100
10101 Not used
10110 Non-Hangul lead bytes
10111 Non-Hangul lead bytes
11000 Non-Hangul lead bytes Not used
11001 Non-Hangul lead bytes Not used
11010 Non-Hangul lead bytes
11011 Non-Hangul lead bytes
11100 Non-Hangul lead bytes
11101 Non-Hangul lead bytes
11110 Non-Hangul lead bytes Not used Not used
11111 Not used Not used Not used

Footnotes

  1. ^ Missing Greek diacritics and final sigma.
  2. ^ Missing chōonpu, shinjitai, kokuji.
  3. ^ a b Missing lowercase å, although the uppercase U+212B ANGSTROM SIGN is included, as are both cases of Ø and Æ.
  4. ^ Korean: 정보 교환용 부호계 (한글 및 한자), romanizedJeongbo Gyohwannyong Buhogye (Hangeul mit Hanja)
  5. ^ a b As a ISO 2022 compatible 94n-character set, the plain space and delete character are always available as single-byte codes at 0x20 and 0x7F (not 0xA0 and 0xFF) respectively.
  6. ^ a b c d e f g h i Mapped by Apple to a sequence of the ASCII digit, the combining square U+20DE, and the private-use character U+F87C. Appearance shown here simulated.
  7. ^ a b c d e f g h i j k Mapped by Apple to an ASCII sequence with the number in square brackets, prefixed by the private-use character U+F863. Appearance shown here simulated.
  8. ^ Narrower than 0xA2D2. Apple appends a private-use character U+F87F for round trip purposes.
  9. ^ Two vertical lines with right-hand line bolder. Apple maps this to the ordinary double vertical U+2016 (‖) plus a private-use character U+F87B for round trip purposes; U+1D102 is shown here to reflect the intended appearance.
  10. ^ Two vertical lines with left-hand line bolder. Apple maps this to the ordinary double vertical U+2016 (‖) plus a private-use character U+F87C for round trip purposes; U+1D103 is shown here to reflect the intended appearance.
  11. ^ Variant aligned to the bottom-left of the character cell, for horizontal use. Apple maps this to U+FF01+F874, where U+F874 is a private-use character used by Apple to tag the character for round-tripping purposes. More recently, a standardised variation sequence has been added for this form, using an appended Variation Selector 1 (U+FE00).
  12. ^ Variant aligned to the bottom-left of the character cell, for horizontal use. Apple maps this to U+3002+F87D, where U+F87D is a private-use character used by Apple to tag the character for round-tripping purposes. More recently, a standardised variation sequence has been added for this form, using an appended Variation Selector 1 (U+FE00).
  13. ^ a b Duplicate, mapped by Apple with an appended private-use character U+F87F for round tripping.
  14. ^ An exact match does note exist in Unicode, shown simulated. Apple maps to U+3257+F87A, where U+F87A is a private-use character, and U+3257 is the unfilled circled character.
  15. ^ An exact match does note exist in Unicode, shown simulated. Apple maps to U+3258+F87A, where U+F87A is a private-use character, and U+3258 is the unfilled circled character.
  16. ^ An exact match does note exist in Unicode, shown simulated. Apple maps to U+3259+F87A, where U+F87A is a private-use character, and U+3259 is the unfilled circled character.
  17. ^ An exact match does note exist in Unicode, shown simulated. Apple maps to U+325A+F87A, where U+F87A is a private-use character, and U+325A is the unfilled circled character.
  18. ^ An exact match does note exist in Unicode, shown simulated. Apple maps to U+3251+F87A, where U+F87A is a private-use character, and U+3251 is the unfilled circled character.
  19. ^ An exact match does note exist in Unicode, shown simulated. Apple maps to U+3252+F87A, where U+F87A is a private-use character, and U+3252 is the unfilled circled character.
  20. ^ An exact match does note exist in Unicode, shown simulated. Apple maps to U+3253+F87A, where U+F87A is a private-use character, and U+3253 is the unfilled circled character.
  21. ^ An exact match does note exist in Unicode, shown simulated. Apple maps to U+3254+F87A, where U+F87A is a private-use character, and U+3254 is the unfilled circled character.
  22. ^ An exact match does note exist in Unicode, shown simulated. Apple maps to U+3255+F87A, where U+F87A is a private-use character, and U+3255 is the unfilled circled character.
  23. ^ An exact match does note exist in Unicode, shown simulated. Apple maps to U+3256+F87A, where U+F87A is a private-use character, and U+3256 is the unfilled circled character.
  24. ^ a b c d e f g h i j Mapped by Apple to an ASCII sequence, prefixed by the private-use character U+F862.
  25. ^ a b c d e f g h i Mapped by Apple to a sequence of the ASCII digit, the combining square U+20DE, and the private-use character U+F875. Appearance shown here simulated.
  26. ^ a b c d e f g h i j k Mapped by Apple to an ASCII sequence with the number in square brackets, prefixed by the private-use character U+F866. Appearance shown here simulated.
  27. ^ a b c d These largely duplicate characters in row 1. Apple describes them as "long" versions, and appends the private-use character U+F879 for round-tripping purposes.
  28. ^ a b c d The MacKorean encoding also includes several sets of differently styled arrows (including white arrows) outside of the KS X 1001 plane ranges, with lead bytes 0xA8 and 0xAC, and trail bytes between 0x41 and 0xA0. Apple appends the private-use character U+F878 to this particular set of white arrows for round-tripping purposes.
  29. ^ a b Unlike those in row 1, these two marks are intended to display in low position (similarly to U+301F). Apple appends the private-use character U+F873 to distinguish them.
  30. ^ Apple maps this to U+21E7+F87F, where U+21E7 is the white up arrow and U+F87F is a private-use character, although this character is a black arrow. The character shown is a Unicode character which postdates Apple's mapping table, and resembles the glyph for this MacKorean character.
  31. ^ Apple maps this to a sequence of the ASCII exclamation mark followed by the private-use character U+F87F.
  32. ^ Some mappings for these encodings are available here.
  33. ^ a b c d Were this one used, it would result in a trail byte in the C0 control codes range.
  34. ^ a b c d Were this one used, it would result in trail bytes in the 0x2_ and 0x3_ rows of ASCII. Johab does not use the 0x2_ row for trail bytes, similarly to most common legacy CJK encodings (compare Shift JIS, GBK, Big5). The EBCDIC-based version of Johab does not use trail bytes from either row, due to them being in the EBCDIC control code range.

References

  1. ^ a b c d e Lunde, Ken (2009). "Chapter 3: Character Set Standards". CJKV Information Processing. pp. 143–148. ISBN 978-0596514471.
  2. ^ a b c d e f Hwang, Jinsang (2005). The Social Shaping of ICTs Standards: A Case of National Coded Character Set Standards Controversy in Korea (PDF). University of Edinburgh.
  3. ^ a b c Lunde, Ken (1995-12-18). "2.4.6: Obsolete Standards". CJK.INF Version 1.9.
  4. ^ a b Shin, Jungshik. "What are KS X 1001(KS C 5601) and other Hangul codes?". Hangul & Internet in Korea FAQ.
  5. ^ a b c d Lunde, Ken (1995-12-18). "3.3.6: N-byte Hangul". CJK.INF Version 1.9.
  6. ^ a b "INFO: Hangul (Korean) Character Sets", Microsoft Support, Microsoft
  7. ^ a b Zsigri, Gyula (2002-06-18). "KSC and UHC".
  8. ^ Chang, Hye-Shik (28 November 2021). "cpython/Modules/cjkcodecs/_codecs_kr.c (revision d3faf43)". cPython source tree. Python Software Foundation.
  9. ^ a b c Chung, Jaemin (2017-03-30). Proposal to add an informative note to U+3164 HANGUL FILLER (PDF). Unicode Consortium. UTC L2/17-081.
  10. ^ "Code Page 01040" (PDF). IBM. Archived from the original (PDF) on 2015-07-08.
  11. ^ "Code Page 00891" (PDF). IBM. Archived from the original (PDF) on 2015-07-08.
  12. ^ "KSRI-87-37-IR: 한글·한자 코드 표준화에 관한 연구: A Study on Standardization of Hangul and Hanja Codes" (PDF) (in Korean). Ministry of Science and Technology. 1987. p. 68. Archived from the original (PDF) on 2019-03-01.
  13. ^ a b Korea Bureau of Standards (1988-10-01). Korean Graphic Character Set for Information Interchange (PDF). ITSCJ/IPSJ. ISO-IR-149.
  14. ^ "ibm-1363_P110-1997 (lead byte A1)". ICU Demonstration - Converter Explorer. International Components for Unicode / Unicode Consortium.
  15. ^ "euc-kr (lead byte A1)". ICU Demonstration - Converter Explorer. International Components for Unicode.
  16. ^ a b c d "Map (external version) from Mac OS Korean encoding to Unicode 3.2 and later". Apple.
  17. ^ "windows-949-2000 (lead byte A1)". ICU Demonstration - Converter Explorer. International Components for Unicode / Unicode Consortium.
  18. ^ a b c d "Lead Byte A1-A2 (Code page 949)". MSDN. Microsoft.
  19. ^ a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae Apple (2005-04-05). "Map (external version) from Mac OS Korean encoding to Unicode 3.2 and later". Unicode Consortium.
  20. ^ "windows-949-2000 (lead byte A2)". ICU Demonstration - Converter Explorer. International Components for Unicode / Unicode Consortium.
  21. ^ a b Lunde, Ken (2018-01-21). "Proposal to add standardized variation sequences for fullwidth East Asian punctuation" (PDF). UTC L2/17-436.
  22. ^ a b "StandardizedVariants.txt: Standardized Variation Sequences". Unicode Character Database. Unicode Consortium.
  23. ^ Lunde, Ken (2009). "Seemingly Missing Characters". CJKV Information Processing: Chinese, Japanese, Korean & Vietnamese Computing (2nd ed.). Sebastopol, CA: O'Reilly. p. 180. ISBN 978-0-596-51447-1.
  24. ^ a b Lunde, Ken (2009). "Appendix E: Vendor Character Set Standards" (PDF). CJKV Information Processing: Chinese, Japanese, Korean & Vietnamese Computing (2nd ed.). Sebastopol, CA: O'Reilly. ISBN 978-0-596-51447-1.
  25. ^ a b c Lunde, Ken (2008). "Chapter 4: Encoding Methods (§ Johab Encoding—KS X 1001:2004)". CJKV Information Processing (2nd ed.). Sebastopol, California: O'Reilly Media. pp. 268–273. ISBN 978-0-596-51447-1.
  26. ^ a b Shin, Jungshik (2011-10-14) . Johab to Unicode table. Unicode Consortium.
  27. ^ "Code Page Identifiers". Windows Dev Center. Microsoft.
  28. ^ a b "ibm-1364_P110-2007". International Components for Unicode. Unicode Consortium.
  29. ^ "ibm-933_P110-1995". International Components for Unicode. Unicode Consortium.

External links