| Assembleur 370 |
AH |
| Add Halfword |
Syntaxe
Paramètres
| Nom |
Description |
| R1 |
Ce paramètre permet d'indiquer un registre général (0 à 15) recevant le résultat. |
| D2 |
Ce paramètre permet d'indiquer le déplacement sur 12 bits (valeur immédiate entre 0 et 4095) |
| X2 |
Ce paramètre permet d'indiquer le registre d'indexation (facultatif, sinon 0) |
| B2 |
Ce paramètre permet d'indiquer un registre de base, contenant une adresse mémoire |
Description
Cette instruction permet d'effectuer une addition d'une adresse contenant un mot (2 octets) à un registre.
Remarques
- L'instruction AH permet d'ajouter un mot (2 octets, soit 16 bits signés) situé en mémoire au contenu d'un registre général. Le résultat de l'opération est entreposé
dans ce même registre (R1). Elle est utile pour travailler avec des entiers plus petits et économiser de la mémoire.
- Le mot en mémoire est interprété comme un entier signé en complément à deux. Cela signifie que des valeurs négatives peuvent aussi être additionnées correctement.
Cela rend l'instruction adaptée aux opérations arithmétiques classiques.
- La mémoire est adressée via une combinaison de D2 (offset), X2 (index) et B2 (base). Cette souplesse permet un adressage efficace dans les tableaux ou les structures.
X2 est facultatif, mais utile pour des accès dynamiques.
- Contrairement à l'instruction A, AH ne traite que des demi-mots (2 octets), ce qui réduit la taille des données manipulées. Cela peut optimiser les performances et
l'espace mémoire si des entiers de petite taille suffisent. Mais attention au risque de dépassement (overflow).
- Le registre R1 conserve le résultat final après l'addition. L'opérande mémoire reste inchangé, car elle est uniquement lue. Cela garantit l'intégrité des données
sources.
- Les indicateurs de condition (flags) sont mis à jour après l'exécution. Ils indiquent notamment si le résultat est nul, négatif ou s'il y a eu dépassement.
Cela facilite les tests logiques ou les branchements conditionnels ensuite.
- Le mot en mémoire doit être aligné correctement (sur une adresse paire). Un alignement incorrect pourrait provoquer une interruption ou une erreur. C'est une contrainte
matérielle classique sur cette architecture.
- AH est souvent utilisée en conjonction avec des instructions comme SH (Subtract Halfword) ou CH (Compare Halfword). Elle est adaptée aux algorithmes
manipulant des entiers courts, comme les compteurs ou index. Elle illustre la richesse des instructions arithmétiques en Assembleur 370.
Dernière mise à jour : Mardi, le 22 août 2017