Unicode-codering: standaard voor tekencodering
Elke internetgebruiker bij pogingeneen of meer van zijn functies instellen, minstens één keer gezien op het scherm, geschreven in Latijnse letters het woord "Unicode". Wat is het, u zult leren door dit artikel te lezen.
definitie
"Unicode" -codering is een coderingsnormkarakters. Het werd voorgesteld door de non-profitorganisatie Unicode Inc. in 1991. De standaard is ontworpen om zoveel mogelijk verschillende soorten symbolen in één document te combineren. De pagina die op basis daarvan is gemaakt, kan letters en hiërogliefen bevatten van verschillende talen (van Russisch tot Koreaans) en wiskundige tekens. Alle tekens in deze codering worden zonder problemen weergegeven.
Redenen voor het maken
Er was eens, lang voor de opkomst van een verenigd systeem"Unicode", de codering is gekozen op basis van de voorkeuren van de auteur van het document. Om deze reden, vaak om een document te lezen, moest je verschillende tabellen gebruiken. Soms moest het meerdere keren worden gedaan, wat het leven van een gewone gebruiker aanzienlijk bemoeilijkte. Zoals eerder vermeld, werd de oplossing voor dit probleem in 1991 voorgesteld door de non-profitorganisatie Unicode Inc., die een nieuw type karaktercodering voorstelde. Hij werd geroepen moreel verouderde en diverse normen te combineren. "Unicode" - codering, waarmee op dat moment het ondenkbare kon worden bereikt: een hulpmiddel maken dat een enorm aantal tekens ondersteunt. Het resultaat overtrof veel verwachtingen - documenten verschenen die tegelijkertijd zowel Engelse als Russische tekst, Latijnse en wiskundige uitdrukkingen bevatten.
Maar het maken van een enkele codering is voorafgegaande noodzaak om een aantal problemen op te lossen die ontstonden vanwege de enorme verscheidenheid aan normen die toen al bestonden. De meest voorkomende zijn:
- elfachtige geschriften, of "karkozyabry";
- beperkte tekenset;
- het probleem van coderingsconversie;
- duplicatie van lettertypen.
Een korte historische uitweiding
Stel je voor dat de tuin uit de jaren 80 bestaat. Computertechnologie is niet zo wijdverspreid en heeft een andere vorm dan vandaag. Op dat moment is elk besturingssysteem uniek op zijn eigen manier en wordt het door elke liefhebber gefinaliseerd voor specifieke behoeften. De behoefte aan informatie-uitwisseling verandert in een aanvullende herziening van alles in de wereld. Als u probeert een document te lezen dat is gemaakt met een ander besturingssysteem, wordt vaak een onbegrijpelijk aantal tekens op het scherm weergegeven en beginnen games met codering. Het is niet altijd mogelijk om dit snel te doen en soms kan het vereiste document zes maanden later of zelfs later worden geopend. Mensen die vaak informatie uitwisselen, maken conversietabellen voor zichzelf. En hier aan het werk onthult een interessant detail: ze moeten in twee richtingen worden gemaakt: "van mijn tot de jouwe" en terug. Om een banale inversie van berekeningen te maken kan de machine niet, want in de rechterkolom een broncode, en in de linkerkolom - resultaat, maar in elk geval integendeel. Als er speciale tekens in het document moesten worden gebruikt, moesten deze eerst worden toegevoegd en vervolgens ook aan de partner uitleggen wat hij moest doen om ervoor te zorgen dat deze tekens niet in 'krakozyabry' veranderden. En laten we niet vergeten dat we voor elke codering onze eigen lettertypen moesten ontwikkelen of implementeren, wat leidde tot de creatie van een groot aantal duplicaten in het besturingssysteem.
Stel je ook voor dat je op de pagina met lettertypen bentU ziet 10 stuks identieke Times New Roman met kleine notaties: voor utf-8, UTF-16, ANSI, UCS-2. Begrijpt u nu dat de ontwikkeling van een universele standaard een dringende noodzaak was?
"De grondleggers van de makers van"
De oorsprong van de oprichting van Unicode moet in 1987 worden gezochtjaar, toen Joe Becker van Xerox, samen met Lee Collins en Mark Davis van Apple, begon met onderzoek naar de praktische creatie van een universele tekenset. In augustus 1988 publiceerde Joe Becker een conceptvoorstel voor de creatie van een 16-bit internationaal meertalig coderingssysteem.
Na een paar maanden, de Unicode-werkgroepwerd uitgebreid met Ken Whistler en Mike Kernegan van de RLG, Glenn Wright van Sun Microsystems en een aantal andere experts, waardoor we het werk rond de eerste vorming van een enkele coderingsstandaard konden voltooien.
Algemene beschrijving
Unicode is gebaseerd op het begrip symbool. Deze definitie verwijst naar een abstract fenomeen dat bestaat in een specifieke vorm van schrijven en wordt gerealiseerd door middel van grafemen (zijn "portretten"). Elk teken wordt in "Unicode" ingesteld door een unieke code die behoort tot een specifiek blok van de standaard. Grafiet B heeft bijvoorbeeld zowel Engelse als Russische alfabetten, maar in Unicode zijn er 2 verschillende symbolen die daarmee corresponderen. Ze worden geconverteerd naar een kleine letter, dat wil zeggen dat elk van hen wordt beschreven door een databasesleutel, een set eigenschappen en de volledige naam.
Voordelen van Unicode
Van de rest van zijn tijdgenoten die coderen voor "Unicode"verschilde een enorme voorraad tekens om tekens te "coderen". Het feit is dat zijn voorgangers 8 bits hadden, dat wil zeggen dat ze 28 tekens ondersteunden, maar de nieuwe ontwikkeling had al 216 karakters, wat een gigantische stap vooruit was. Dit liet toe om bijna alle bestaande en algemene alfabetten te coderen.
Met de komst van "Unicode" niet meer nodiggebruik conversietabellen: als een enkele standaard heeft dit simpelweg hun behoefte teniet gedaan. Op dezelfde manier zijn "scheuren" in de vergetelheid geraakt - een enkele standaard maakte ze onmogelijk, en elimineerde de noodzaak om dubbele lettertypen te maken.
Unicode-ontwikkeling
Natuurlijk staat de vooruitgang niet stil, en sindsdienDe eerste presentatie is 25 jaar verstreken. De codering "Unicode" blijft echter koppig zijn positie in de wereld behouden. In veel opzichten was dit mogelijk vanwege het feit dat het gemakkelijk geïmplementeerd en wijdverspreid kon worden, omdat het werd erkend door ontwikkelaars van bedrijfseigen (betaalde) en open source software.
Tegelijkertijd moeten we niet aannemen dat we vandaagDezelfde Unicode-codering is beschikbaar als een kwart eeuw geleden. Op dit moment is de versie gewijzigd in 5.xx en is het aantal gecodeerde tekens toegenomen tot 231. Ze weigerden een groter aantal tekens te gebruiken om toch ondersteuning voor Unicode-16 te behouden (coderingen waarbij het maximum aantal beperkt was tot 216). Sinds de introductie en voorafgaand aan versie 2.0.0 heeft Unicode Standard het aantal tekens dat erin is opgenomen, bijna 2 keer verhoogd. Groeimogelijkheden werden voortgezet in de daaropvolgende jaren. Bij versie 4.0.0 was het al nodig om de standaard zelf te verhogen, wat is gebeurd. Als gevolg hiervan heeft "Unicode" het soort gevonden waarin we het vandaag kennen.
Wat zit er nog meer in Unicode?
Naast de enorme, voortdurend groeiendehet aantal tekens, "Unicode" -codering van tekstinformatie heeft nog een andere handige functie. Dit is de zogenaamde normalisatie. In plaats van het hele documentsymbool per symbool te doorlopen en de overeenkomstige pictogrammen uit de correspondentietabel te vervangen, wordt een van de bestaande normalisatie-algoritmen gebruikt. Waar gaat het over?
In plaats van computationele bronnen te verspillenmachines voor het regelmatig controleren van hetzelfde karakter, die in verschillende alfabetten vergelijkbaar kunnen zijn, gebruiken een speciaal algoritme. Hiermee kunt u vergelijkbare symbolen in een aparte kolom van de opzoektabel maken en ernaar verwijzen, in plaats van alle gegevens opnieuw en opnieuw te controleren.
Er zijn vier van dergelijke algoritmen ontwikkeld en geïmplementeerd. In elk van hen vindt de transformatie plaats volgens een strikt gedefinieerd principe, dat verschilt van de andere, daarom is het niet mogelijk om een van hen als het meest effectief te noemen. Elke werd ontwikkeld voor specifieke behoeften, werd geïmplementeerd en met succes gebruikt.
Standaard distributie
Meer dan 25 jaar geschiedenis, de codering "Unicode"ontving waarschijnlijk de meest voorkomende ter wereld. Programma's en webpagina's zijn ook aangepast voor deze standaard. Het feit dat Unicode vandaag door meer dan 60% van de internetbronnen wordt gebruikt, kan spreken over de breedte van de toepassing.
Nu weet je wanneer de Unicode-standaard verscheen. U weet ook wat het is en kunt de volledige waarde van de uitvinding van het Unicode Inc.-team van specialisten waarderen. meer dan 25 jaar geleden.