ANSI versus UTF-8
ANSI en UTF-8 zijn twee karaktercoderingsschema's die op grote schaal worden gebruikt op een bepaald moment in de tijd of een andere. Het belangrijkste verschil tussen beide is gebruik, omdat UTF-8 vrijwel ANSI heeft vervangen als het coderingsschema naar keuze. UTF-8 is ontwikkeld om min of meer gelijkwaardig te zijn aan ANSI, maar zonder de vele nadelen die het had. Zowel UTF-8 als ANSI breiden uit van de basisset tekens die door ASCII zijn voortgebracht; dus de twee zijn in principe gelijk als het gaat om de eerste 127 tekens.
Het eerste nadeel van ANSI is het gebruik van een vaste byte om tekens weer te geven. Ter vergelijking: UTF-8 is flexibeler omdat het een multibyte-coderingsschema is; afhankelijk van de behoeften van de gebruiker kan overal tussen de 1 en 6 bytes worden gebruikt om een personage weer te geven. Omdat ANSI slechts één byte of 8 bits gebruikt, kan dit maximaal 256 tekens vertegenwoordigen. Dit is nergens in de buurt van de 1.112.064 tekens, controlecodes en gereserveerde slots van Unicode die volledig kunnen worden weergegeven binnen UTF-8. Het gebruik van een multibyte-coderingsschema maakt het mogelijk om al deze codepunten te accommoderen en toch minimaal geheugen te gebruiken. De eerste byte van UTF-8 komt exact overeen met ASCII; vandaar dat de meest voorkomende karakters slechts één enkele byte nodig hebben.
Om meer tekens te kunnen plaatsen, zijn er meerdere ANSI-pagina's gemaakt voor verschillende talen. U kunt daarom bepaalde tekens niet tegelijkertijd gebruiken als ze niet tot dezelfde codepagina behoren. Het vereist ook dat het programma van tevoren weet welke codepagina wordt gebruikt of dat de verkeerde tekens verschijnen. UTF-8 heeft dergelijke problemen niet, omdat elk teken zijn eigen afzonderlijke codepunt heeft.
UTF-8 is in alle opzichten superieur aan ANSI. Er is geen reden om ANSI over UTF-8 te kiezen bij het maken van nieuwe applicaties, omdat alle computers het kunnen decoderen. De enige reden om ANSI te gebruiken is wanneer u wordt gedwongen om een oude toepassing uit te voeren waarvoor u geen vervanging hebt.
Samenvatting:
1.UTF-8 is een veel gebruikte codering, terwijl ANSI een verouderd coderingsschema is
2.ANSI gebruikt een enkele byte terwijl UTF-8 een coderingsschema voor meerdere bits is
3.UTF-8 kan een breed scala aan karakters vertegenwoordigen, terwijl ANSI vrij beperkt is
4.UTF-8-codepunten zijn gestandaardiseerd terwijl ANSI veel verschillende versies heeft