> unary | räknesträck | enkelt <

// Unärkodning, det enklaste sättet att representera heltal med räknesträck

[SIMPLE]

Enklaste koden

Den mest grundläggande kodningen, bara att räkna med streck.

[VISUAL]

Visuell representation

Tydlig visualisering av unärkod som räknesträck.

[VARIANTS]

Flera varianter

Standard, inverterade och trunkerade unärkoder.

>> teknisk information

Hur unärkodning fungerar:

Unärkodning representerar ett heltal n som n identiska symboler följda av en terminator. Standardunär använder n ettor följda av en nolla. Inverterad unär använder n nollor följda av en etta. Trunkerad unär utelämnar terminatorn för det största värdet i ett känt intervall.

Unary-varianter:

Standardunär: 0 → 0 1 → 10 3 → 1110 5 → 111110 Inverterad unär: 0 → 1 1 → 01 3 → 0001 5 → 000001 Trunkerad intervall 0–3: 0 → tom 1 → 1 2 → 11 3 → 111

Varför använda unärkodning:

  • >Byggsten i andra koder
  • >Kvotdel i Golomb och Rice-koder
  • >Prefixdel i Elias-koder
  • >Mycket enkel att implementera
  • >Bra för undervisning i komprimering

>> vanliga frågor

Vad är unärkodning?

Unärkodning är den enklaste koden med variabel längd. Ett heltal n representeras som n upprepningar av en symbol oftast 1 följt av en annan symbol oftast 0 som terminator. Det liknar räknesträck i binär form.

När är unärkodning effektiv?

Unärkodning är bara effektiv för mycket små heltal eller starkt snedfördelade data där de flesta värden är 0 eller 1. Den använder n plus 1 bitar för talet n och är därför mycket ineffektiv för stora värden. Den används främst som komponent i andra koder.

Vad är trunkerad unärkodning?

Trunkerad unärkodning används när värdeintervallet är känt. Det största värdet behöver ingen terminator eftersom längden ensam identifierar det entydigt. På så sätt sparas en bit för maxvärdet i intervallet.

Var används unärkodning?

Unärkodning används sällan ensam men är en viktig del av Golomb och Rice-koder för kvoter, Elias Gamma och Delta-koder för längder och många andra koder med variabel längd. Den är ett grundläggande begrepp i många komprimeringsalgoritmer.

Andra språk