Ujednolicony kod Hangul - Unified Hangul Code
Skróty) | Strona kodowa Windows 949, strona kodowa IBM 1363 |
---|---|
Języki) | koreański |
Standard | Standard kodowania WHATWG (jako „EUC-KR”) |
Klasyfikacja | Rozszerzony ISO 646 , kodowania o zmiennej szerokości , kodowanie CJK |
Rozszerza | EUC-KR |
Inne powiązane kodowanie(-a) | KPS 9566 -2003 , KPS 9566-2011 |
Unified Hangul Code ( UHC ) lub Extended Wansung , znany również w systemie Microsoft Windows jako Code Page 949 ( Windows-949 , MS949 lub niejednoznacznie CP949 ) to strona kodowa systemu Microsoft Windows dla języka koreańskiego . Jest to rozszerzenie Kodeksu Wansung ( KS C 5601 :1987, zakodowane jako EUC-KR ), aby uwzględnić wszystkie 11172 nieczęściowe sylaby Hangul obecne w Johab (KS C 5601:1992 załącznik 3). Odpowiada to wstępnie skomponowanym sylabom dostępnym w Unicode 2.0 i nowszych.
Wansung Code ma tę wadę, że przypisuje kody tylko do 2350 wstępnie skomponowanych sylab Hangul, które mają własne punkty kodowe KS X 1001 (KS C 5601) (z łącznie 11172, nie licząc tych używających przestarzałego jamo) i wymaga od innych użycia ośmiu -bajtowe sekwencje kompozycji, które nie są obsługiwane przez niektóre częściowe implementacje standardu. UHC rozwiązuje ten problem, przypisując pojedyncze kody do wszystkich możliwych sylab skonstruowanych przy użyciu nowoczesnego jamo, dokonując przypisania poza przestrzenią kodowania używaną w KS X 1001.
Zakres bajtu wiodącego został rozszerzony do 0x 81–FE, a zakres bajtu śladu został rozszerzony do 0x41–5A, 0x61–7A i 0x81–FE (w EUC-KR oba zakresy to 0xA1–FE). Kody spoza zakresów EUC-KR są używane dla dodatkowego hangula. Jeśli rozpatrywane osobno, zarówno blok EUC-KR Hangul, jak i rozszerzona sekcja Hangul UHC są w porządku Unicode.
Terminologia
Ujednolicony kod Hangul nie jest zarejestrowany w IANA jako standard do przekazywania informacji przez Internet. Alternatywy obejmują UTF-8 . Jednak standard kodowania W3C / WHATWG używany przez HTML5 zawiera rozszerzenia Unified Hangul Code w swojej definicji „EUC-KR”.
Microsoft przypisuje Windows-949 etykietę „ks_c_5601-1987”, która prawidłowo odnosi się do samego KS X 1001 ( KS C 5601 jest oryginalną nazwą KS X 1001). Organizacja WHATWG traktuje etykietę „ks_c_5601-1987” zamiennie z „EUC-KR” w celu zapewnienia „zgodności z wdrożoną treścią”. Unicode Consortium «przestarzałe / Wschodnio-Azją» zbieranie jest wycofywanych mapowań zawiera mapowanie zunifikowany kod Hangul jako «KSC5601.TXT» z mapowania automatycznie pochodnych do 7-bitowy KS X 1001 są zawarte w «KSX1001.TXT».
Strona kodowa IBM 949 jest kolejnym, skądinąd niepowiązanym, rozszerzeniem EUC-KR. International Components for Unicode (ICU) używa „cp949”, „949” lub „ibm-949” w odniesieniu do tej strony kodowej IBM oraz „ms949” lub „windows-949” (lub kilku wariantów „ks_c_5601-1987”) aby odnieść się do mapowania Windows UHC. Natomiast Python rozpoznaje „cp949”, „949”, „ms949” i „uhc” jako etykiety dla UHC i nie zawiera kodeka IBM-949. Spośród etykiet zawierających numer strony kodowej, WHATWG rozpoznaje tylko „windows-949”.
Strona kodowa IBM dla Unified Hangul Code nosi nazwę Code page 1363 ( IBM-1363 ) lub „koreański MS-Win”. Jest to połączenie strony kodowej SBCS 1126 i strony kodowej DBCS 1362. Różni się mapowaniem pojedynczego bajtu 0x5C na znak wygranej (U+20A9); Windows mapuje 0x5C na U+005C (punkt kodowy Unicode dla odwrotnego ukośnika ) tak jak w ASCII, chociaż czcionki często nadal renderują go jako znak Won. Mapowanie Unicode kreski fali (0xA1AD) również się różni, przy czym mapowanie IBM faworyzuje U+301C, podczas gdy mapowanie Microsoft faworyzuje U+223C (operator tyldy). Mapowanie IBM dla UHC jest dostępne jako „ibm-1363” w ICU, podczas gdy kodek ICU „windows-949” jest określany jako IBM-1261 w niektórych komentarzach do kodu źródłowego ICU.
Kody jednobajtowe
Poniżej znajduje się jednobajtowa część strony kodowej zgodnie z definicją IBM. Podobnie jak strona kodowa 437 , bajty kodu sterującego mogą być używane jako kody sterujące lub kody graficzne w zależności od kontekstu – kody graficzne są pokazane poniżej. Firma Microsoft używa mapowań ASCII dla wszystkich bajtów ASCII, chociaż ukośnik odwrotny może nadal być renderowany jako znak wygranej .
_0 | _1 | _2 | _3 | _4 | _5 | _6 | _7 | _8 | _9 | _A | _B | _C | _D | _MI | _F | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0_ 0 |
NUL 0000 |
┌ 250C |
┐ 2510 |
└ 2514 |
┘ 2518 |
│ 2502 |
─ 2500 |
• 2022 |
◘ 25D8 |
○ 25CB |
◙ 25D9 |
♂ 2642 |
♀ 2640 |
♪ 266A |
♫ 266B |
☼ 263c |
1_ 16 |
┼ 253C |
◄ 25C4 |
↕ 2195 |
‼ 203C |
¶ 00B6 |
┴ 2534 |
┬ 252C |
┤ 2524 |
↑ 2191 |
├ 251 c |
→ 2192 |
← 2190 |
∟ 221F |
↔ 2194 |
▲ 25B2 |
▼ 25BC |
2_ 32 |
SP 0020 |
! 0021 |
„ 0022 |
# 0023 |
0024 zł |
% 0025 |
& 0026 |
' 0027 |
( 0028 |
) 0029 |
* 002A |
+ 002B |
, 002C |
- 002D |
. 002E |
/ 002F |
3_ 48 |
0 0030 |
1 0031 |
2 0032 |
3 0033 |
4 0034 |
5 0035 |
6 0036 |
7 0037 |
8 0038 |
9 0039 |
: 003A |
; 003B |
< 003C |
= 003D |
> 003E |
? 003F |
4_ 64 |
@ 0040 |
0041 |
B 0042 |
C 0043 |
D 0044 |
E 0045 |
F 0046 |
G 0047 |
H 0048 |
I 0049 |
J 004A |
K 004B |
L 004C |
M 004D |
N 004E |
O 004F |
5_ 80 |
P 0050 |
P 0051 |
R 0052 |
S 0053 |
T 0054 |
U 0055 |
V 0056 |
W 0057 |
X 0058 |
Tak 0059 |
Z 005A |
[ 005B |
₩ 20A9 |
] 005D |
^ 005E |
_ 005F |
6_ 96 |
` 0060 |
0061 |
b 0062 |
c 0063 |
d 0064 |
e 0065 |
f 0066 |
g 0067 |
h 0068 |
I 0069 |
j 006A |
k 006B |
L 006C |
m 006D |
n 006E |
o 006F |
7_ 112 |
p 0070 |
q 0071 |
R 0072 |
s 0073 |
t 0.074 |
U 0075 |
v 0076 |
w 0077 |
x 0078 |
y 0079 |
z 007A |
{ 007B |
| 007C |
} 007D |
~ 007E |
⌂ 2302 |
List Numer Interpunkcja Symbol Inne Nieokreślony Różnice w stosunku do strony kodowej 437
Przypisy
Bibliografia
Zewnętrzne linki
- Dokumentacja firmy Microsoft dotycząca systemu Windows-949
- Dokumentacja IBM dla IBM-1363
- Mapowanie Windows-949 na Unicode
- Pliki mapowania International Components for Unicode (ICU): ibm-1363_P110-1997.ucm , ibm-1363_P11B-1998.ucm i windows-949-2000.ucm
- Demonstracja ICU dla Windows-949 (z mapowaniem ASCII)
- Demonstracja ICU dla IBM-1363 (ze znakiem wygranej 0x5C)