¿Existe una justificación de rendimiento para mezclar la endianness de un archivo binario?

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

  •  27-10-2019
  •  | 
  •  

Pregunta

Estoy escribiendo un analizador para el tipo de almacenamiento de datos geográficos más comunes, una colección de archivos llamado "archivo de forma". Este es mi primer proyecto en el que he tenido que pensar en endianness.

Resulta que el almacenamiento de geometría es mixto endian; Algunas partes del archivo son Big Endian, pero la mayor parte es Little Endian. Se describe el estándar de archivo de forma aquí.

¿Existe una justificación de rendimiento discernible, o simplemente nació del contexto histórico? Si es así, ¿sabes cuál es ese contexto histórico?

Los enteros y los enteros de doble precisión que componen los campos de descripción de datos en el encabezado del archivo (identificados a continuación) y los contenidos de registro en el archivo principal están en Little Endian (PC o Intel®) Orden de bytes. Los enteros y los números de punto flotante de doble precisión que componen el resto del archivo y la administración de archivos están en Big Endian (Sun® o Motorola®) Orden de bytes.

¿Fue útil?

Solución

Si bien no parece haber una respuesta clara para ello, lo que he visto es una mezcla de "confusión al tratar de crear un formato que funcione en todas las plataformas" y "se diseñaron muchos formatos mal diseñados en ese entonces" . Más información aquí: https://gis.stackexchange.com/questions/18969/oddities-in-the-shapefile-technical-especificación

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top