Warum sind Ganzzahlen Byte gespeichert rückwärts? Das gilt, um nur Kopfzeilen?
Ich bin derzeit versuchen zu entziffern, WAV-Dateien. Aus Kopf, um die PCM-Daten.
Ich habe ein PDF (http://www.tdt.com/T2Support/technical_notes/tn0132.pdf) detailliert die Anatomie einer WAV-Datei, und ich habe in der Lage zu extrahieren und den Sinn der entsprechenden header-Daten mit Ghex2. Aber meine Fragen sind:
Warum sind die ganzen zahlen Byte gespeichert rückwärts? I. e. Dez. 20 gespeichert ist, als 0x14000000 statt 0x00000014.
Sind die zahlen der PCM-Daten auch gespeichert nach hinten?
- Es gibt keine "rückwärts". Es ist alles Konvention. Wikipedia-Suche nach Endianness.
- ...und wenn man einmal klar, dass die beiden big und little endian zumutbar sind, versuchen Sie wickeln Ihre Meinung rund um mixed-endian. Dann Weinen.
- little endian ist nicht zumutbar wenn. was ist das für sinnvoll?
Du musst angemeldet sein, um einen Kommentar abzugeben.
WAV-Dateien in little-endian (niederwertigstes Byte zuerst), weil das format, entstanden für Betriebssysteme auf intel-Prozessor-basierten Maschinen, die verwenden das little-endian-format zum speichern von zahlen.
Wenn Sie denken, es Art von Sinn macht, denn wenn Sie möchten, werfen einen long integer zu einem kurzen oder auch ein Zeichen der Start-Adresse bleibt die gleiche, die Sie gerade Aussehen bei weniger bytes.
Damit auch für die 16-bit-encoding nach oben, little-endian-format verwendet werden, für die PCM als gut. Das ist ganz praktisch, da Sie in der Lage, ziehen Sie Sie in als ganze zahlen. vergessen Sie nicht, Sie wird gespeichert als zwei-Komplement-Ganzzahlen mit Vorzeichen, wenn Sie 16-bit -, nicht aber, wenn Sie sind 8 bit. (siehe http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html für weitere Details)
"Rückwärts" ist subjektiv. Einige Maschinen sind groß-endian, andere sind wenigendian. Bei byte-orientierten Kontexten wie Datei-Formate und Netzwerk-Protokolle, die Reihenfolge ist beliebig. Einige Formate wie angeben, big - oder little-endian, andere möchten flexibel sein und akzeptieren, entweder in form, mit einem flag, das angibt, welche im Einsatz ist.
Sieht aus wie WAV-Dateien genau wie little-endian.