Je suis très novice dans le monde de l'encodage des octets, alors excusez-moi (et corrigez-moi bien sûr) si j'utilise/exprime des concepts simples de la mauvaise façon. J'essaie de comprendre le codage à octets variables. J'ai lu l'article de Wikipedia (http://en.wikipedia.org/wiki/Variable-width_encoding) aussi bien qu'un book chapter d'un manuel de recherche d'information. Je pense que je comprends comment encoder un nombre entier décimal. Par exemple, si je voulais fournir un codage variable octet pour l'entier 60, je devrais le résultat suivant:Clarification de l'encodage à octets variables
1 0 1 1 1 1 0 0
(s'il vous plaît laissez-moi savoir si ce qui précède est incorrect). Si je comprends le schéma, alors je ne suis pas complètement sûr de la façon dont l'information est compressée. Est-ce parce qu'habituellement nous utiliserions 32 bits pour représenter un nombre entier, de sorte que représenter 60 aboutirait à 1 1 1 1 0 0
précédé de 26 zéros, gaspillant ainsi cet espace plutôt que de le représenter avec seulement 8 bits à la place?
Merci d'avance pour les clarifications.
Mais lorsque vous écrivez dire 1 0 1 1 1 1 0 0 à un fichier texte, il faudra 8 octets (un pour chaque), tandis que 60 ne prendra que 2 octets.Comment économiser de l'espace alors. Ce serait génial si vous pouviez fournir le code dans votre réponse – Programmer
@Programmer: Je ne suis pas sûr de comprendre votre question. L'encodage à longueur variable n'a de sens que lorsque vous parlez de données binaires, donc vous n'écririez jamais cela dans un fichier texte; vous écririez l'octet représenté par cette série de bits sous forme binaire. –