Exercices Comp 1
Exercices Comp 1
Exercices Comp 1
Exercices complémentaires 1
-1-
Systèmes à Microprocesseurs – Electronique 3
Donner le contenu des registres R0, R1, R2 (sous forme de nombres hexadécimaux) après
exécution successive des instructions suivantes :
a) AND R0, R2, R3
b) ORR R1, R2, R3, LSR #4
c) EORS R2, R2, R3, ASR #4
Quels sont les valeurs des indicateurs d’état Z, N, C, V dans ce cas
d) MVNEQ R2, R2
Expliquer précisément à quelle condition s’exécute cette instruction ?
e) ADDEQ R2, R2, #1
Expliquer précisément à quelle condition s’exécute cette instruction ?
Que fait ce programme ?
-2-
Systèmes à Microprocesseurs – Electronique 3
CORRECTION
-3-
Systèmes à Microprocesseurs – Electronique 3
R2 0x8fff0000
start:
@ 1.2
LDR R0, x @ R0 <- x
LDR R1, y @ R1 <- y
LDR R2, a @ R2 <- a
LDR R3, b @ R3 <- b
LDR R4, c @ R4 <- c
LDR R5, d @ R5 <- d
LDR R6, e @ R6 <- e
LDR R7, f @ R7 <- f
LDR R8, g @ R8 <- g
@ 1.3
SUB R9, R0, R1 @ R9 <- x - y
CMP R9, #3 @ x - y < 3 ?
BGE ELSE1 @ saut à l'etiquette ELSE1 si >=
SUB R2, R3, R4 @ a = b -c
MOV R0, #0 @ x = 0
BLT ENDIF1 @ saut à l'instruction
ENDIF1
ENDIF1:
@ Pour finir, on bloque le
processeur dans une boucle infinie vide
wait: b wait
-4-