| Assembleur 370 |
OC |
| Or Characters |
Syntaxe
Paramètres
| Nom |
Description |
| D1(L,B1) |
Ce paramètre permet d'indiquer la première zone mémoire impliquée dans l'opération OR. Il est composé de : D1 : Un registre ou une zone mémoire contenant des données (caractères) sur lesquelles l'opération OU va être effectuée, (L, B1) : Ce paramètre indique l'adresse mémoire et la longueur des données à traiter. L représente la longueur de la zone mémoire (généralement en octets ou mots) et B1 représente un registre ou un pointeur d'adresse indiquant l'adresse de début de cette zone mémoire. |
| D2(B2) |
Ce paramètre permet d'indiquer la deuxième zone mémoire ou registre impliqué dans l'opération OR. Il est constitué de : D2 : Un autre registre ou une zone mémoire contenant des données à partir desquelles l'opération OU sera effectuée, (B2) : Un registre indiquant l'adresse de départ de cette deuxième zone mémoire. |
Description
Cette instruction permet d'effectuer une opération de «Ou binaire» d'un bloc de données à un autre bloc de données.
Remarques
- L'instruction OC réalise un OU logique (bit à bit) entre deux zones mémoire. Le résultat est écrit dans la première zone, celle spécifiée par D1(L,B1). La deuxième zone
(D2(B2)) reste inchangée.
- Elle travaille octet par octet sur une longueur précisée par le paramètre L. Chaque octet de la zone source est combiné avec l'octet correspondant de la destination.
Cela permet de traiter efficacement des chaînes de caractères ou des masques binaires.
- Cette instruction est utile pour mettre à jour certains bits dans une zone mémoire sans affecter les autres. Elle permet par exemple d'activer certains drapeaux (bits
à 1) dans une séquence de contrôle. Elle fonctionne bien dans des routines de formatage ou de préparation de champs.
- Le paramètre L détermine combien d'octets seront traités. Il doit être choisi avec soin pour ne pas dépasser la taille réelle des blocs. Une erreur de longueur pourrait
entraîner une altération de mémoire non souhaitée.
- Le format (D1(L,B1), D2(B2)) offre une grande flexibilité d'adressage en utilisant des registres comme base. Cela permet de manipuler dynamiquement des structures ou
zones mémoire complexes. C'est une caractéristique typique de l'architecture IBM 370.
- OC peut être vue comme une variante de l'instruction O, mais appliquée à plusieurs octets. Elle remplit donc un rôle similaire, mais à l'échelle des blocs de données.
Elle évite d'avoir à faire une boucle pour chaque octet dans une routine manuelle.
- L'utilisation d'une valeur constante en mémoire comme masque source est courante avec OC. Cela permet de réutiliser des gabarits de bits définis à l'avance pour
manipuler des champs. L'approche est efficace et optimise le code assembleur.
- L'instruction OC fait partie d'un ensemble cohérent d'instructions de traitement de caractères (XC, NC,...). Elle est idéale pour les tâches bas niveau de manipulation
de zones alphanumériques ou de contrôle de formats. C'est une instruction fondamentale pour tout programmeur système sur architecture 370.
Dernière mise à jour : Mardi, le 22 août 2017