Sous-programmes et commandes d'interruption
Précautions
Drapeaux
Dans l'exemple suivant, le contenu DM 0010 à DM 0013 est recopié sur SR 290
à SR 293, le contenu DM 0020 à DM 0023 sur SR 294 à SR 297 et le sous-pro-
gramme 10 est appelé et exécuté. A l'achèvement du sous-programme, le
contenu SR 294 à SR 297 est recopié de nouveau sur DM 0020 à DM 0023.
Rem.: 1.Les sous-programmes macro sont programmés comme tous les autres,
sauf pour le contenu SR 290 à SR 297, transféré des mots d'entrée et de
sortie indiqués.
2.On peut utiliser non seulement les mots d'E/S externes, mais aussi les mots
d'E/S internes pour I1 et O1.
3.On peut utiliser SR 290 à SR 297 comme bits de travail lorsqu'ils ne servent
pas aux programmes macro.
4.On peut effectuer l'imbrication des instructions MCRO(99) mais s'assurer
de maintenir les données d'E/S vu que les instructions utilisent les mêmes 8
mots d'E/S (SR 290 à SR 297).
On peut utiliser MCRO(99) seulement dans les sections de programme que l'on
peut inscrire à l'aide de max. 4 mots d'entrée consécutifs et/ou de max. 4 mots
de sortie consécutifs. Il est donc nécessaire de considérer uniment la concep-
tion du système et des programmes afin de profiter au mieux de la programma-
tion macro.
S'assurer que les mots d'entrée et de sortie correspondent correctement aux
mots d'entrée et de sortie macro.
ER:
Un numéro de sous-programme indiqué n'existe pas.
Une opérande a dépassé la limite d'une zone de données.
Le mot d'adressage indirect DM n'existe pas. (Le contenu du mot DM
n'est pas BCD ou la zone DM a été dépassée.)
Un sous-programme a effectué un auto-appel.
Un sous-programme actif a été appelé.
Programme principal
MCRO(99)
10
DM 0010
DM 0020
Programme principal
SBN(92)
10
-
Sous
programme
RET(93)
END(01)
Chapitre 5-23
291