КомпьютерлерБағдарламалау

UTF-8 - таңба кодтау

Unicode іс жүзінде барлық қолданыстағы Кодтамаларды қолдайды. Юникод таңбалар жиынын кодтау үздік нысаны UTF-8 кодтау болып табылады. Ол ASCII үйлесімділікті, деректердің бұрмалануына қарсылық, өңдеу тиімділігі мен жеңілдігі қолдайды. Бірақ бірінші нәрселер.

кодтау нысаны

Компьютерлер нөмірлері аннотация математикалық объектілерді, сондай-ақ сақтау және тұрақты мөлшері деректерді өңдеу бөлімшелерінің комбинациялары ретінде ғана емес, жұмыс - байт және 32-биттік сөздер. ұсынуға қалай анықтау кезінде кодтау стандарты осы ескермейді керек таңбалар саны.

компьютерлік жүйелерде, бүтін 8 бит (1 байт), 16 немесе 32 бит жад ұяшықтарда сақталған. Әрбір нысаны жад ұяшықтарының тізбегі нақты символы сәйкес бүтін сан болып табылатын Unicode кодтауды, анықтайды. стандартта Unicode таңбаларды 8, 16 және 32-биттік блоктар кодтау үш түрлі нысандары бар. Тиісінше, олар UTF-8, UTF-16 және UTF-32 ретінде белгілі. Аты UTF Unicode Трансформация Format білдіреді. кодтау үш нысандарын Әрбір тең өкілдігі Unicode таңба түрлі қосымшаларда артықшылықтары бар білдіреді.

Деректерді шифрлау Unicode стандартына барлық таңбаларды ұсыну үшін пайдаланылуы мүмкін. Осылайша, олар кодтау түрлі нысандарын пайдалана отырып, әр түрлі себептерге байланысты шешімдер толық үйлесімді. Әрбір кодтау мағыналы деректер жоғалтпай басқа екі кез келген айналдыруға болады.

nenalozheniya принципі

емес ішінара жабу ескере әзірленген нысандары Юникод шифрлауымен әрқайсысы. Мысалы, Windows-932 код бір немесе екі байт таңбаларды қалыптастырады. тізбегі ұзындығы бірінші байт байланысты, сондықтан екі байттық және бір байт дизъюнктным сериясы жетекші байт құндылықтар. Алайда, бір байт және артқы байт ретпен құны келуі мүмкін. Бұл таңба іздеу D (коды 44), бұл қате екі байтты таңба «D» (коды 84 44) реттілігінің екінші бөлігіне кіретін таба аласыз, бұл, мысалы, білдіреді. дұрыс болып табылатын тізбегі білу үшін, бағдарлама назарға алдыңғы байтты алуы тиіс.

алдыңғы және артқы байт матч егер жағдай, күрделі болып табылады. Бұл белгісіздік алу үшін кері іздеу мәтін немесе бірегей коды жүйелілігінің басына толғанға дейін болады дегенді білдіреді. Бұл ғана емес, тиімсіз, бірақ толық мәтін бір ғана дұрыс байт оқылмайтын айналды, өйткені, ықтимал қателер қорғалған емес.

жетекші құны, артқы және сақтау бірыңғай блок бірдей ақпарат жоқ, өйткені. пішімі түрлендіру Unicode осы проблеманы болдырмауға мүмкіндік береді Бұл іздеу және салыстыру үшін барлық Unicode, салдарынан таңба кодына түрлі бөліктерінде сәйкестік үшін қате нәтижелер бере ешқашан қамтамасыз етеді. принципі nenalozheniya сақтауға кодтау осы нысандары, басқа да Шығыс Азия көп байтты кодтау оларды ерекшеленеді, бұл. факт

nonintersection Басқа аспект Юникод кодтау әр таңбаны анық айқындалған шекарасы бар. Бұл алдыңғы символдар белгісіз санын сканерлеу қажеттігін жояды. Бұл мүмкіндік, кейде өзін-өзі желісті кодтау деп аталады. коды бірлік бұрмалау бір ғана сипаттағы бұрмалау таныстырады, және қоршаған таңбалар әлі өзгеріссіз болып табылады. 8-биттік формат айырбастау жылы байт сілтегіш ұпай болса, символы басталуын табуға (екілік кодта) 10xxxxxx бастап бір үш кері Шарлау үшін қажет.

консистенциясы

