Pourquoi 7-Zip dégonfle-t-il 257 et 258 tailles de mot?

-1

Les tailles de mot de compression sont généralement des puissances de 2. Pourtant, 7-Zip a quelques exceptions:

  • Deflate a des tailles de 256 et 258 mots.
  • Deflate64 a une taille de 256 et 257 mots.

Cela semble être de telles augmentations insignifiantes et étranges. Quelle est la raison / but pour eux?

Voici une photo de ce dont je parle:

entrez la description de l'image ici

abcjme
la source

Réponses:

1

7-Zip n’affiche pas toutes les tailles de mots dont Deflate et Deflate64 sont capables. Il ne montre qu'un échantillon sélectionné. Deflate est en fait capable de tous les incréments de nombres entiers compris entre 3 et 258. Étant donné que la correspondance de modèle n'est pas possible ou utile avec seulement une ou deux variables, ces quantités sont ignorées. Ainsi, la taille des mots de Deflate est en réalité une puissance de 2. Puisque "1" et "2" ne sont pas des choix de taille de mot possibles pour Deflate, vous -2 de la taille maximale de 258, ce qui équivaut à 256.

Quant à Deflate64, il est capable de tous les incréments de nombres entiers compris entre 3 et 257. 258 est en fait utilisé comme drapeau d’extension pour augmenter la plage de taille de mot de 3-65538. Cependant, 7-Zip n’utilise tout simplement pas cette fonctionnalité. Quoi qu'il en soit, si vous obtenez -2 à partir de 65538, vous obtenez 65536, ce qui correspond également à une puissance de 2. Fait intéressant, toutefois, Deflate64 pourrait être amélioré si l'indicateur d'extension couvrait plutôt les plages 258-65793, car 3-257 sont déjà couverts. .

abcjme
la source