over Unicode
op een goede dag vond de mensheid elektronische computers uit. Ze werden door verschillende mensen over de hele wereld als nuttig hulpmiddel gebruikt.Iedereen was gelukkig.
maar toen wilden deze mensen hun werk, verhalen en grappenmakers in de vorm van tekst naar elkaar toesturen. Helaas zijn deze dwazen er nooit in geslaagd om het eens te worden over het gebruik van één taal-en schrijfsysteem.Dat geeft niet, maar ze waren het ook niet eens over het gebruik van één coderingsformaat voor hun tekst.,
oudere coderingen
zie je, computers denken niet in letters en regels, maar in bits, bytes en cijfers. Dus wij mensen moesten een manier bedenken om tekst weer te geven als een hoop getallen … makkelijk! Breng gewoon een symbool van uw schrijfsysteem naar keuze aan op een getal dat een computer aankan. Bijvoorbeeld, in de tekst die u nu leest, wordt het kleine Latijns alfabet, ato z, gekarakteriseerd door de nummers 97 tot en met 122. Maar niet iedereen met een computer kan Latijn lezen., Deze jongens gebruiken scripts zoals Cyrillisch, Grieks, Arabisch, Han, Katanka en Kanji, en ze gebruikten de samenumbertrick om hun tekst te coderen. Bijvoorbeeld, de Cyrillische letter Д (De) wordt gecodeerd als het nummer 196 in de Windows-1251 codering waar de ASCII Extended codering is ‘─’, een verticale lijn gebruikt om drawboxen.
dus voordat u een tekstbestand opent dat door uw vriend aan de andere kant van de wereld is verzonden, moet u eerst weten welke codering zij hebben gebruikt om dat bestand te schrijven. Je kunt het raden, maar er zijn veel van deze oude coderingen,bijna 60!, Dus als je het bestand opent, kan het er ongeveer zo uitzien:
de juiste term hiervoor is mojibake.
UTF-8
dus hoe lossen we het probleem op van het hebben van al deze verschillende coderingen?Het antwoord is vrij simpel: maak gewoon een enkele grote codering die alle dingen en symbolen bevat. Dit is Unicode. Unicodespecialiseert reeksen van zogenaamde code-punten of tekens. Het is niet de eigenlijke codering zelf, dat zou een van de formaten zijn die gebruikt worden om Unicode-punten te coderen. Het meest gebruikte Unicode-formaat isUTF-8., Er zijn andere formaten zoals UTF-16 en UTF-32, maar UTF-8 is het meest geweldige formaat voor Unicode omdat:
- het alles kan opslaan.
Oude coderingen vereisen dat het hele document geschreven wordt met hetzelfde coderingssysteem en dus met hetzelfde schrijfsysteem, waardoor de gebruiker niet meer meerdere schrijfsystemen in één document kan gebruiken. Met UTF-8 kunnen gebruikers. - het gebruikt een variabele tekenlengte.Unicode heeft ruimte voor maximaal 4.294.967.296 (4 bytes = 32 bits = 2^32)Codepunten. Documenten en websites zouden vier keer zo groot worden als elk karakter 4 bytes groot is., UTF-8 gebruikt slechts eenbyte voor de meeste Latijnse karakters en maximaal vier bytes voor minder gangbare karakters.
- het is achterwaarts compatibel met ASCII
De eerste 255 code-punten gecodeerd door UTF-8 zijn precies dezelfde asASCII. ASCII was een veel gebruikt formaat voordat UTF-8 werd popular.By omdat UTF-8 compatibel is met backwards, kunnen programma ‘ s bestanden versleutelen in ASCII zonder ze opnieuw te coderen.
u kunt nog steeds documenten of websites tegenkomen die geen UTF-8 gebruiken.Hoogstwaarschijnlijk op websites die een oosterse taal als mandarijn gebruiken.Waarom?, Omdat de website-eigenaren niet willen hun geld op te blazen onbandwidth kosten. Klinkt dat vreemd? Nou, laat het me uitleggen. Documenten met veel Latijnse karakters zijn kleiner omdat de meest voorkomende karakters slechts één byte groot zijn. Andere schrijfsystemen zijn gecodeerd inUnicode bereiken waar een enkel teken tot vier bytes groot kan zijn! Dus deze documenten zijn net groter dan documenten geschreven in een taaldie Latijnse karakters gebruikt. Een voorbeeld van dit fenomeen is de Russische sociale website, vk.com., Deze website maakt gebruik van de Windows-1251encodering omdat het het Cyrillische schrijfsysteem codeert in één-byte breedtekaracters, waardoor bandbreedte wordt bespaard.
tegenwoordig is UTF-8 het meest gebruikte tekstformaat op de internet.It is ook de ruggengraat van deze website, zonder Unicode, Lenny en alle andere dongers zou waarschijnlijk worden beperkt tot de ASCII karakterrange.
Leave a Reply