Unicode Consortium толық кодтау барлық 3 нысандарын қолдайды. Юникод таңбалар-кодтау стандартын іске асуы бірдей жарамды нысандарын - Ол барлық түрлендіру форматтары ретінде, UTF-8 және Unicode қарсы маңызды емес.

Байт-бағдар

UTF-32 білдіруге таңбалар Unicode код сәйкес келетін 32-биттік кодтық бөлігін, қажет болады. UTF-16 - екі 16-биттік бірлік бір. А UTF-8 4 байт дейін пайдаланады.

UTF-8 кодтау байт-бағдарланған ASCII-негізделген жүйелерімен үйлесімді болуы үшін әзірленген. ұзақ уақыт бойы ақпараттық технологияларды қолданыстағы бағдарламалық қамтамасыз ету және іс жүзінде ең байт ретпен таңбалар өкілдік сүйенеді. Бірнеше хаттамалары тұрақтылық байланысты ASCII кодтау және арнайы бақылау таңбаларды пайдаланады болдырмауға мүмкіндік береді. Unicode рәміздер 8-биттік кодтау, кез келген балама ASCII таңбаны немесе бақылау таңбаны пайдаланып, Unicode болады жағдайларға бейімделе қарапайым тәсілі. Осы мақсатта, және ол UTF-8 кодтау болып табылады.

айнымалы ұзындық

UTF-8 - 8-биттік сақтау бірлік тұратын айнымалы ұзындық кодтау, әрбір жеке байт тиесілі тізбегінің бөлігі көрсетеді жоғарғы бит. коды ретпен бірінші элементіне бөлінген құндылықтардың бірі диапазоны, екіншісі - келесі үшін. Бұл дизъюнктностью кодтауды қамтамасыз етеді.

ASCII

UTF-8 кодтау толық ASCII кодтары (0x00-0x7F) қолдау. Бұл Unicode таңба U + 0000-U + 007F бір байт 0x00-0x7F UTF-8 айналдыруға және, осылайша, ASCII айырмашылығы болу дегенді білдіреді. Сонымен қатар, белгісіздік болдырмау үшін, мән Unicode таңбалардың бір байт өкілдік кез келген көп пайдаланылатын емес 0x00-0x7F. таңбаларды кодтау үшін екі байт ретін пайдалана отырып, ASCII басқа neideograficheskih. Рәміздері U + 0800-U + FFFF түрленеді үш байт ұсынылған, және U + FFFF астам қосымша кодтары төрт байтты талап етеді.

Қолдану саласы

UTF-8 кодтау әдетте HTML хаттамада артықшылық беріледі, және ұқсайды.

XML UTF-8 кодтау үшін толық қолдауымен бірінші стандартты айналды. Стандарттар ұйымдар, сондай-ақ, оны ұсынамыз. консорциум W3C және IETF инженерлік тобы барлық кодтау бойынша келісімге келгенде ASCII-таңбалардың ерекшеленеді URL мекен-жайы қолдау мәселесі, шешілді URL мекенжайлары тек UTF-8.

ASCII Сыйысымдылық жаңа бағдарламалық көшу жеңілдетеді. Бар UTF-8 JEdit, Emacs, BBEdit, Eclipse, және «Блокнот» Windows операциялық жүйесі, соның ішінде ең мәтіндік редакторлар, жұмыс істейді. Юникод шифрлауымен Басқа ешқандай нысаны құралы осындай қолдау мақтана алмайды.

артықшылығы кодтау, ол байт тізбегінен тұрады, бұл. UTF-8 жолдың C және басқа бағдарламалау тілдерінде жұмыс істеу оңай емес. Бұл кодтау тек нысаны болып табылады, тәртібі жапсырмаларды талап етпейді XML ерекшеліктерін немесе кодтау мәлімдемесін байт.

өзін-өзі синхрондау

басқа көп байт таңба жиындарының салыстырғанда өңдеу 8-биттік символдарды пайдаланатын ортада, UTF-8 келесі артықшылықтары бар:

  • бірінші байт коды тізбегі оның ұзындығы туралы ақпаратты қамтиды. Бұл тікелей іздеу тиімділігін арттырады.
  • бастапқы байт тұрақты мәндер ауқымы шектелген ретінде символы басталуын табу жеңілдетілген.
  • Жоқ қиылысуы байт құндылықтар.

артықшылықтарын салыстыру

