| Assembleur 370 |
STH |
| Store Halfword |
Syntaxe
Paramètres
| Nom |
Description |
| R1 |
Ce paramètre permet d'indiquer un registre source. Contient un entier signé de 32 bits, mais seuls les 16 bits de poids faible (low-order) sont pris en compte pour l'entreposage. |
| D2(X2,B2) |
Ce paramètre permet d'indiquer l'adresse mémoire effective où sera entreposé le halfword. D2 : Déplacement (offset) constant (valeur immédiate), X2 : Registre d'index (optionnel, peut être 0 si non utilisé), B2 : Registre de base (obligatoire). L'adresse effective est calculée ainsi : Adresse effective = D2 + (valeur dans X2) + (valeur dans B2). |
Description
Cette instruction permet de copier les bits de 16 à 31 dans l'opérande spécifié.
Remarques
- L'instruction STH permet d'entreposer 16 bits (un halfword) provenant du registre R1. Seule la partie de poids faible (bits 16 à 31) du registre est utilisée pour l'écriture.
Le reste du registre n'est pas pris en compte.
- Même si R1 contient un entier de 32 bits, seuls les 2 derniers octets sont transférés en mémoire. Cela permet de travailler efficacement avec des entiers courts,
typiquement utilisés dans les structures compactes. C'est utile pour économiser de la mémoire.
- Le calcul de l'adresse mémoire repose sur la combinaison : D2 + X2 + B2. D2 est une constante, X2 est un registre d'index, et B2 un registre de base. Cela offre une
grande flexibilité d'adressage, compatible avec de nombreuses structures.
- STH est souvent utilisée pour stocker des entiers courts dans des tableaux ou des entêtes. Cela permet d'organiser des données structurées avec une économie d'espace.
C'est courant dans les programmes systèmes ou les formats binaires.
- Cette instruction n'altère pas le contenu de R1, elle ne fait qu'en extraire une partie. Cela permet une réutilisation immédiate du registre après l'instruction.
Elle est donc non destructive pour la source.
- Attention à l'alignement mémoire lors de l'utilisation de STH. Entreposer un halfword sur une adresse impaire peut entraîner une erreur ou une pénalité de performance.
Il est recommandé de respecter les alignements naturels (sur adresse paire).
- STH est complémentaire de l'instruction LH (Load Halfword), permettant de charger un halfword. Ces deux instructions sont souvent utilisées en tandem pour manipuler
des entiers 16 bits. Cela facilite la lecture et l'écriture à granularité réduite.
- Cette instruction est très utile pour la compatibilité avec d'anciens formats de données ou des architectures externes. Elle permet de n'écrire que ce qui est
nécessaire, sans surcharger la mémoire. Cela contribue à des programmes plus efficaces et compacts.
Dernière mise à jour : Mardi, le 22 août 2017