nl:: Weave:: Codificación:: BigEndian
Este espacio de nombres proporciona funciones para lo siguiente:
Resumen
- Realizar un reordenamiento de bytes relativo al sistema host por el valor de los enormes valores de bytes bytes ordenados para tipos de 16, 32 y 64 bits.
- Accede de forma segura y sencilla a la memoria con asignaciones eficientes, a ubicaciones de memoria no alineadas, con o sin reordenamiento de bytes, para cantidades de 8-16, 36 y 64 bits ordenadas en bytes, con y sin administración de punteros.
En los sistemas host host grandes, no se realizará un reordenamiento de bytes real. En otros sistemas, el reordenamiento de bytes se realiza según corresponda.
Functions |
|
---|---|
Get16(const uint8_t *p)
|
uint16_t
Realiza una lectura de memoria potencialmente no alineada del gran byte endian ordenado de 16 bits desde la dirección del puntero especificado, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino.
|
Get32(const uint8_t *p)
|
uint32_t
Realiza una lectura de memoria potencialmente alineada, potencialmente no alineada del valor del byte endian grande de 32 bits de la dirección del puntero especificado, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino.
|
Get64(const uint8_t *p)
|
uint64_t
Realiza una lectura de memoria potencialmente sin alinear del posible byte endian de 64 bits de la dirección del puntero especificado, reordena bytes, según sea necesario, a fin de que el sistema de destino coloque el valor en el orden de bytes del sistema de destino.
|
HostSwap16(uint16_t v)
|
uint16_t
Esto, de forma condicional, realiza, según sea necesario para el sistema de destino, un intercambio de orden de bytes por el valor del valor especificado de 16 bits, que se supone se encuentra en el orden de bytes endian grandes al sistema objetivo (es decir,
|
HostSwap32(uint32_t v)
|
uint32_t
Esto, de forma condicional, realiza, según sea necesario para el sistema de destino, un intercambio de orden de bytes por el valor del valor especificado de 32 bits, que se supone que se realiza en orden de bytes enormes para el sistema de destino (es decir,
|
HostSwap64(uint64_t v)
|
uint64_t
Esto realiza condicionalmente, según sea necesario para el sistema de destino, un intercambio de orden de bytes por el valor del valor especificado de 64 bits, que se supone que están en un orden de bytes endian grandes para el sistema de destino (es decir,
|
Put16(uint8_t *p, uint16_t v)
|
void
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 16 bits a la dirección del puntero especificada, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
|
Put32(uint8_t *p, uint32_t v)
|
void
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 32 bits a la dirección del puntero especificada, reordena los bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
|
Put64(uint8_t *p, uint64_t v)
|
void
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 64 bits a la dirección del puntero especificada, reordena los bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
|
Read16(uint8_t *& p)
|
uint16_t
Realiza una lectura de memoria potencialmente alineada, potencialmente no alineada del gran byte endian de 16 bits de la dirección del puntero especificado, realiza el reordenamiento de bytes según sea necesario, para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 16 bits (2 bytes).
|
Read16(const uint8_t *& p)
|
uint16_t
Realiza una lectura de memoria potencialmente alineada, potencialmente no alineada del gran byte endian de 16 bits de la dirección del puntero especificado, realiza el reordenamiento de bytes según sea necesario, para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 16 bits (2 bytes).
|
Read32(uint8_t *& p)
|
uint32_t
Realiza una lectura de memoria potencialmente alineada, potencialmente desalineada, del gran byte endian ordenado a 32 bits de la dirección del puntero especificada, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 32 bits (4 bytes).
|
Read32(const uint8_t *& p)
|
uint32_t
Realiza una lectura de memoria potencialmente alineada, potencialmente desalineada, del gran byte endian ordenado a 32 bits de la dirección del puntero especificada, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 32 bits (4 bytes).
|
Read64(uint8_t *& p)
|
uint64_t
Realiza una lectura de memoria potencialmente alineada, potencialmente no alineada del gran byte endian ordenado a 64 bits de la dirección del puntero especificada, realiza un reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 64 bits (8 bytes).
|
Read64(const uint8_t *& p)
|
uint64_t
Realiza una lectura de memoria potencialmente alineada, potencialmente no alineada del gran byte endian ordenado a 64 bits de la dirección del puntero especificada, realiza un reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 64 bits (8 bytes).
|
Write16(uint8_t *& p, uint16_t v)
|
void
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 16 bits a la dirección del puntero especificada, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
|
Write32(uint8_t *& p, uint32_t v)
|
void
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 32 bits a la dirección del puntero especificada, reordena los bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
|
Write64(uint8_t *& p, uint64_t v)
|
void
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 64 bits a la dirección del puntero especificada, reordena los bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
|
Functions
Get16
uint16_t Get16( const uint8_t *p )
Realiza una lectura de memoria potencialmente no alineada del gran byte endian ordenado de 16 bits desde la dirección del puntero especificado, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de 16 bits en la dirección del puntero especificado, si es necesario, bytes reordenados.
|
Get32
uint32_t Get32( const uint8_t *p )
Realiza una lectura de memoria potencialmente alineada, potencialmente no alineada del valor del byte endian grande de 32 bits de la dirección del puntero especificado, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de 32 bits en la dirección del puntero especificado, si es necesario, bytes reordenados.
|
Get64
uint64_t Get64( const uint8_t *p )
Realiza una lectura de memoria potencialmente sin alinear del posible byte endian de 64 bits de la dirección del puntero especificado, reordena bytes, según sea necesario, a fin de que el sistema de destino coloque el valor en el orden de bytes del sistema de destino.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de 64 bits en la dirección del puntero especificado, si es necesario, bytes reordenados.
|
HostSwap16
uint16_t HostSwap16( uint16_t v )
Esto, de forma condicional, realiza, según sea necesario para el sistema de destino, un intercambio de orden de bytes por el valor del valor especificado de 16 bits, que se supone se encuentra en el orden de bytes endian grandes al sistema objetivo (es decir,
host) de orden de bytes.
En consecuencia, en los sistemas objetivo de bits finitos, esta es una no-op, y en los sistemas objetivo grandes, realiza un reordenamiento.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de entrada, si es necesario, se intercambia el orden de bytes.
|
HostSwap32
uint32_t HostSwap32( uint32_t v )
Esto, de forma condicional, realiza, según sea necesario para el sistema de destino, un intercambio de orden de bytes por el valor del valor especificado de 32 bits, que se supone que se realiza en orden de bytes enormes para el sistema de destino (es decir,
host) de orden de bytes.
En consecuencia, en los sistemas objetivo de bits finitos, esta es una no-op, y en los sistemas objetivo grandes, realiza un reordenamiento.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de entrada, si es necesario, se intercambia el orden de bytes.
|
HostSwap64
uint64_t HostSwap64( uint64_t v )
Esto realiza condicionalmente, según sea necesario para el sistema de destino, un intercambio de orden de bytes por el valor del valor especificado de 64 bits, que se supone que están en un orden de bytes endian grandes para el sistema de destino (es decir,
host) de orden de bytes.
En consecuencia, en los sistemas objetivo de bits finitos, esta es una no-op, y en los sistemas objetivo grandes, realiza un reordenamiento.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de entrada, si es necesario, se intercambia el orden de bytes.
|
Put16
void Put16( uint8_t *p, uint16_t v )
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 16 bits a la dirección del puntero especificada, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
Put32
void Put32( uint8_t *p, uint32_t v )
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 32 bits a la dirección del puntero especificada, reordena los bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
Put64
void Put64( uint8_t *p, uint64_t v )
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 64 bits a la dirección del puntero especificada, reordena los bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
Lectura16
uint16_t Read16( uint8_t *& p )
Realiza una lectura de memoria potencialmente alineada, potencialmente no alineada del gran byte endian de 16 bits de la dirección del puntero especificado, realiza el reordenamiento de bytes según sea necesario, para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 16 bits (2 bytes).
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de 16 bits en la dirección del puntero especificado, si es necesario, se cambia el orden de bytes.
|
Lectura16
uint16_t Read16( const uint8_t *& p )
Realiza una lectura de memoria potencialmente alineada, potencialmente no alineada del gran byte endian de 16 bits de la dirección del puntero especificado, realiza el reordenamiento de bytes según sea necesario, para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 16 bits (2 bytes).
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de 16 bits en la dirección del puntero especificado, si es necesario, se cambia el orden de bytes.
|
Lectura 32
uint32_t Read32( uint8_t *& p )
Realiza una lectura de memoria potencialmente alineada, potencialmente desalineada, del gran byte endian ordenado a 32 bits de la dirección del puntero especificada, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 32 bits (4 bytes).
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de 32 bits en la dirección del puntero especificado, si es necesario, se cambia el orden de bytes.
|
Lectura 32
uint32_t Read32( const uint8_t *& p )
Realiza una lectura de memoria potencialmente alineada, potencialmente desalineada, del gran byte endian ordenado a 32 bits de la dirección del puntero especificada, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 32 bits (4 bytes).
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de 32 bits en la dirección del puntero especificado, si es necesario, se cambia el orden de bytes.
|
Lectura64
uint64_t Read64( uint8_t *& p )
Realiza una lectura de memoria potencialmente alineada, potencialmente no alineada del gran byte endian ordenado a 64 bits de la dirección del puntero especificada, realiza un reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 64 bits (8 bytes).
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de 64 bits en la dirección del puntero especificado, si es necesario, se intercambia el orden de bytes.
|
Lectura64
uint64_t Read64( const uint8_t *& p )
Realiza una lectura de memoria potencialmente alineada, potencialmente no alineada del gran byte endian ordenado a 64 bits de la dirección del puntero especificada, realiza un reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes del sistema de destino y aumenta el puntero en 64 bits (8 bytes).
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Qué muestra |
El valor de 64 bits en la dirección del puntero especificado, si es necesario, se intercambia el orden de bytes.
|
Escritura16
void Write16( uint8_t *& p, uint16_t v )
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 16 bits a la dirección del puntero especificada, realiza el reordenamiento de bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
Escritura 32
void Write32( uint8_t *& p, uint32_t v )
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 32 bits a la dirección del puntero especificada, reordena los bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
Escritura 64
void Write64( uint8_t *& p, uint64_t v )
Realiza una escritura en la memoria potencialmente no alineada del byte de sistema de destino ordenado de 64 bits a la dirección del puntero especificada, reordena los bytes según sea necesario para que el sistema de destino coloque el valor en el orden de bytes big endian.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|