Tietokoneet, Ohjelmointi
UTF-8 - merkkikoodauksen
Unicode tukee lähes kaikkia nykyisiä merkistöä. Paras muoto, joka koodaa Unicode-merkistö on UTF-8. Se tukee yhteensopivuus ASCII, vastustuskyky vääristy, tehokkuutta ja työstön helppous. Mutta asiat ensin.
koodaus muoto
Tietokoneet toimivat ei vain numeroita abstrakti matemaattisten objektien, sekä yhdistelmät yksiköiden varastointi ja käsittely kiinteän koko data - tavu ja 32-bittisiä sanoja. Koodausstandardi on otettava tämä huomioon määrittäessään kuinka esittää merkkien määrä.
Tietokonejärjestelmiin, kokonaislukujen muistiin tallennetut soluissa 8 bittiä (1 tavu), 16 tai 32 bittiä. Kukin lomake määrittelee Unicode, joka sekvenssi muistisolujen on kokonaisluku, joka vastaa tietty symboli. Standardissa on kolme eri koodausta Unicode-merkkejä 8, 16 ja 32-bitin lohkoja. Näin ollen ne tunnetaan UTF-8, UTF-16 ja UTF-32. Nimi UTF tarkoittaa Unicode Transformation Format. Kukin kolmesta muotojen koodausvälineet on sama esitys Unicode on etuja erilaisissa sovelluksissa.
Salaus voidaan käyttää edustamaan kaikki merkit Unicode-standardia. Näin ollen ne ovat täysin yhteensopivia ratkaisuja eri syistä, käyttäen eri koodaus. Kukin koodaus voidaan yksiselitteisesti muunnetaan tahansa kaksi muuta ilman tietojen menetyksen.
nenalozheniya periaate
Kunkin lomakkeen Unicode kehitetty näkymä kuin osittainen päällekkäisyys. Esimerkiksi Windows-932 muodostaa merkkiä yhden tai kaksi tavua koodia. Sekvenssin pituus riippuu ensimmäisen tavun, joten johtava tavujen arvoja sarjassa kahden tavun ja yhden tavun erilliset. Kuitenkin, arvo yksi tavu ja perään tavu sekvenssi voi olla sama. Tämä tarkoittaa esimerkiksi sitä, että merkki haku D (koodi 44), voidaan löytää sen vahingossa pääsemästä toisen osan sekvenssin kahden tavun merkki "D" (koodi 84 44). Selvittää, mikä järjestys on oikea, ohjelmassa olisi otettava huomioon aikaisemmat tavua.
Tilanne on monimutkainen, jos johtava ja perään tavua ottelussa. Tämä tarkoittaa sitä, että jotta voitaisiin poistaa epäselvyys on käänteisen haun ennen alkua tekstin tai yksilöllisen koodin sekvenssi. Tämä ei ole vain tehotonta, mutta se ei ole suojassa mahdollisilta virheitä, koska vain yksi väärä tavun koko tekstiin on tullut lukukelvoton.
Muuntaminen Unicode välttää tämän ongelman, koska arvo johtava, perään, ja yksi muistiyksikkö eivät ole samat tiedot. Näin varmistetaan, että kaikki Unicode hakuun ja vertailuun, ei koskaan antaa virheellisiä tuloksia, koska sattuma eri puolilla merkkisen koodin. Se, että nämä muodot koodaus noudattaa periaatetta nenalozheniya, erottaa ne muista Itä-Aasian monitavuisia koodauksia.
Toinen näkökohta nonintersection Unicode encodings on, että jokainen merkki on selkeästi määritelty rajalla. Tämä poistaa tarpeen skannata ennalta määrittelemättömän aiempien symboleja. Tämä ominaisuus on joskus kutsutaan itsekellottavan koodausta. Vääristymistä koodi yksiköiden vääristymän vain yhden merkin, ja ympäröivä merkit ovat yhä ehjät. Kun 8-bittinen muuntaminen, jos osoitin osoittaa tavu, alkaen 10xxxxxx (binaarikoodin) löytää alussa symboli tarvitaan yhdestä kolmeen käänteisen siirtymiä.
johdonmukaisuus
Unicode Consortium tukee kaikkia 3 muotoja koodauksia. On tärkeää, ettei vastustamatta UTF-8 ja Unicode, kuten kaikki muuntaminen formaatit - yhtä pätevä sovelluksen muodossa Unicode-koodausta standardi.
Tavu-orientaatio
Edustaa UTF-32 merkkiä tarvitaan 32-bittinen koodi yksikkö, joka on sama kuin Unicode-koodi. UTF-16 - yksi tai kaksi 16-bitin yksiköissä. UTF-8 käyttää jopa 4 tavua.
UTF-8 on suunniteltu yhteensopivaksi tavu suuntautunut ASCII-pohjaisissa järjestelmissä. Useimmat olemassa olevia ohjelmistoja ja käytännön tietotekniikan pitkään vedonnut edustus merkkien sarjassa tavuja. Useita protokollia riippuu pysyvyys ASCII-koodausta ja käyttää joko vältetään erityinen ohjaus merkkiä. Yksinkertainen tapa mukautua tilanteisiin Unicode voi käyttäen 8-bittistä koodausta edustaa Unicode-merkkejä, mikä tahansa vastaava ASCII tai ohjausmerkki. Tätä varten, ja se on UTF-8.
muuttuvan pituuden
UTF-8 - koodittava vaihtelevan pituinen, joka koostuu 8-bittinen varastointiyksiköt, ylempi bittiä, jotka osoittavat, mikä osa sekvenssin kunkin tavun kuuluu. Yksi arvojen varattu ensimmäinen osa koodisekvenssin, toinen - seuraavan. Tämä tarjoaa disjointness koodausta.
ASCII
UTF-8 on täysin tuettu ASCII-koodit (0x00-0x7F). Tämä tarkoittaa, että Unicode-merkkejä U + 0000-U + 007F muunnetaan yhden tavun 0x00-0x7F UTF-8 ja siten voi erottaa ASCII. Lisäksi, epäselvyyksien välttämiseksi, arvo 0x00-0x7F ei käytetä enää yhteen tavuun esitys Unicode-merkkejä. Koodaamaan symbolit neideograficheskih muu kuin ASCII, käyttäen sekvenssiä kaksi tavua. Symbolit vaihtelevat U + 0800-U + FFFF edustaa kolme bittiä, ja lisäksi koodit, joissa on enemmän kuin U + FFFF vaativat neljä tavua.
soveltamisalansa
UTF-8-yleensä annetaan etusija HTML-protokollaa, ja vastaavat.
XML on tullut ensimmäinen standardi täyden tukensa UTF-8. Standardointijärjestöt myös suositella sitä. Tuki ongelma URL-osoitteen, joka on erilainen kuin ASCII-merkkejä, ratkesi kun konsortio W3C ja IETF suunnittelukonserneja pääsivät sopimukseen koodaukseen kaikkien URL-osoitteiden yksinomaan UTF-8.
Yhteensopivuus ASCII helpottaa siirtymistä uuteen ohjelmistoon. UTF-8 toimii suurimman tekstieditoreista, kuten jEdit Emacs, BBEdit, Eclipse, ja "Muistio" Windows-käyttöjärjestelmän. Mikään muu koodaus Unicode voi ylpeillä tällaisen tuen työkalun.
koodaus etu on, että se koostuu sekvenssin tavua. UTF-8 merkkijono on helppo työskennellä C ja muita ohjelmointikieliä. Tämä on ainoa muoto koodauksen, tilaus ei edellytä tarroja tavut BOM tai koodausta ilmoituksen XML.
self-synkronointi
Ympäristössä, joka käyttää 8-bittisiä symboleja käsittelyn verrattuna muihin multi-tavun merkistöt, UTF-8 on seuraavat edut:
- Ensimmäinen tavu koodi sekvenssi sisältää tietoa sen pituutta. Tämä lisää tehokkuutta suoraa hakua.
- Yksinkertaistettu löytää symbolin alku, koska lähtö- tavu on rajoitettu kiinteään arvojen.
- Ei risteys tavujen arvoja.
Ominaisuuksien vertailu
UTF-8 on pienikokoinen. Mutta kun käytetään koodaamiseen Itä-Aasian merkkiä (kiina, japani, korea, kiina kirjoittaminen merkeillä) käytettiin 3-tavusarjojen. Myös UTF-8 on huonompi kuin muiden koodaavan käsittelyn nopeus. Binäärinen lajittelulinjat tuottaa saman tuloksen kuin binary lajittelu Unicode.
Merkki enkoodausmenetelmä
Merkkikoodaus järjestelmä käsittää koodaavan symbolien muodossa ja menetelmä yhden tavun sijaintikoodi yksikköä. Määrittää Koodauskäytännölle Unicode standardi tarjoaa käyttöön ensimmäisen tavujärjestysmerkkiä (BOM, tavujärjestysmerkkiä).
Kun BOM UTF-8 piirretunnisteen rajoittaa vain viittaamalla käyttöä muotojen koodausta. Ongelmia määritettäessä endian UTF-8 on, kuten sen koodausyksikön koko on yksi tavu. Käyttäen BOM tämänkaltaisen koodaus ei ole tarpeen eikä suositeltavaa. BOM voi esiintyä teksti muunnetaan muista koodausta käyttäen tavujärjestysmerkkiä tai allekirjoitus UTF-8. On sekvenssi 3 tavua EF BB 16 16 BF 16.
Miten asettaa UTF-8
HTML koodaus UTF-8 asennetaan seuraavalla koodilla:
pää
Meta http-ekv = "Content-Type" content = "text / html; charset = utf-8" ˃
PHP UTF-8 on määritetty käyttämällä header () funktio alussa tiedoston asettamisen jälkeen lähtötaso arvo virhe:
˂? Php
error_reporting (-1);
header ( "Content-Type: text / html; charset = UTF-8 ');
Muodostaa yhteyden MySQL-tietokantaan UTF-8 on asetettu:
˂? Php
mysql_set_charset (utf8 ');
CSS-tiedosto koodaus on UTF-8 merkkiä määritellään seuraavasti:
@charset tukisi "UTF-8";
Kun tallennat tiedostoja kaikenlaisten valita UTF-8 ilman BOM, muuten sivusto ei toimi. Voit tehdä tämän DreamWeave täytyy valita valikosta "Muutokset - Sivun ominaisuudet - Nimike / koodaus" vaihtaa UTF-8. Seuraaja ladata sivu, poista valintamerkki "Connect Unicode allekirjoitus (BOM)» ja ota muutokset. Jos tekstiä sivulla tai otettiin käyttöön tietokanta muunlaiseen koodausta, on tarpeen palata tai uudelleen koodata. Kun työtä säännöllisiä lausekkeita, muista käyttää modifiointiaineen u.
Voit myös tallentaa tiedoston UTF-8 on "Muistio" Windows. Kun olet valinnut valikosta "File - Save As ..." asentaa tarvittavat muodon koodaus ja tallentaa tiedoston UTF-8.
Tekstieditorissa Notepad ++, jos asetettu muu kuin UTF-8 kautta valikosta "muuntaa UTF-8 ilman BOM» muuttaa luonnetta ja tallentaa UTF-8.
ei ole vaihtoehtoa
Kun globalisaation, jossa poliittinen ja kielirajojen poistetaan merkki asetetaan, jotka ovat paikallisten erityispiirteiden ei ole juurikaan hyötyä. Unicode on yksittäinen merkki, joka tukee kaikkia lokalisoinnit. UTF-8 - esimerkki asianmukaisen täytäntöönpanon Unicode, joka on:
- Se tukee monenlaisia välineitä, kuten yhteensopivuus ASCII koodaus;
- Se on resistentti vääristymä tietoja;
- yksinkertainen ja tehokas hoito;
- on alustasta riippumaton.
Kynnyksellä UTF-8 keskustelua siitä, mitä muotoa koodausta tai merkistöä on parempi, se muuttuu merkityksettömäksi.
Similar articles
Trending Now