Syntaxe
IT{switch} {x{y{z}}} {cond}
|
Paramètres
Nom |
Description |
switch |
Ce paramètre permet d'indiquer la direction d'évaluation la première instruction dans un bloc IT : |
T |
Cette constante permet d'indiquer qu'il faut appliquer la condition à l'instruction. |
E |
Cette constante permet d'indiquer qu'il faut appliquer la condition inverse à l'instruction. C'est en quelque sorte le «ELSE» d'une instruction «IF THEN». |
x |
Ce paramètre permet d'indiquer un commutateur de condition pour la deuxième instruction d'un bloc IT. |
y |
Ce paramètre permet d'indiquer un commutateur de condition pour la troisième instruction d'un bloc IT. |
z |
Ce paramètre permet d'indiquer un commutateur de condition pour la quatrième instruction d'un bloc IT. |
cond |
Ce paramètre permet d'indiquer le code de condition. |
Description
Cette instruction permet d'effectuer un test d'une condition «si». Ainsi,
l'instruction IT rend conditionnel jusqu'à quatre instructions suivant le bloc IT. Les conditions appliqués peuvent toutes êtres les mêmes, ou certaines
d'entre elles peuvent être l'inverse logique des autres (voir paramètre switch).
Remarques
- Les instructions suivantes ne sont pas permissent dans un bloc IT : CBNZ, CBZ, CPS, CPSID, CPSIE, IT, TBB, TBH et SETEND. De plus, une branche ou toute instruction modifiant le PC n'est autorisée que dans un bloc IT s'il s'agit de la dernière instruction du bloc. Aussi, vous ne pouvez pas passer à une instruction dans un bloc IT, sauf si vous revenez d'un gestionnaire d'exceptions. Finalement, vous ne pouvez pas utiliser de directives assembleur dans un bloc IT.
- Cette instruction ne change pas l'état des drapeaux de conditions lorsqu'elle est exécuté.
- Des exceptions peuvent se produire entre une instruction IT et le bloc IT correspondant, ou parfois dans un bloc IT.
Cette exception provoque l'entrée dans le gestionnaire d'exceptions approprié, avec des informations de retour appropriées dans LR et SPSR.
Les instructions dédié à être utilisées en tant que retours d'exception peuvent aussi être utilisées normalement pour revenir de l'exception, et l'exécution du bloc IT reprend normalement. C'est la seule manière qu'une instruction de modification de PC peut se diviser dans une instruction de bloc IT.
- À l'exception des instructions CMP, CMN et TST, les instructions 16 bits affectant normalement les indicateurs de condition ne les affectent pas lorsqu'ils sont utilisés dans un bloc IT.
Dernière mise à jour : Dimanche, le 12 novembre 2017