15/11/2024
Glosario de tecnología: qué significa Byte order

Fuente: telam
La tecnología también ha impactado la salud con dispositivos novedosos y aplicaciones que ayudan a las personas enfermas
>
- La conversión entre Big Endian y Little Endian implica invertir los bytes en una palabra. Por ejemplo, si hay una palabra compuesta por 4 bytes (A, B, C y D), pasarla del formato Big Endian al Little Endian requerirá invertir el orden para obtener D, C, B y A.
- Algunos lenguajes brindan herramientas para convertir automáticamente entre ambos formatos,sin embargo otros no lo hacen así que tendrás que realizar tu propia conversión manualmente si lo necesitas.
- Byte 1 . 0000 1111
- Byte 2 . 0000 1110
- Byte 3 . 0000 1100
- Byte 4 . 0000 1010
- Byte 1 . 0000 1010
- Byte 2 . 0000 1100
- Byte 3 . 0000 1110
- Byte 4 . 0000 1111
Esto puede parecer confuso a primera vista, pero hay algunas reglas simples para recordar cuál es cuál. Si pensamos en un libro con muchas páginas, Big Endian significa leer las primeras páginas antes de leer las últimas,mientras que Little Endian significa leer las últimas páginas antes de leer las primeras. Esto nos ayuda a recordar cómo funciona cada formato. Por otra parte, hay otras características importantes para saber acerca de estos dos formatos :
- Primero debes determinar si tu sistema es big-endian o little-endian. Big-endian significa que el byte más significativo (el bit con mayor valor numérico) se almacena primero. Por otro lado, little-endian significa que el byte menos significativo se almacena primero.
- Los programas pueden usar una combinación de instrucciones en lenguaje ensamblador para determinar el orden de bytes de un sistema. Estas instrucciones leerán los valores almacenados en la memoria interna del sistema e intentarán hacer coincidir los resultados con los distintos tipos de endians.
- Otra forma es usando las funciones nativas del lenguaje, como por ejemplo “htonl” ( Host To Network Long). Estas funciones leerán los valores almacenados en la memoria interna y devolverán el resultado como big-endian o little-endian, dependiendo del sistema operativo utilizado.
- Por último, también puedes usar herramientas externas para detectar el orden de bytes, como son las aplicaciones disponibles para Linux o Windows que te permitirán verificar rápido qué tipo de endian estás utilizando en tu equipo.
Dicho con otras palabras, existen varias formas para detectar el orden de bytes: instrucciones en lenguaje ensamblador, funciones nativas del lenguaje y herramientas externas como aplicaciones para Linux o Windows,todas ellas nos ayudan a determinar si nuestro sistema es big-endian o little-endian y así poder trabajar correctamente con él.
- Java: Big-Endian
- C / C++: Endianness depende del sistema operativo y del procesador utilizado
- Python : Little-Endian
- JavaScript : Big-Endian
- Ruby: Little-Endian
- Go: Endianness depende del sistema operativo y del procesador utilizado
Es importante tener en cuenta estas consideraciones para evitar errores relacionados con el cambio de endianness cuando se trabaja con diferentes lenguajes. Por ejemplo, si un programa hecho en Java se ejecuta en un sistema con procesador little-endian, podría producir resultados inesperados debido al cambio automático entre big-endian y little-endians. Por ende, es necesario ser consciente sobre el tipo correcto (big o little) al momento de trabajar con diferentes lenguajes y sistemas operativos.
Fuente: telam