| Assembleur 370 |
MVN |
| Move Numerics |
Syntaxe
Paramètres
| Nom |
Description |
| D1(L,B1) |
Ce paramètre permet d'indiquer la destination : L'adresse mémoire où les données seront copiées. D1 : Déplacement de l'adresse de destination (c'est-à-dire l'offset depuis le registre de base), L : Longueur de la zone à copier, en octets, B1 : Registre de base contenant l'adresse de destination. |
| D2(B2) |
Ce paramètre permet d'indiquer la source : L'adresse mémoire d'où les données doivent être copiées. D2 : Déplacement à partir du registre de base spécifié dans B2 pour la source, B2 : Registre de base contenant l'adresse de départ de la source. |
Description
Cette instruction permet de copier les 4 bits du haut d'un octet d'un bloc de données dans une autre bloc de données.
Remarques
- L'instruction MVN copie uniquement les 4 bits de poids fort (high nibble) de chaque octet source. Les 4 bits de poids faible (low nibble) de la destination restent
inchangés. Cela permet une modification partielle ciblée de chaque octet.
- MVN est principalement utilisée pour formater des données numériques codées en zone, comme les chiffres en EBCDIC. Elle permet de changer uniquement la partie numérique
tout en préservant les indicateurs de signe ou de type. C'est très utile dans les traitements comptables ou financiers.
- Le champ D1(L,B1) détermine où seront copiés les nibbles numériques. Il permet de spécifier à la fois l'adresse de destination et la longueur des données à traiter.
Cette flexibilité est typique des instructions de traitement de chaînes en assembleur 370.
- De son côté, D2(B2) fournit l'adresse source dont on lira les bits à copier. Il ne comprend pas de paramètre de longueur, car c'est celle de la destination déterminant
le nombre d'octets à traiter. Cela évite les incohérences entre source et destination.
- MVN est souvent utilisée en combinaison avec d'autres instructions similaires comme MVP ou MVC. Chacune ayant un effet différent sur les octets, elles permettent
ensemble des manipulations fines de chaînes alphanumériques. Leur usage combiné est fréquent dans le préformatage de zones d'impression.
- Cette instruction ne modifie pas les registres, ce qui la rend non destructive pour l'état du programme. Elle agit uniquement en mémoire, de façon directe. Cela facilite
son intégration dans des séquences de traitement plus larges.
- MVN peut être vue comme un outil de masquage ou de fusion de données numériques. En gardant le low nibble intact, elle permet de préserver des indicateurs ou symboles
tout en mettant à jour la valeur numérique. Elle est donc bien adaptée aux champs composites.
- Comme MVN ne traite qu'une portion des octets, une mauvaise utilisation peut entraîner des incohérences dans les données. Il faut bien s'assurer que les nibbles non
modifiés soient corrects après l'opération. Une bonne compréhension du format des données manipulées est indispensable.
Dernière mise à jour : Mardi, le 22 août 2017