| Assembleur 370 |
ALR |
| Add Logical Registers |
Syntaxe
Paramètres
| Nom |
Description |
| R1 |
Ce paramètre permet d'indiquer un registre destinataire : reçoit le résultat |
| R2 |
Ce paramètre permet d'indiquer un registre source : contient la valeur à ajouter |
Description
Cette instruction permet d'effectuer une addition logique d'un registre à un autre registre.
Remarques
- L'instruction ALR (Add Logical Registers) effectue une addition logique entre deux registres. Elle utilise la syntaxe compacte ALR R1, R2, sans accès direct à la mémoire.
Cette opération est rapide car elle agit uniquement sur les registres internes.
- Le registre R1 joue ici le rôle de destinataire. Il contient la valeur initiale et sera mis à jour avec le résultat final. Toute erreur dans son désignation peut
entraîner une altération de données critiques.
- Le registre R2 fournit la valeur à ajouter à celle contenue dans R1. Il agit comme source dans l'opération logique sans être modifié lui-même. Ce fonctionnement préserve
l'intégrité du registre source.
- ALR ne prend en charge que les registres généraux numérotés de 0 à 15. Cela impose une gestion rigoureuse des ressources lors de la programmation. Une mauvaise
allocation peut provoquer des effets secondaires indésirables.
- L'addition dite "logique" signifie que le traitement ne tient pas compte des retenues. C'est une opération binaire simple, souvent utilisée pour manipuler des adresses.
Elle est adaptée à certaines optimisations système ou calculs de pointeurs.
- ALR est typiquement utilisée dans des routines nécessitant des calculs rapides. Son absence d'accès mémoire réduit significativement le temps d'exécution. Cela en fait
un choix privilégié dans les algorithmes critiques en performance.
- La simplicité de la syntaxe ALR R1, R2 favorise une lecture aisée du code. Elle est aussi moins sujette à erreur que les instructions utilisant des adresses. Ce format
direct rend le débogage plus accessible dans des contextes complexes.
- Comme ALR modifie le contenu de R1, il est essentiel d'en sauvegarder l'état si nécessaire. Cela permet d'éviter la perte de données si R1 est utilisé ailleurs dans
le programme. Les développeurs expérimentés prennent soin de planifier ces interactions.
Dernière mise à jour : Mardi, le 22 août 2017