Oppgave 1
a) I teorien kan komprimeringen av meldingen "ABBABABAC" lagres med 50 biter siden det er 4 tall mindre enn
256 (8 biter) og 2 øvrige tall (9 biter). Men så enkelt er det ikke. Når dette er lagret bitvis vil det først
komme tre tall med 8 biter, så to med 9 biter og til slutt et med 8 biter.
Men ved lesing må det være et system som vet hvor mange biter som skal leses for å kunne si når bitene til
ett tall slutter og dermed bitene til neste tall begynner. Dette blir tatt opp i
Avsnitt 7.2.5
.
b) I teorien kan komprimeringen av "AAAAAAAAAAA" lagres med 43 biter. Se kommentarene under a).
Oppgave 2
runde | c | ordbok | s | utskrift | kode | nestekode |
0 | A | A | 65 | 256 | ||
1 | A | AA - 256 | A | 65 | 65 | 257 |
2 | A | AA | 256 | |||
3 | A | AAA - 257 | A | 256 | 65 | 258 |
4 | A | AA | 256 | |||
5 | A | AAA | 257 | |||
6 | A | AAAA - 258 | A | 257 | 65 | 259 |
7 | A | AA | 256 | |||
8 | A | AAA | 257 | |||
9 | A | AAAA | 258 | |||
10 | A | AAAAA - 259 | A | 258 | 65 | 260 |
11 | A | AA | 256 | |||
12 | A | AAA | 257 | |||
13 | A | AAAA | 258 | |||
14 | A | AAAAA | 259 | |||
15 | A | AAAAAA - 260 | A | 259 | 65 | 261 |
16 | 65 |
Oppgave 3
a)
runde | c | ordbok | s | utskrift | kode | nestekode |
0 | A | A | 65 | 256 | ||
1 | B | AB - 256 | B | 65 | 66 | 257 |
2 | A | BA - 257 | A | 66 | 65 | 258 |
3 | A | AA - 258 | A | 65 | 65 | 259 |
4 | B | AB | 256 | |||
5 | B | ABB - 259 | B | 256 | 66 | 260 |
6 | A | BA | 257 | |||
7 | A | BAA-260 | A | 257 | 65 | 261 |
8 | A | AA | 258 | |||
9 | B | AAB-261 | B | 258 | 66 | 262 |
10 | B | BB-262 | B | 66 | 66 | 263 |
11 | B | BB | 262 | |||
12 | C | BBC-263 | C | 262 | 67 | 264 |
13 | 67 |
b)
runde | c | ordbok | s | utskrift | kode | nestekode |
0 | A | A | 65 | 256 | ||
1 | B | AB - 256 | B | 65 | 66 | 257 |
2 | A | BA - 257 | A | 66 | 65 | 258 |
3 | B | AB | 256 | |||
4 | A | ABA - 258 | A | 256 | 65 | 259 |
5 | B | AB | 256 | |||
6 | A | ABA | 258 | |||
7 | ABAB - 259 | B | 258 | 66 | 260 | |
8 | A | BA | 257 | |||
9 | B | BAB - 260 | B | 257 | 66 | 261 |
10 | A | BA | 257 | |||
11 | B | BAB | 260 | |||
12 | 260 |
c)
runde | c | ordbok | s | utskrift | kode | nestekode |
0 | M | M | 77 | 256 | ||
1 | I | MI - 256 | I | 77 | 73 | 257 |
2 | S | IS - 257 | S | 73 | 83 | 258 |
3 | S | SS - 258 | S | 83 | 83 | 259 |
4 | I | SI - 259 | I | 83 | 73 | 260 |
5 | S | IS | 257 | |||
6 | S | ISS - 260 | S | 257 | 83 | 261 |
7 | I | SI | 259 | |||
8 | P | SIP - 261 | P | 259 | 80 | 262 |
9 | P | PP - 262 | P | 80 | 80 | 263 |
10 | I | PI - 263 | I | 80 | 73 | 264 |
11 | 73 |
d) Legg merke til at her blir komprimeringen like stor som det vi startet med:
runde | c | ordbok | s | utskrift | kode | nestekode |
0 | A | A | 65 | 256 | ||
1 | A | AA - 256 | A | 65 | 65 | 257 |
2 | B | AB - 257 | B | 65 | 66 | 258 |
3 | A | BA - 258 | A | 66 | 65 | 259 |
4 | C | AC - 259 | C | 65 | 67 | 260 |
5 | A | CA - 260 | A | 67 | 65 | 261 |
6 | D | AD - 261 | D | 65 | 68 | 262 |
7 | A | DA - 262 | A | 68 | 65 | 263 |
8 | E | AE - 263 | E | 65 | 69 | 264 |
9 | A | EA - 264 | A | 69 | 65 | 265 |
10 | F | AF - 265 | F | 65 | 70 | 266 |
11 | A | FA - 266 | A | 70 | 65 | 267 |
12 | G | AG - 267 | G | 65 | 71 | 268 |
13 | 71 |
Oppgave 4
Flg. eksempel inneholder det hollandske flagget i to versjoner der begge har GIF-format. De inneholder nøyaktig samme antall piksler. Den ene er en rotasjon av den andre. Men den som har stripene horisontalt komprimeres bedre fordi det der er lengre sekvenser (av piksler) med samme farge.
![]() |
![]() |
|
423 byter | 567 byter |
Hvis vi isteden bruker PNG-format, vil det ikke bli noen forskjell siden PNG bruker en helt annen idé i komprimeringsalgoritmen enn GIF. Vi ser også at PNG komprimerer vesentlig bedre enn GIF i disse tilfellene.
![]() |
![]() |
|
247 byter | 248 byter |