Elias Gamma Code
Die Elias-Gamma-Kodierung kodiert eine positive ganze Zahl n als floor(log2(n)) führende Nullen gefolgt von ihrer Binärdarstellung; sie ist ein universeller Präfixcode, wirksam bei Gleichverteilungen.
Zweck
Liefert universelle Variablenlängenkodierung, wenn die tatsächliche Verteilung unbekannt ist, mit einer Codelänge von 2*floor(log2(n))+1.
Mechanismus
Sei k = floor(log2(n)); man gibt k Nullen aus, gefolgt von der (k+1)-Bit-Binärdarstellung von n. Zum Dekodieren zählt man die führenden Nullen, um k zu erhalten, und liest dann k+1 weitere Bits, um n wiederherzustellen.
Anwendungsfälle
- Universelle Variablenlängen-Kodierung ganzer Zahlen
- Lehre der Informationstheorie
- Kompakte Darstellung kleiner Ganzzahlen