Chapitre 7. Formules - Evaluateur
REAL(TRUE AND TRUE) = 1
Cette fonction permet de mélanger des nombres réels avec des booléens :
12,5 * REAL(TRUE AND TRUE) = 12,5
12,5 * REAL(TRUE AND FALSE) = 0
REAL('12,5') = 12,5
Cette fonction permet de mélanger des nombres réels avec des chaînes de
caractères :
2*REAL(COPY('Res21';4;2)) = 2*21 = 42
2*REAL(COPY('Res21';4;2) & '5') = 2*215 = 430
ATTENTION :
Les opérateurs de transtypage ne sont pas réentrants.
EXEMPLE :
2*REAL(COPY('135'&STR(2*REAL('12'));2;3)&'6')
induit un résultat faux (Appel réentrant (imbriqué) de la fonction REAL).
2*REAL(COPY('135'&STR(2*12);2;3)&'6') = 7052 est autorisé.
2*REAL(COPY('R135';2;3))+REAL(COPY('TOTO21';5;2))
= 2*135+21=291 est autorisé.
Fonctions de conversion.
• Fonction VXFL (WX vers FLottant) :
Soit les variables WX1=24790 et WX2= 9936 :
Le résultat de la fonction VXFL est un flottant IEEE (1,234500E20).
Sa représentation interne est la suivante :
I3E
1,2345E20
F01
60
Exposant
D6
Mantisse 2
26
Mantisse 1
D0
Argument A
24790
VX1
60
: = VXFL (
D6
Argument B
9936
VX2
26
MSB
;
D0
LSB
MSB
)
LSB
6