La figure 2 montre le programme DMAPDEMO2, qui illustre l'utilisation de ces procédures. Comme je veux utiliser des noms plus longs pour certains paramètres, j'utilise une interface de prototype de procédure. L'objet du programme est d'accepter deux champs packés à l'exécution comme paramètres, d'appliquer une opération arithmétique demandée paramétriquement aux
Le programme DMAPDEMO2
deux valeurs à l’exécution, puis de stocker le résultat dans un champ caractère contenant le résultat packé. Le premier paramètre transmis à ce programme (PrmFld1) est un champ caractère de 16 octets contenant des données packées. Les deux paramètres suivants (PrmFld1Digits, ParmFld1Decimals) indiquent la précision et le nombre de décimales pour la première valeur de donnée packée. Les trois paramètres suivants (Prm-Fld2, PrmFld2Digits et PrmFld2Deci-mals) représentent la même information que le premier jeu de paramètres mais pour une seconde valeur packée obtenue à l’intérieur d’un champ caractère de 16 octets. Le paramètre suivant (PrmOp) est l’opération que l’on veut effectuer sur ces deux champs packés. A noter que j’ai codé quatre constantes nommées – OpAdd, OpSub, OpMult et OpDiv – à utiliser pour tester la valeur de ce paramètre. Les deux derniers paramètres (Prm-ResultDigits, PrmResultDecimals) définissent la précision et le nombre de décimales souhaitées dans le résultat final. Le programme invoque pCnvPac-kedToThirtyFmt deux fois pour convertir les deux paramètres packés à l’exécution au format Thirty. Une fois que le premier appel à pCnvPackedToThirtyFmt est terminé, la représentation au format Thirty du premier paramètre packé à l’exécution se trouve dans Num1_30_0 et Num1_30_30. De même, après le second appel à pCnvPackedToThirtyFmt, la représentation au format Thirty du deuxième paramètre packé à l’exécution est dans Num2_30_0 et Num2_30_30. Ensuite, le bloc Select/EndSl effectue l’opération demandée sur les deux valeurs au format Thirty. Comme on peut le voir, la procédure arithmétique invoquée dépend de PrmOp. Après le bloc Select/EndSl, on trouve un appel à pCnvPackedFromThirtyFmt, qui reconvertit le résultat en une valeur packée unique.
Même si ce petit programme ne présente pas de technique permet-tant d’effectuer des calculs arithmétiques mixtes (à l’exécution et à la compilation), la technique est simple. Aucune loi ne dit que pCnvPackedToThirtyFmt doit opérer sur un champ packé à l’exécution. On peut aussi utiliser cette procédure pour convertir un champ packé à la compilation au format Thirty. Par exemple, si l’on veut ajouter un champ packé à la compilation à un champ packé à l’exécution, utiliser pCnvPackedToThirtyFmt sur les deux champs packés pour obtenir la représentation au format Thirty, puis appliquer l’une des quatre procédures arithmétiques expliquées ici.
Téléchargez cette ressource
Guide de Cyber-résilience pour Microsoft 365
La violation de votre tenant M365 va au-delà d’un simple incident de cybersécurité. Elle peut entraîner une interruption opérationnelle généralisée, des perturbations commerciales et une exposition de vos données sensibles. Découvrez les méthodes et technologies pour évaluer, comparer et renforcer votre posture de sécurité Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Les 3 prédictions 2026 pour Java
- Infrastructures IT : 5 leviers concrets pour éviter les impasses technologiques
- Top 6 des priorités des DSI en 2026
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Articles les + lus
CES 2026 : l’IA physique et la robotique redéfinissent le futur
Les 3 prédictions 2026 pour Java
Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Face à l’urgence écologique, l’IT doit faire sa révolution
D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
À la une de la chaîne Tech
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 3 prédictions 2026 pour Java
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
- Face à l’urgence écologique, l’IT doit faire sa révolution
- D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