UTF-8 кодтау жинақы болып табылады. Бірақ Шығыс Азия таңбаларды кодтау үшін пайдаланылатын (қытай, жапон, корей, белгілерін пайдалана отырып қытай жазу) 3-байт бірізділігінің пайдаланылады. Сондай-ақ, UTF-8 кодтау өңдеу жылдамдығын кодтау өзге де нысандарын түспейді. сызықтар сұрыптау Екілік Unicode сұрыптау бинарлық бірдей нәтижені береді.

кодталуы схемасы

кодталуы схемасы бір байт орналасуы коды бірлік үшін кодтау рәміздер нысанын және әдісін қамтиды. кодтау схемасы Unicode стандартын анықтау үшін бастапқы байт реті белгісінен (BOM, байт бірізділігінің белгісі) пайдалануды қамтамасыз етеді.

Кезде UTF-8 ерекшелігі тегінде ерекшеліктер ғана кодтау нысандарын пайдалану сілтеме шектеледі. оның кодтау бірлігі мөлшері бір байт ретінде байт UTF-8 анықтау проблемалар бар. қажет, не ұсынылады де кодтау осы түрінде үшін BOM пайдалану. BOM UTF-8 кодтау үшін байт тәртібі белгісін немесе қолтаңбаны пайдалана отырып, басқа да кодтаудың түрлендірілетін болады мәтінінде орын алуы мүмкін. 3 байт EF BB 16 16 BF 16 жүйелілігі болып табылады.

UTF-8 кодтауын қалай орнату керек

кодтау HTML UTF-8 төмендегі кодымен орнатылған:

бас

META HTTP-экв = «Content-Type» мазмұн = «мәтін / HTML; Кодтау = UTF-8» ˃

PHP UTF-8 кодтау шығу деңгейі мәні қате орнатқаннан кейін файлдың басында тақырып () функциясын пайдалану орнатылады:

˂? Php

error_reporting (-1);

тақырып ( «Content-Type: мәтін / HTML; Кодтау = UTF-8 ');

а MySQL деректер базасы UTF-8 кодтауында қосылу үшін орнатылады:

˂? Php

mysql_set_charset ( 'utf8');

CSS-файл кодтау UTF-8 таңба төмендегідей көрсетілген:

@charset «UTF-8»;

Сіз барлық түрлерін файлдарды сақтағанда BOM жоқ UTF-8 кодтауын таңдаңыз, әйтпесе сайт жұмыс істемейді. UTF-8 кодтауын өзгерту DreamWeave осы істеу үшін мәзір элементі «атауы / кодтау - - Бет сипаттары өзгертулері» таңдау керек. Бетті қайта жүктеу кейін, «Connect Unicode қолы (BOM)» құсбелгі алып тастаңыз және өзгерістер қолданылады. Беттегі немесе дерекқордағы кез келген мәтін кодтаудың басқа нысанын енгізілді болса, ол қайта енгізіңіз немесе қайта кодтау қажет. Егер сіз тұрақты тіркестерін жұмыс істеген кезде, модификаторлар U пайдаланыңыз.

Сіз сондай-ақ Windows туралы «Блокнот» жылы UTF-8 кодтауында файлды сақтауға болады. кодтау қажетті нысанын орнату және UTF-8 файлды сақтау үшін - дастархан мәзірімнің пунктының «Save As ... Файл» таңдағаннан кейін.

мәтіндік редактор Notepad ++ жылы UTF-8 басқа орнатылған болса, дастархан мәзірімнің пунктының «BOM жоқ UTF-8 түрлендіру» таңбаны өзгертуге және UTF-8 сақтау арқылы.

балама жоқ

саяси және лингвистикалық шекаралар жойылды Жаһандану, жергілікті сипаттамалары бар символды жиынтықтар аз пайдалану болып табылады. Юникод тасталатын барлық қолдайтын бір таңбалар жинағы болып табылады. А UTF-8 - болып Unicode, дұрыс іске асыру үлгісі:

  • Ол ASCII кодтау үйлесімділігі, оның ішінде құралдарының кең ауқымын қолдайды;
  • Бұл бұрмалау деректер төзімді болып табылады;
  • қарапайым және емдеу тиімді;
  • платформа тәуелсіз болып табылады.

кодтау немесе нышандар жинағын қандай түрінде туралы UTF-8 пікірталас пайда жақсы сәйкес, ол мағынасыз болып.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 kk.birmiss.com. Theme powered by WordPress.