Little Endian y Big Endian
De Wikitronica
Al momento de guardar un dato de un byte en la memoria no hay mucho de que preocuparse, pero cuando se desean almacenar datos de 2 o mas bytes surge un problema, debido a que cada posición de memoria es capaz de guardar un solo byte. Entonces ¿Como es ordenado un dato de 16 bits en memoria? Pues bien, es de suma importancia tener en cuenta el formato de almacenamiento que posea la arquitectura a utilizar.
Existen dos formatos de ordenamiento:
Contenido
Little Endian
En este formato, los bits menos significativos se almacenan en la posicion mas baja de memoria, mientras que los mas significativos se guardan en las posiciones altas consecutivas
Big Endian
En este formato, los bits mas significativos se almacenan en la posicion mas baja de memoria, mientras que los menos significativos se guardan en las mas altas consecutivas.
Ejemplo
Si se tiene el numero hexadecimal 759A6FD10E (5 bytes) y se desea guardar en la posicion de memoria 100, se hara de la siguiente manera:
Posicion de memoria | Dato al macenado |
---|---|
100 | 75 |
101 | 9A |
102 | 6F |
103 | D1 |
104 | 0E |
Posicion de memoria | Dato al macenado |
---|---|
100 | 0E |
101 | D1 |
102 | 6F |
103 | 9A |
104 | 75 |
Otros Formatos
Existen ciertas arquitecturas que permitentrabajar con ambos formatos, de manera que pueda escogerse con cual de ellos trabajar. Estos tipos de arquitecturas, son referidos como sistemas que utilizan un formato middle endian.