Execice chapitre 4 Le jeux d’instruction du Processeur ARM V5 Page 3
V1.0 © 2008, Labor d’informatique technique, E. Firouzi
Exercice 3c) Les dépassement de capacité avec les opérations arithmétiques
Chargez les valeurs 10 et 0x7FFFFFFF respectivement dans r1 et r2
r0 = r1 + r2 avec ADDS, comment se comportent les bits d’état et quel est le résultat ?
r0 = r1 + r2 avec QADD, quel est le résultat ?
Exercice 3d) L’instruction de multiplication
r2 = 0x800000001 et r3 = 0x100
r0 = r2 * r3, multiplication 32 bits
[r0,r1] = r2 * r3, multiplication 64 bits signée
[r0,r1] = r2 * r3, multiplication 64 bits non signée
Exercice 3e) L’instruction de multiplication et d’accumulation
r2 = 0x800000001, r3 = 0x100 et r4 = 0x55
r0 = r2 * r3 + r4
r0 = 0 et r1 = 0
Exécutez 2 fois une multiplication signée suivi d’une addition 64 bits
[r0,r1] = [r0,r1] + r2 * r3
Exercice 3f) L’instruction de comparaison
r0 = 10, r1 = 10
Comparez r0 avec r1 (CMP), comment les bits d’état se comportent-ils ?
Comparez r0 avec 9, comment les bits d’état se comportent-ils ?
Comparez r0 avec r1 de façon négative (CMN), comment les bits d’état se comportent-ils ?
Attribuez la valeur -10 à r1 et refaite cette comparaison ?
Exercice 3g) L’instruction de test
Attribuez les valeurs 8 et 1 respectivement à r0 et r1
Testez le bit 3 de r0 (TST), comment les bits d’état se comportent-ils ?
Testez le bit 2 de r0, comment les bits d’état se comportent-ils ?
Testez si le bit 3 de r0 est mis à un (TEQ), comment les bits d’état se comportent-ils ?
Testez si le bit 2 de r0 est mis à un, comment les bits d’état se comportent-ils ?
Exercice 3h) Les instructions logiques
Chargez r1 avec 0x33333333
Masquez le bit de poids plus faible de r1
Exécutez une opération OU entre r1 et 0x0C
Mettre le bit 12 de r1 à 1
Exécutez une opération OU exclusif entre r1 et 0xF0
Changez le bit 7 de r1 (toggle)
Effacez les 4 bits de poids plus faible de r1
Effacez le bit 6 de r1