Юникод дегеніміз не?
Юникод (Unicode) әлемнің барлық дерлік тілдерінің таңбаларын қамтитын кодтау стандарты болып табылады. Бұл стандарт компьютерлерге мәтіндік ақпаратты өңдеуге және оны экранда дұрыс көрсетуге мүмкіндік береді. Компьютердегі барлық ақпарат екілік форматта, яғни нөлдер мен бірлердің тізбегінде сақталады және өңделеді. Мұндай екілік тізбектерді пайдаланушыларға түсінікті таңбаларға ауыстыру үшін әр әріпке, санға немесе музыка нотасына бірегей сандық код тағайындайтын арнайы кодировкалар әзірленді.
Компьютер таңбаларды экранға дұрыс шығару үшін, олардың қандай екілік кодқа сәйкес келетінін білуі керек. Мысалы, 0100 0001 екілік тізбегі латын әрпі A-ға сәйкес келеді. Бірақ мүмкін кодтардың саны шектеулі болғандықтан, Юникод басқаша жұмыс істейді. Әр таңбаға U+XXXX түріндегі бірегей сандық мән – кодтық нүкте беріледі. U+ префиксі Юникодты білдіреді, ал XXXX таңбаның он алтылық мәнін көрсетеді.
Он алтылық жүйеде 0-ден 9-ға дейінгі сандарды және 10-нан 15-ке дейінгі сандарды көрсететін A-дан F-ке дейінгі әріптерді қоса алғанда 16 таңба қолданылады. Мысалы, ағылшын әрпі A үшін кодтық нүкте U+0041, ал HELLO сөзі үшін кодтық нүктелер U+0048, U+0065, U+006C, U+006C, U+006F сәйкес келеді. Әр кодтық нүкте кейін компьютерге түсінікті екілік форматқа айналдырылады және оның жадысында сақталады. Қызығы, Юникод көмегімен эмодзи де кодталады.
Юникод не үшін қажет?
Бастапқыда әр тілдің таңбалары үшін жеке кодировкалар болды, олардың көбісі бір-бірімен үйлесімсіз еді. Бұл мониторда қалыпты мәтіннің орнына таңқаларлық символдар мен иероглифтер пайда болғанда "кракозябры" мәселесінің туындауына әкелді. Мысалы, Ресейден Маша деген қыз Армениядағы досына Привет деген сөзбен электрондық хат жібергенде, ол орнына ????? түрінде хабарлама алуы мүмкін еді. Негізгі мәтіннен айырылып қалатын, өйткені жіберуші мен алушының компьютерлері әртүрлі кодировкаларды қолдайтын.
Юникод бұл мәселені шешу үшін жасалған, символдарды біртұтас әдіспен көрсетуге мүмкіндік беріп, көптілді деңгейде мәтінмен жұмыс істеуді жеңілдетеді. Юникод арқылы тіпті клингон тілінде, "Жұлдызды жол" сериалының әлемі үшін лингвист Марк Окранд жасаған жасанды тілде электрондық хат жіберуге немесе сайтта мәтін орналастыруға болады. Алушылар оны оқуға болатын түпнұсқа түрінде көре алады. Бүгінгі таңда Юникодта шамамен 150 мың таңба бар, бұл дерлік барлық жазу жүйелерін қамтуға жеткілікті.
Басқа кодировкалар: Юникод пайда болғанға дейін не болды
Юникод пайда болғанға дейін әр түрлі тілдер үшін арнайы жасалған көптеген әр түрлі кодировкалар болды. Ең танымал кодировкалар ASCII, KOI8-R және Windows-1251.
- ASCII: Бұл кодтау кестесінде латын әріптері, сандар және тыныс белгілері сияқты 127 таңба бар. Дегенмен, ASCII кириллицаны қолдамайды және орыс тілінде мәтінді кодтау әрекетін жасағанда пайдаланушылар мәтіннің орнына сұрақ белгілерін алатын.
- KOI8-R: Бұл кодировка тек латын әліпбиінің таңбаларын ғана емес, көрсету үшін жасалған. KOI8-R ASCII-мен үйлесімді және 256 таңба кіреді, бұл кириллицаны көрсетуге мүмкіндік береді.
- Windows-1251: Кириллицаны қолдайтын тағы бір кодировка. Сонымен қатар, әр түрлі кодировкаларда таңбалар әртүрлі кодталған болуы мүмкін. Мысалы, Г таңбасы KOI8-R және Windows-1251-де әртүрлі болуы мүмкін.
Әр түрлі кодировкалардың үйлесімсіздігі мәселесі бір кодировкамең кодталған мәтін басқа кодировкамен шешіліп шығарылғанда пайда болды. Сонымен бірге, ескі кодировкалардағы таңбалардың саны бойынша маңызды шектеулер болды: ASCII үшін — 127 таңба, Windows-1251 үшін — 256. Оқшау тілдер үшін кодировкалар болмайтын. Ал Юникод барлық рұқсат етілген таңбаларды және олардың кодталу ережелерін қамти отырып, әмбебап шешім ұсынады.