Gibt es eine Leistungsgründe für das Mischen der Endianess einer binären Datei?

StackOverflow https://stackoverflow.com/questions/8841857

  •  27-10-2019
  •  | 
  •  

Frage

Ich schreibe einen Parser für den gängigsten geografischen Datenspeichertyp, eine Sammlung von Dateien, die als "Shapefile" bezeichnet werden. Dies ist mein erstes Projekt, bei dem ich über Endianges nachdenken musste.

Es stellt sich heraus, dass die Geometriespeicherung gemischt ist Endian; Einige Teile der Datei sind Big Endian, aber das meiste davon ist wenig Endian. Der Shapefile -Standard wird beschrieben hier.

Gibt es eine erkennbare Performance -Begründung oder wurde sie einfach aus dem historischen Kontext geboren? Wenn ja, wissen Sie zufällig, was dieser historische Kontext ist?

Die Ganzzahlen und Doppelprezisionsgifter, aus denen die Datenbeschreibungsfelder im Dateiheader (unten identifiziert wurden) und die Aufzeichnungsinhalte in der Hauptdatei aufnehmen kleiner Endian (PC oder Intel®) Byte -Bestellung. Die Ganzzahlen und die schwimmenden Punktnummern mit doppelter Präzision, aus denen der Rest der Datei- und Dateiverwaltung besteht Big Endian (Sun® oder Motorola®) Byte -Bestellung.

War es hilfreich?

Lösung

Obwohl es keine klare Antwort dafür zu geben scheint, ist eine Mischung aus "Verwirrung beim Versuch, ein Format zu erstellen, das auf allen Plattformen funktioniert" und "viele schlecht gestaltete Formate wurden damals entworfen". . Weitere Informationen hier: https://gis.stackexchange.com/questions/18969/oddities-in-the-shapefile-technical-specification

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top