| Assembleur 370 |
XI |
| eXclusive Or Immediate |
Syntaxe
Paramètres
| Nom |
Description |
| D1(B1) |
Ce paramètre permet d'indiquer l'adresse en mémoire de l'octet à modifier. D1 : Déplacement (offset). B1 : Registre de base contenant l'adresse de base. |
| I2 |
Ce paramètre permet d'indiquer la valeur immédiate sur 1 octet (0 à 255 en hexadécimal ou décimal). C'est cette constante qui sera utilisée dans le XOR. |
Description
Cette instruction permet d'effectuer une opération de «Ou exclusif binaire» d'une valeur immédiate à un registre.
Remarques
- L'instruction XI réalise une opération XOR entre un octet mémoire et une valeur immédiate. Elle est idéale pour modifier rapidement un seul octet d'une zone mémoire.
Cela permet des traitements ciblés, sans passer par un registre général.
- Le paramètre I2 est une valeur immédiate codée sur 1 octet, entre 0 et 255. C'est cette valeur qui sera appliquée au contenu de l'adresse mémoire. Cela simplifie le
code puisqu'il n'est pas nécessaire de charger la valeur dans un registre.
- La zone mémoire ciblée par D1(B1) contient un seul octet. Il faut donc s'assurer que l'adresse pointe vers un octet pertinent du programme ou des données. Une erreur
d'adresse pourrait altérer des données sensibles ou du code.
- L'usage de XI est très courant pour modifier un drapeau (flag) ou un bit spécifique dans une structure. En combinant une constante binaire avec la valeur en mémoire,
on peut inverser des bits précis. Cela en fait une instruction efficace pour les opérations logiques sur les bits.
- Comme toute opération XOR, XI est réversible : appliquer deux fois le même XOR redonne la valeur initiale. Cela peut être utilisé pour des mécanismes de chiffrement
léger ou d'inversion d'état. C'est une méthode simple pour masquer ou révéler des informations.
- L'instruction XI modifie la mémoire directement, sans impliquer les registres généraux. Elle est donc peu intrusive dans les routines critiques en registres. Cela permet
une meilleure optimisation du code dans les sous-programmes contraints.
- XI affecte les codes condition (Condition Code), en particulier les bits définissant le résultat. Il est donc possible d'utiliser l'instruction comme base de test
logique, en suivant avec un saut conditionnel. Cela évite une instruction de test distincte dans certains cas.
- XI est souvent utilisée pour initialiser, inverser ou réinitialiser des bits de contrôle dans les tables, tampons ou registres mémoire. Grâce à sa concision et son
action ciblée, elle s'adapte bien aux opérations systèmes ou bas niveau. Son efficacité réside dans la combinaison directe de mémoire et constante immédiate.
Dernière mise à jour : Mardi, le 22 août 2017