376
Erreurs de traitement d'instruction
Une erreur de traitement d'instruction se produit si des données incorrectes sont
fournies pendant l'exécution d'une instruction ou si une tentative est faite d'exé-
cuter une instruction en dehors d'une tâche. Ici, les données nécessaires au
début de l'instruction sont vérifiées et en conséquence l'instruction n'est pas
exécutée, le drapeau ER (drapeau d'erreur) passe à ON et les drapeaux EQ et N
de l'instruction peuvent être maintenus ou mis à OFF.
Le drapeau ER (drapeau d'erreur) est mis à OFF si l'instruction (sauf les instruc-
tions d'entrée) se termine normalement. Les conditions de mise à ON du
drapeau ER sont fonctions des instructions individuelles. Pour plus de détails,
voir les descriptions des instructions individuelles dans le Manuel de program-
mation des API série CS1 (W340).
Si des erreurs d'instruction sont paramétrées dans le setup de l'API pour arrêter
le fonctionnement, le fonctionnement s'arrête (erreur fatale) et le drapeau d'er-
reur de traitement de l'instruction (A29508) passe à ON. Si une erreur se produit
le drapeau ER passe à ON.
Erreurs d'accès illégal
Les erreurs d'accès illégal indiquent un accès sur une mauvaise zone par l'une
des manières suivantes quand l'adresse indiquant l'opérande d'instruction est
accédée.
a) Lecture ou écriture sur une zone de paramètres.
b) Ecriture dans une zone mémoire non installée (voir Rem.)
c) Ecriture en zone EM spécifiée comme une mémoire de fichier EM.
d) Ecriture dans une zone en lecture seule.
e) La valeur spécifiée dans une adresse indirecte DM/EM en mode BCD
n'est pas en BCD (c-à-d, *D000001 contient #A000).
Le traitement de l'instruction se poursuit et le drapeau d'erreur (drapeau ER)
n'est pas mis à ON si une erreur d'accès se produit, mais le drapeau d'erreur
d'accès (drapeau AER) est mis à ON.
Note Une erreur d'accès se produit dans les cas suivants :
· Lorsqu'une adresse EM dépasse 32767 (exemple : E32768) pour la
banque en cours.
· La banque finale (exemple : C) est spécifiée pour une adresse indirecte
EM en mode BIN et le mot spécifié contient 8000 à FFFFF Hex (exemple :
@EC_00001 contient #8000).
· La banque en cours (example : C) est spécifiée pour une adresse indirecte
EM en mode BIN et le mot spécifié contient 8000 à FFFFF Hex (exemple :
@EC_00001 contient #8000)
· Un registre IR contenant l'adresse mémoire interne d'un bit est utilisé
comme une adresse de mot, ou contenant l'adresse mémoire interne d'un
mot est utilisé comme une adresse de bit.
Si des erreurs d'instruction sont paramétrées dans le setup de l'API pour arrêter
le fonctionnement (erreur fatale), le fonctionnement s'arrête. Le "drapeau d'er-
reur d'accès illégal" (A29510) passe à ON si une erreur d'accès illégal se produit
et le drapeau AER passe à ON.
Note Le drapeau d'erreur d'accès (drapeau AER) n'est pas effacé après l'exécution
d'une tâche. Si des erreurs d'instruction sont paramétrés pour poursuivre le
fonctionnement, ce drapeau peut être surveillé jusqu'à l'instruction END(001)
pour vérifier si une erreur d'accès illégal se produit dans une tâche du
programme (l'état final du drapeau AER après l'exécution complète du
programme utilisateur est surveillé si le drapeau AER est surveillé à partir d'une
console de programmation).
Chapitre
9-3