"യു.ടി.എഫ്-8" എന്ന താളിന്റെ പതിപ്പുകൾ തമ്മിലുള്ള വ്യത്യാസം
(ചെ.)No edit summary |
(ചെ.) യന്ത്രം ചേര്ക്കുന്നു: ms:UTF-8 |
||
വരി 76: | വരി 76: | ||
[[lt:UTF-8]] |
[[lt:UTF-8]] |
||
[[lv:UTF-8]] |
[[lv:UTF-8]] |
||
[[ms:UTF-8]] |
|||
[[nl:UTF-8]] |
[[nl:UTF-8]] |
||
[[nn:UTF-8]] |
[[nn:UTF-8]] |
01:37, 30 നവംബർ 2009-നു നിലവിലുണ്ടായിരുന്ന രൂപം
യൂണികോഡില് ഉപയോഗിക്കുന്ന ഒരു എന്കോഡിങ്ങ് രീതിയാണ് യു.ടി.എഫ്-8 (UTF-8)(8-bit UCS/Unicode Transformation Format). ഈ എന്കോഡിങ്ങ് രീതിയനുസരിച്ച് യൂണികോഡിലുള്ള ഏതു ചിഹ്നങ്ങളെയും സൂചിപ്പിക്കുവാന് കഴിയും മാത്രവുമല്ല ഇത് ആസ്കി (ASCII) എന്കോഡിങ്ങിനെ ഉള്ക്കൊള്ളുന്നുമുണ്ട്. അതിനാല് തന്നെ കമ്പ്യൂട്ടര് വിവരസാങ്കേതിക രംഗത്ത് നിലവില് ഏറ്റവും സ്വീകാര്യമായ എന്കോഡിങ്ങ് രീതിയായി ഇത് മാറി. ഇ-മെയില്, വെബ് താളുകള്,[1] തുടങ്ങി ക്യാരക്ടറുകള് ശേഖരിക്കുകയും കൈമാറ്റം ചെയ്യുകയും ചെയ്യുന്ന മേഖലകളില് ഇത് ഉപയോഗിക്കപ്പെടുന്നു.
യു.ടി.എഫ്-8 ല് ഓരോ ചിഹ്നത്തെയും ഒന്നും മുതല് നാല് ഒക്ടെറ്റുകളിലായി (Octet, എട്ട് ബിറ്റുകളുടെ നിര അതായത് ഒരു ബൈറ്റ്) രേഖപ്പെടുത്തപ്പെടുന്നു. 128 യു.എസ്-ആസ്കി (US-ASCII) ക്യാരക്ടറുകള് മാത്രമാണ് ഒരു ബൈറ്റിലായി രേഖപ്പെടുത്തപ്പെടുന്നത്. മറ്റുള്ളവ രണ്ട് മുതല് നാല് ബൈറ്റുകളിലായി വിന്യസിക്കപ്പെടുന്ന. ഈ രീതിയില് മലയാളം ക്യാരക്ടറുകള് രേഖപ്പെടുത്തുവാന് മൂന്ന് ബൈറ്റുകള് വീതം ആവശ്യമാണ്.
യൂണികോഡ് |
---|
Character encodings |
UCS |
Mapping |
Bi-directional text |
BOM |
Han unification |
Unicode and HTML |
Unicode and E-mail |
Unicode typefaces |
വിവരണം
യൂണികോഡ് മാനദണ്ഡത്തില് ഒരോ ക്യാരക്ടറിനും 32 ബിറ്റ് നീളമുള്ള കോഡ് നല്കിയിരിക്കുന്നു. ഇതില് 0D00 മുതല് 0D7F വരെയുള്ള കോഡുകളാണ് മലയാളത്തിന് അനുവദിച്ചിരിക്കുന്നത്.
ആദ്യത്തെ 128 സ്ഥാനങ്ങള് ആസ്കി ക്യാരക്ടറുകള്ക്കും നല്കിയിരിക്കുന്നു, ഇതിന് താഴ്ന്ന സ്ഥാനത്തുള്ള 7 ബിറ്റുകള് മാത്രം മതിയാകും. ഈ അവസരത്തില് ഒരു കോഡ് ഒരു ബൈറ്റായി എന്കോഡ് ചെയ്യുന്നു ഈ അവസരത്തില് ഏറ്റവും ഉയര്ന്ന സ്ഥാനത്തുള്ള ഒരു ബിറ്റ് 0 ആയിരിക്കും. പട്ടികയില് ആദ്യത്തെ വരിയില് ഇത് കാണിച്ചിരിക്കുന്നു. U+0000 മുതല് U+007F വരെയുള്ള ക്യാരക്ടറുകളാണ് ഇവ. അതിനാല് ആസ്കി ക്യാരക്ടറുകളെല്ലാം ഒരു ബൈറ്റില് ഉള്കൊള്ളിക്കുന്നു.
താഴ്ന്ന ഏഴ് ബിറ്റുകള്ക്ക് പുറമേ ശേഷം 11 സ്ഥാനം വരെയുള്ള ബിറ്റുകള് ഉപയോഗിക്കുന്ന U+0080 മുതല് U+07FF വരെയുള്ള കോഡുകള് രണ്ട ബൈറ്റുകളിലായി വിന്യസിക്കപ്പെടുന്നു. ആദ്യത്തെ ബൈറ്റില് ആറ് താഴ്ന്ന സ്ഥാനങ്ങളിലും രണ്ടാമത്തെ ബൈറ്റില് താഴന്ന അഞ്ച് സ്ഥാനങ്ങളിലും ഇവ ചേര്ക്കുന്നു. പട്ടികയില് രണ്ടാമത്തെ വരിയില് ഇത് കാണിച്ചിരിക്കുന്നു. ഇതേ പ്രകാരം U+0800 മുതല് U+FFFF വരെയുള്ളവ മൂന്ന് ബൈറ്റുകളിലായും അതിന് ശേഷമുള്ളവ നാല് ബൈറ്റുകളിലായും വിന്യസിക്കപ്പെടുന്നു. പട്ടിക ശ്രദ്ധിക്കുക.
Unicode | Byte1 | Byte2 | Byte3 | Byte4 | example |
---|---|---|---|---|---|
U+0000-U+007F
|
0xxxxxxx
|
'$' U+0024 → 00100100 → 0x24
| |||
U+0080-U+07FF
|
110yyyxx
|
10xxxxxx
|
'¢' U+00A2 → 11000010,10100010 → 0xC2,0xA2
| ||
U+0800-U+FFFF
|
1110yyyy
|
10yyyyxx
|
10xxxxxx
|
'€' U+20AC → 11100010,10000010,10101100 → 0xE2,0x82,0xAC
| |
U+10000-U+10FFFF
|
11110zzz
|
10zzyyyy
|
10yyyyxx
|
10xxxxxx
|
U+10ABCD → 11110100,10001010,10101111,10001101 → 0xF4,0x8A,0xAF,0x8D
|
ആദ്യത്തെ 128 ആസ്കി ക്യാരക്ടറുകള് അതേപടി ചേര്ക്കുന്നതിനാല് എല്ലാ ആസ്കി ലേഖനങ്ങളും യു.ടി.എഫ്-8 എന്കോഡിങ്ങുമായി പൊരുത്തമുള്ളവയായിരിക്കും. യു.ടി.എഫ്-8 എന്കോഡ് ചെയ്യപ്പെട്ട ലേഖനം തിരിച്ചു ഡീകോഡ് ചേയ്യുന്ന വളരെ ലളിതമാണ്. ഒരു ബൈറ്റിന്റെ ഉയര്ന്ന ബിറ്റ് 0 ആണെങ്കില് അത് ഒരു ബൈറ്റ് മാത്രമുള്ള ക്യാരക്ടര് (ഒരു ആസ്കി ക്യാരക്ടര്) ആയിരിക്കും. ആദ്യത്തെ ഉയര്ന്ന രണ്ട് ബിറ്റുകളുടേയും മൂല്യം 1 ആണെങ്കില് രണ്ട് ബൈറ്റുകളിലായി എന്കോഡ് ചെയ്യപ്പെട്ടതാണ് അതിനാല് അടുത്ത ബൈറ്റ്കൂടി വായിക്കേണ്ടതുണ്ട്. ഇതേ പ്രകാരം ഉയര്ന്ന മൂന്നോ നാലോ ബിറ്റുകളുടെ മൂല്യം 1 ആണെങ്കില് യഥാക്രമം അവ മൂന്ന്, നാല് ബൈറ്റുകളിലായി എന്കോഡ് ചെയ്യപ്പെട്ടതാണ്.