23- les autres fonctions


TRUNC: Lorsque la valeur d'une variable est le résultat d'un calcul, comme V0001=V0002*(100/16384),le résultat de l'opération n'est pas arrondi dans Flight Simulator pour être pris en compte par une gauge, mais "tronqué", c'est à dire écourté: 15,780 ne sera pas pris en compte comme 15,8 ni comme 16, mais comme 15. Quand ce mode de prise en compte est obligatoire, on utilise le paramètre TRUNC. Par exemple, V0003=TRUNC L0

Cette fonction est particulièrement importante quand il s'agit d'afficher une valeur avec des afficheurs à 7 segments.

 

ROUND: à l'inverse de TRUNC, cette fonction arrondit la valeur d'un calcul à une valeur entière, sans décimales.

 

NOT: change la valeur 0 ou 1 d'une variable booléenne, en lui donnant la valeur inverse de ce qui est indiqué dans le paramètre 1

 

FROM BCD convertit en valeur décimale une valeur en binaire. TO BCD fait l'inverse.

 

ROTATE: exécute des incrémentations ou des décrémentations cycliques. Permet de simplifier la programmation des encodeurs.

 

TOGGLE: modifie à 1 puis à 0, ou inversement, la valeur d'un bit d'une variable.

 

ABS: renvoie à une valeur absolue.

 

LIMIT: incrémente une variable en fonction de certaines limites . Exemple si on veut écrire

{

IF &ALTITUDE > 500

{

&ALTITUDE = 500

}

IF &ALTITUDE < 0

{

&ALTITUDE = 0

}

 

on peut plus simplement écrire:

 

 

&ALTITUDE = LIMIT 0, 500

 

DIV: calcule le résultat entier d'une division entre deux nombres

 

Note: les variables ont toujours une valeur numérique, exprimée soit en décimal, soit en hexadécimal. Et comme pour toute valeur numérique, il est possible d'y appliquer des formules mathématiques. On peut ainsi multiplier une variable par une autre (*) ou la diviser par une autre ou par un nombre fixe (/) , additionner deux variables (+) , etc...


CHAPITRE SUIVANT: 24- tester du code, SIOC Monitor