| Assembleur 370 |
EDMK |
| Edit and Mark |
Syntaxe
Paramètres
| Nom |
Description |
| D1(L1,B1) |
Ce paramètre permet d'indiquer l'adresse du nombre empaqueté à éditer. D1 : déplacement spécifiant l'offset (en octets) de l'opérande dans la mémoire, L1 : longueur (en octets) du nombre empaqueté que l'on souhaite éditer. Cela spécifie le nombre de chiffres du nombre à éditer, B1 : registre de base, qui contient l'adresse de l'opérande à éditer. Exemple : D1(L1,B1) pourrait pointer vers un nombre empaqueté comme 12345 qui doit être modifié avec un marquage spécifique. |
| D2(B2) |
Ce paramètre permet d'indiquer l'adresse du marquage ou de la valeur utilisée pour marquer. Cette adresse contient un marquage ou une valeur qui sera insérée dans la chaîne de chiffres empaquetés. B2 : registre de base contenant l'adresse de la valeur de marquage. |
Description
Cette instruction permet d'intégrer une chaîne de données à une autre chaîne de données avec un masque.
Remarques
- L'instruction EDMK combine les fonctionnalités de ED (Edit) avec une capacité supplémentaire : elle enregistre l'adresse du premier chiffre significatif dans le
registre général 1. Cela permet de localiser rapidement la position du premier chiffre non nul dans le résultat édité. Cette fonctionnalité est particulièrement utile
pour des traitements ultérieurs, comme l'alignement ou l'analyse de la sortie.
- Le premier opérande D1(L1,B1) contient le masque d'édition, une chaîne de caractères définissant le format de sortie souhaité. Ce masque peut inclure des caractères
tels que des espaces (X'40'), des zéros de substitution (X'20'), des virgules (X'6B') ou des points décimaux (X'4B'). Le masque détermine comment les chiffres du second
opérande seront insérés dans la sortie.
- Le second opérande D2(B2) pointe vers la donnée numérique à éditer, généralement entreposée en format décimal empaqueté (packed decimal). Les chiffres de cette donnée
sont insérés dans le masque d'édition, remplaçant les caractères de substitution selon les règles définies. La combinaison des deux opérandes permet de produire une
sortie formatée lisible.
- Une caractéristique distinctive de EDMK est la gestion du "marquage" : lorsque le premier chiffre significatif est inséré dans la sortie, l'adresse correspondante
est entreposée dans le registre 1. Cela facilite le repérage de la position du premier chiffre significatif, ce qui est utile pour des opérations telles que l'alignement
ou l'analyse de la sortie.
- Le masque d'édition peut inclure des caractères spéciaux pour gérer les signes ou les annotations comptables. Par exemple, X'60' représente un signe moins, X'C4C2'
pour "DB" (débit) et X'C3D9' pour "CR" (crédit). Ces éléments sont insérés dans la sortie en fonction du signe de la donnée éditée, permettant une représentation conforme
aux normes comptables.
- La conception du masque d'édition est cruciale : le nombre de caractères de substitution (X'20' et X'21') doit correspondre au nombre de chiffres de la donnée à
éditer. Une correspondance incorrecte peut entraîner des résultats imprévisibles ou des erreurs d'exécution. Il est donc essentiel de s'assurer que le masque est correctement
dimensionné pour la donnée cible.
- EDMK est particulièrement utile dans les applications nécessitant une mise en forme précise des données numériques, comme la génération de rapports financiers ou
l'impression de chèques. Elle permet de produire des sorties alignées et formatées selon des spécifications strictes, facilitant ainsi la lecture et l'interprétation
des données.
- Bien que EDMK soit une instruction puissante pour le formatage des données, elle nécessite une compréhension approfondie du format des données et du masque
d'édition. Une utilisation incorrecte peut entraîner des erreurs difficiles à diagnostiquer. Il est donc recommandé de tester soigneusement les masques d'édition et de
valider les résultats obtenus.
Dernière mise à jour : Mardi, le 22 août 2017