nl:: Weave:: Encoding:: BigEndian
Cet espace de noms fournit des fonctions pour:
Résumé
- Réorganisation des octets, par rapport au système hôte, en fonction de la valeur des valeurs ordonnées par octet Big Endian pour les types 16, 32 et 64 bits.
- Exécution sécurisée d'accès simples et efficaces en mémoire mappée, potentiellement non alignés, avec ou sans réorganisation des octets, vers des quantités ordonnées d'octets big-endian de 8, 16, 32 et 64 bits, avec et sans gestion des pointeurs.
Sur les systèmes hôtes big-endian, les octets ne sont pas réorganisés. Sur les autres systèmes, la réorganisation des octets est effectuée selon les besoins.
distantes |
|
---|---|
Get16(const uint8_t *p)
|
uint16_t
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 16 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible.
|
Get32(const uint8_t *p)
|
uint32_t
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 32 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible.
|
Get64(const uint8_t *p)
|
uint64_t
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 64 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible.
|
HostSwap16(uint16_t v)
|
uint16_t
Cela effectue de manière conditionnelle, si nécessaire pour le système cible, un remplacement de l'ordre des octets en fonction de la valeur de la valeur 16 bits spécifiée, supposée être dans l'ordre des octets big-endian vers le système cible (par exemple,
|
HostSwap32(uint32_t v)
|
uint32_t
Cela effectue de manière conditionnelle, selon les besoins pour le système cible, un remplacement de l'ordre des octets selon la valeur de la valeur 32 bits spécifiée, en supposant que l'ordre des octets s'effectue en big-endian vers le système cible (par exemple,
|
HostSwap64(uint64_t v)
|
uint64_t
Cela effectue de manière conditionnelle, si nécessaire pour le système cible, un remplacement de l'ordre des octets selon la valeur de la valeur de 64 bits spécifiée, supposée être dans l'ordre des octets big-endian vers le système cible (par exemple,
|
Put16(uint8_t *p, uint16_t v)
|
void
Effectuez une écriture dans la mémoire, potentiellement non alignée, de la valeur de 16 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
|
Put32(uint8_t *p, uint32_t v)
|
void
Effectuez une écriture dans la mémoire potentiellement non alignée de la valeur de 32 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
|
Put64(uint8_t *p, uint64_t v)
|
void
Effectuez une écriture dans la mémoire, potentiellement non alignée, de la valeur de 64 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
|
Read16(uint8_t *& p)
|
uint16_t
Lecture de la mémoire potentiellement non alignée de la valeur de 16 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réagencer les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible, puis incrémenter le pointeur de 16 bits (2 octets).
|
Read16(const uint8_t *& p)
|
uint16_t
Lecture de la mémoire potentiellement non alignée de la valeur de 16 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réagencer les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible, puis incrémenter le pointeur de 16 bits (2 octets).
|
Read32(uint8_t *& p)
|
uint32_t
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 32 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible et incrémente le pointeur de 32 bits (4 octets).
|
Read32(const uint8_t *& p)
|
uint32_t
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 32 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible et incrémente le pointeur de 32 bits (4 octets).
|
Read64(uint8_t *& p)
|
uint64_t
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 64 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible, puis incrémente le pointeur de 64 bits (8 octets).
|
Read64(const uint8_t *& p)
|
uint64_t
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 64 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible, puis incrémente le pointeur de 64 bits (8 octets).
|
Write16(uint8_t *& p, uint16_t v)
|
void
Effectuez une écriture dans la mémoire, potentiellement non alignée, de la valeur de 16 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
|
Write32(uint8_t *& p, uint32_t v)
|
void
Effectuez une écriture dans la mémoire potentiellement non alignée de la valeur de 32 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
|
Write64(uint8_t *& p, uint64_t v)
|
void
Effectuez une écriture dans la mémoire, potentiellement non alignée, de la valeur de 64 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
|
distantes
Get16
uint16_t Get16( const uint8_t *p )
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 16 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Valeur 16 bits à l'adresse de pointeur spécifiée. Si nécessaire, les octets ont été réorganisés.
|
Get32
uint32_t Get32( const uint8_t *p )
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 32 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
La valeur 32 bits à l'adresse de pointeur spécifiée, si nécessaire, réorganisé les octets.
|
Get64
uint64_t Get64( const uint8_t *p )
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 64 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Valeur de 64 bits à l'adresse de pointeur spécifiée, si nécessaire, réorganisé les octets.
|
HostSwap16
uint16_t HostSwap16( uint16_t v )
Cela effectue de manière conditionnelle, si nécessaire pour le système cible, un remplacement de l'ordre des octets en fonction de la valeur de la valeur 16 bits spécifiée, supposée être dans l'ordre des octets big-endian vers le système cible (par exemple,
hôte) par ordre d'octets.
Par conséquent, sur les systèmes cibles de type endian bit, il s'agit d'une opération no-op, tandis que sur les systèmes cibles big-endian, il s'agit d'une réorganisation.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Valeur d'entrée, si nécessaire, ordre des octets échangé.
|
HostSwap32
uint32_t HostSwap32( uint32_t v )
Cela effectue de manière conditionnelle, selon les besoins pour le système cible, un remplacement de l'ordre des octets selon la valeur de la valeur 32 bits spécifiée, en supposant que l'ordre des octets s'effectue en big-endian vers le système cible (par exemple,
hôte) par ordre d'octets.
Par conséquent, sur les systèmes cibles de type endian bit, il s'agit d'une opération no-op, tandis que sur les systèmes cibles big-endian, il s'agit d'une réorganisation.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Valeur d'entrée, si nécessaire, ordre des octets échangé.
|
HostSwap64
uint64_t HostSwap64( uint64_t v )
Cela effectue de manière conditionnelle, si nécessaire pour le système cible, un remplacement de l'ordre des octets selon la valeur de la valeur de 64 bits spécifiée, supposée être dans l'ordre des octets big-endian vers le système cible (par exemple,
hôte) par ordre d'octets.
Par conséquent, sur les systèmes cibles de type endian bit, il s'agit d'une opération no-op, tandis que sur les systèmes cibles big-endian, il s'agit d'une réorganisation.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Valeur d'entrée, si nécessaire, ordre des octets échangé.
|
Put16
void Put16( uint8_t *p, uint16_t v )
Effectuez une écriture dans la mémoire, potentiellement non alignée, de la valeur de 16 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
Put32
void Put32( uint8_t *p, uint32_t v )
Effectuez une écriture dans la mémoire potentiellement non alignée de la valeur de 32 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
Put64
void Put64( uint8_t *p, uint64_t v )
Effectuez une écriture dans la mémoire, potentiellement non alignée, de la valeur de 64 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
Read16
uint16_t Read16( uint8_t *& p )
Lecture de la mémoire potentiellement non alignée de la valeur de 16 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réagencer les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible, puis incrémenter le pointeur de 16 bits (2 octets).
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Valeur de 16 bits à l'adresse de pointeur spécifiée, si nécessaire, remplacement de l'ordre des octets.
|
Read16
uint16_t Read16( const uint8_t *& p )
Lecture de la mémoire potentiellement non alignée de la valeur de 16 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réagencer les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible, puis incrémenter le pointeur de 16 bits (2 octets).
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Valeur de 16 bits à l'adresse de pointeur spécifiée, si nécessaire, remplacement de l'ordre des octets.
|
Read32
uint32_t Read32( uint8_t *& p )
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 32 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible et incrémente le pointeur de 32 bits (4 octets).
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Valeur de 32 bits à l'adresse de pointeur spécifiée, si nécessaire, ordre des octets échangé.
|
Read32
uint32_t Read32( const uint8_t *& p )
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 32 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible et incrémente le pointeur de 32 bits (4 octets).
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Valeur de 32 bits à l'adresse de pointeur spécifiée, si nécessaire, ordre des octets échangé.
|
Read64
uint64_t Read64( uint8_t *& p )
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 64 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible, puis incrémente le pointeur de 64 bits (8 octets).
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Valeur de 64 bits à l'adresse de pointeur spécifiée, si nécessaire, ordre des octets échangé.
|
Read64
uint64_t Read64( const uint8_t *& p )
Effectuez une lecture de la mémoire potentiellement non alignée de la valeur de 64 bits ordonnée sur l'octet big endian à partir de l'adresse de pointeur spécifiée, réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre des octets du système cible, puis incrémente le pointeur de 64 bits (8 octets).
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
Valeur de 64 bits à l'adresse de pointeur spécifiée, si nécessaire, ordre des octets échangé.
|
Write16
void Write16( uint8_t *& p, uint16_t v )
Effectuez une écriture dans la mémoire, potentiellement non alignée, de la valeur de 16 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
Write32
void Write32( uint8_t *& p, uint32_t v )
Effectuez une écriture dans la mémoire potentiellement non alignée de la valeur de 32 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
Write64
void Write64( uint8_t *& p, uint64_t v )
Effectuez une écriture dans la mémoire, potentiellement non alignée, de la valeur de 64 bits ordonnée par l'octet du système cible vers l'adresse de pointeur spécifiée. Réorganisez les octets, si nécessaire, pour que le système cible place la valeur dans l'ordre en mode big-endian.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|