Hvad er karakterkodning?
Tegnkodning i computerprogrammering er en metode eller algoritme, der bruges til at finde en normalt numerisk repræsentation af et tegn, en glyph eller et symbol. Brug af karakterkodning i computere er nødvendig, fordi information inden for computerhukommelse og på computerlæsbart medie gemmes som sekvenser af bits eller numre. Dette kræver brug af kodning til at oversætte ikke-numeriske tegn, der bruges til visning eller menneskelig læsbar output til en form, som en computer kan manipulere. I et mere specifikt program kan HyperText Markup Language (HTML) -dokumenter, der læses af webbrowsere, definere hvilken type tegnkodning, de bruger for at lade browseren vide, hvilket specifikt tegnsæt, der skal bruges, når de viser oplysningerne i dokumentet. Der er flere kodningsskemaer i brug, skønt mange af disse proprietære og ældre sæt langsomt erstattes af Unicode®-kodningsstandarden.
I de tidlige dage af computere, hvor der var begrænset hukommelsesplads, blev de grundlæggende tegn i det engelske alfabet - inklusive tegnsætning og tal - gemt i 7-bit-sekvenser, hvilket gav 128 forskellige tegn. I dette originale skema repræsenterede hver 7-bitbyte en karakter i det engelske alfabet, nummereret i rækkefølge. Denne karakterkodning var effektiv og blev til sidst standardiseret og brugt i de fleste computere, der blev produceret. Selvom kodningssystemet udviklede sig til Unicode®-kodningsstandarden, forblev konceptet det samme. Nemlig er hvert enkelt tegn på et sprog direkte relateret til et enkelt nummer i et stort standardtegnsæt, og det nummer er det, en computer bruger til at gemme, behandle og indeksere tegnet.
Andre typer karakterkodning blev udviklet af forskellige grunde. Nogle, der var specielt tilpasset det engelske alfabet og beregnet til at blive brugt til tekst, kortlagde kun deres tegn på 7-bit-sekvenser og derefter sprede dem over 8-bit-bytes eller oktetter. Dette havde effekten af at gemme 1 bit pr. Oktet, effektivt bruge karakterkodning som en type komprimering. Andre kodningsskemaer forsøgte at give basisoplysninger om et tegn og derefter yderligere tegn til at repræsentere specielle accenter, der kunne bruges, når man skriver på et andet sprog, skønt disse i vid udstrækning blev opgivet til de enklere en-til-en-kodningsmetoder.
I HTML-dokumenter er tegnkodning nogenlunde det samme som det bredere koncept, bortset fra at kodningen, der defineres, omfatter et helt sæt tegn. Dette kan være vigtigt ikke kun for fremmedsprog, men for dokumenter, der bruger specifikke symboler til videnskab eller matematik, der ikke findes i alle tegnsæt. Det kan også være nyttigt til brug af tegnsætning og andre glyfer, der muligvis ikke er til stede eller er kortlagt forskelligt på tværs af kodningsskemaer. Dokumenter, der ikke korrekt definerer en ikke-standardkodekodning, kan vises forkert eller være fyldt med nonsensiske tegn og pladsholdere i stedet for læsbar information.