Instruction redondante
Instruction redondante remplacée par : FP_DEC_TO_ASCII
Cette fonction convertit les données 16 bits désignées par s1 en codes ASCII exprimant la valeur décimale équivalente. Le résultat de la conversion est sauvegardé dans la zone à partir de la zone de 16 bits désignée par d comme indiqué par s2. Le nombre d’octets en nombre décimal est spécifié par s2. (Ceci ne peut pas être réalisé avec des données BCD.)
Entrée
Zone de données de 16 bits qui doivent être converties (source)
Indique le nombre d’octets exprimant les données de destination (codes ASCII)
Sortie
Zone de 16 bits pour sauvegarder les codes ASCII (destination)
Au lieu d’utiliser cette instruction F, nous recommandons d’utiliser l’instruction FP7 correspondante : FP_DEC_TO_ASCII
Lorsqu’un nombre positif est converti, le signe "+" n’est pas converti.
Lorsqu’un nombre négatif est converti, le signe "-" est également converti en code ASCII (code ASCII HEX : 16#2D).
Si la zone désignée par s2 est plus grande que celle nécessaire aux données converties, le code ASCII pour "SPACE" (code ASCII HEX: 16#20) est sauvegardé dans une autre zone.
Les données sont sauvegardées dans le sens de la dernière adresse. La position du code ASCII peut ainsi varier en fonction de la taille de la zone de sauvegarde.
Si le nombre d’octets des codes ASCII après conversion (signe moins inclus) est supérieur au nombre d’octets indiqué par s2, une erreur de fonctionnement apparaît. Vérifiez que le signe est pris en compte lorsque l’objet de la conversion est défini pour s2.
Les illustrations suivantes présentent des conversions de données décimales de 16 bits en codes ASCII.
Lorsqu’un nombre négatif est converti :
Lorsqu’un nombre positif est converti :
Caractères décimaux exprimant un code ASCII HEX :
Caractères décimaux |
Code ASCII HEX |
---|---|
ESPACE - 0 1 2 3 4 5 6 7 8 9 |
16#20 16#2D 16#30 16#31 16#32 16#33 16#34 16#35 16#36 16#37 16#38 16#39 |
Si le nombre d’octets désigné par s2 est supérieur à la zone spécifiée par d.
Si la valeur désignée par s2 est identifiée comme étant "0".
Si le résultat de la conversion est supérieur à la zone désignée par d.
Si le nombre d’octets du résultat de la conversion est supérieur au nombre d’octets indiqué par s2.
Si le nombre d’octets désigné par s2 est supérieur à la zone spécifiée par d.
Si la valeur désignée par s2 est identifiée comme étant "0".
Si le résultat de la conversion est supérieur à la zone désignée par d.
Si le nombre d’octets du résultat de la conversion est supérieur au nombre d’octets indiqué par s2.