door Johan1951 » vr 01 okt 2010, 08:54
From: Mietje
Apoc2: Er werd gezegd dat dit coderingssysteem werkte door bv een boek te versleutelen in één getal. Nu vraag ik me af of iemand hier zich iets bij voor kan stellen. Je kan bv het aantal bytes op een HD niet anders zien dat een opeenvolging van het aantal enen en nullen? En dus zijn er evenveel getallen als mogelijkheden voor verschillende configuraties van enen en nullen?
Het omrekenen van een bytestroom naar een drijvend komma getal wordt arithmatische compressie genoemd. Het is een techniek die al meer dan 15 jaar bekend is.
De truuk bij dit soort compressie is dat je niet evenveel bits gebruikt om verschillende bytestrings van de zelfde lengte te coderen. Hoe vaker een bepaalde bytestring voorkomt, in hoe minder bits hij gecodeerd zal worden.
Arithmatische compressie voert dit idee nog een stap verder door tijdens het coderen niet met hele bits te werken, maar met fracties van bits. Dus bv. een reeks van 256 bytes wordt gecodeerd naar 2,7564 bits.
Arithmatische compressie werkt met "Ordes", dwz. codeer je een bytestream met orde 1 compressie, dan werk je alleen met bytestrings van lengte 1. Orde 2 werkt met stringlengtes 1 en 2, enz.
Hoe hoger de orde van een arithmatische compressie, hoe kleiner het resultaat zal zijn, maar de berekeningstijd neemt exponentieel toe bij stijgende orde.
<edit>
Ik kan me niet voorstellen dat die uitvinding een arithmatische compressie was, ten eerste is deze manier van comprimeren (nog) te traag voor streaming video; en ten tweede is het een verkeerd soort algorithme voor videocompressie (het is een lossless algorithme, bij audio/video gebruik je normaal lossy compression).
</edit>