Jeg har lest og forstått reglene som er gitt i dokumentet "Krav til innleverte oppgaver ved Institutt for informatikk" på:
www.ifi.uio.no/studinf/skjemaer/egenerklaring.pdf
Info om den tilfeldige boken jeg valgte :
| Standard | Tegn | Heksedesimal | Binær | Antall bits | Bitlengde - Fast/Variabel |
| UTF-8 | å | C3 A5 | 1100 0011 1010 0101 | 8, 16, 24 eller 32 | Variabel |
| UTF-16 | å | 00 E5 | 0000 0000 1110 0101 | 16 | Fast |
| UTF-32 | å | 000000E5 | 0000 0000 0000 0000 0000 0000 1110 0101 | 32 | Fast |
| UTF-8 | Å | C3 85 | 1100 0011 1000 0101 | 8, 16, 24 eller 32 | Variabel |
| UTF-16 | Å | 00 C5 | 0000 0000 1100 0101 | 16 | Fast |
| UTF-32 | Å | 000000C5 | 0000 0000 0000 0000 0000 0000 1100 0101 | 32 | Fast |
Plassbehov:
For å sjekke hvilke representasjon som er minst plasskrevende, trenger vi å vite hvor mye hver representasjon bruker av plass for hver tegn. I UTF-8 representasjon er det nok med 8 bits hver tegn, mens
UTF-16 krever 16 bits og UTF-32, 32 bits.
Side 115 i "Fahrenheit 9/11 - En offisiell guide" er på 455 bytes i UTF-8 (443-12)+((12*16)/8)
Den samme siden er også 886 bytes i UTF-16, (443*16)/8 og hele 1772 bytes i UTF-32 (443*32)/8.
Med det kan vi se at UTF-8 er minst plasskrevende, ettersom den brukte 8 bits for å representere hvert tegn, unntatt for å", og "Å", der brukte den 16 bits.
UTF-32 er mest plasskrevende ettersom den insisterer på å representere hvert tegn med 32 bits, likegyldig om det trengs eller ikke.
Litt kort om Unicode:
Ettersom man nokså var desperat etter å rydde opp i verdens kodetabeller, og trengslen for en eneste kodetabbell som omfatter alle mulige tegn fra alle mulige
skriftsystemer og språk, både levende og døde, og der hvert tegn var tilordnet sitt eget, unike kodepunkt var stor, kom intiativet fra to ulike hold, den internasjonale
standardiseringsprganisajonen ISO og fra en
sammenslutning av interessenter, Unicodekonsortiet .
Før Unicode var oppfunnet, var det flere hundre kodetabeller, der EU selv måtte bruke flere tabeller for å dekke alle sine språk og tegn.
I Unicode er selvfølgelig 8-bits ikke tilstrekkelig, i det ligger kodepunktverdiene i området fra 0x0 til 0x1FFFFF, hvilket tilsvarer 21 bits. Og det er mer enn nok for all verdens tegn, så vel levende
som døde. Faktisk er bare en brøkdel av alle kodepunktene belagt, selv etter at de omfattende alfabetene som brukes i Kina, Korea og
Japan er lagt inn. Dette standardet blir utvidet hele tiden, fordi det dukker stadig opp nye tegn som ikke var med i den originale spesifikasjonen.
Det er et grunnleggende prinsipp i Unicode-standardiseringen at når et tegn først er tilordnet et kodepunkt, skal denne tilordningen gjelde til evig tid, selv om tegnet
skulle gå ut av bruk. Unicode-filer som lages idag skal altså kunne leses om 100 eller 1000 år, uten fare for at det dukker opp gale tegn i teksten. Det verste som
kan skje, er at det ikke kommer fram noe tegn, fordi skrivere og skjermer "har glemt" hvordan det så ut.
Lyst å vite mer? Sjekk innom Unicodes nettside.
Totalt = 0
Heltall: Tap i antall ører = 0
Kjør gjennom ordrelinjer
{
Funksjon hentTekst --> "34.72"
Konverter alt før "." til tallet avrundet = 34
Ta alt etter ascII "."
Lag to nye heltall variable: x og y
Ta ascII kodene til de to første bytene etter ".", trekk fra kontrollen (0011 0000) og legg det i x og y
x = 0011 0111 - 0011 0000 = 0111
y = 0011 0010 - 0011 0000 = 0010
Gang x med 10 (1010): 0111 * 1010 = 100 0110
antallØrer = desimaler etter "." = x + y = 100 0110 + 0010 = 100 1000
Med dette kan vi si at tallet 72 titallssystemet, er lik 100 1000 i binært.
Totalt = Totalt + avrundet
Tap = antallØrer
}