Archives de la liste de diffusion ptaffgnu

Endianness

 
 

Endianness

  • Canada
  • Windows
  • Mozilla Thunderbird
Bonjour,

Pour ceux qui ne le savent pas déjà, il existe plusieurs méthodes d'encoder des
données binaires sur un ordinateur. Dépendant du
CPU, on peut avoir des fichiers avec encodage big-endian ou little-endian. Comme vous
pouvez vous imaginer, ceci cause un grand
problème lorsqu'on doit transférer des données binaires, par exemple des images, entre
des systèmes qui encodent diffèrement.

Wikipedia explique bien le problème: http://en.wikipedia.org/wiki/Endianness

Aujourd'hui, la majorité des formats et des logiciels s'occupent de manière transparente
de convertir entre les formats, mais des
fois on est pris avec un fichier binaire RAW.. dans certains cas, on peut convertir avec
dd en utilisant le paramètre conv=swab qui
intervertis chaque paires de bytes. Évidemment, il faut que le fichier soit composé
d'entiers, car les chiffres à virgules flottante
sont un tout autre problème. Ceci étant dit, si vous avez foo.raw qui est en big-endian
et que vous voulez le convertir, vous faites:
dd if=foo.raw of=bar.raw conv=swab

Ciao,

--
Stefan Michalowski
Email: mitch(à)ptaff.ca
PGP Key: http://screamerone.zapto.org/k.asc
 

 

Propulsé par xhtmail