Accueil
Démo
Exercices formatifs
Travaux pratiques
Simulation libre
Sessions sauvegardées

TP2: Initiation à l'assembleur ARM (questionnaire)

Questionnaire

Le questionnaire comprend 25 questions et est disponible sur le portail des cours.

Chaque question est reliée à un numéro de ligne dans le code assembleur. De même, le code assembleur indique quelle question pertinente pour chaque ligne. Attention de référer à la bonne ligne quand vous répondez aux questions!

Vous pouvez le modifier le code fourni dans le simulateur à votre guise pour faire des tests et parfaire votre compréhension de l'assembleur ARM, mais assurez-vous de toujours charger sa version originale avant de répondre aux questions. Certaines questions assument que les instructions sont exécutées dans un certain ordre, et modifier cet ordre aurait un impact sur les choix de réponse. Pour ce faire, cliquez sur «Sessions sauvegardées», puis sur «Nouvelle session».

Liens importants

Registre Généraux (User)

Nom Valeur
R0
R1
R2
R3
R4
R5
R6
R7
R8
R9
R10
R11
R12
R13 (sp)
R14 (lr)
R15 (pc)

Registre Généraux (FIQ)

Nom Valeur
R0
R1
R2
R3
R4
R5
R6
R7
R8 FIQ
R9 FIQ
R10 FIQ
R11 FIQ
R12 FIQ
R13 FIQ (sp)
R14 FIQ (lr)
R15 (pc)

Registre Généraux (IRQ)

Nom Valeur
R0
R1
R2
R3
R4
R5
R6
R7
R8
R9
R10
R11
R12
R13 IRQ (sp)
R14 IRQ (lr)
R15 (pc)

Registre Généraux (SVC)

Nom Valeur
R0
R1
R2
R3
R4
R5
R6
R7
R8
R9
R10
R11
R12
R13 SVC (sp)
R14 SVC (lr)
R15 (pc)

État courant

 CPSRSPSR
Negatif (N)
Zero (Z)
Retenue (C)
Dépassement (V)
Ignore IRQ
Ignore FIQ

Configurations

Interruptions

Activer
Type
 cycles
 cycles (premier)
Vitesse d'exécution :  ms

Français

; Section de la table des vecteurs d'interruption SECTION INTVEC B main ; Section du code principal SECTION CODE ; Variables assignées: espace mémoire alloué et valeurs définies variableAssignee ASSIGN32 0xFF132401 tableau ASSIGN32 0x002938AE, 0x003EF391, 0xEA000023 main MOV R0, #0x80 ; Question 1 LDR R1, [R0] LDR R2, variableAssignee ; Question 2 MOV R0, #0x84 ADD R0, R0, #4 ; Question 3 LDR R1, [R0] ADD R0, R0, #2 ; Question 4 LDR R1, [R0] MOV R0, #0x84 LDR R1, [R0] ; Question 5 LDR R1, [R0], #4 LDR R3, [R0], #4 ; Question 6 LDR R3, [R0, #4] MOV R0, #0x84 ; Question 7 LDR R1, [R0] LDR R0, =tableau LDR R2, [R0] LDR R1, =pointeur ; Question 8 LDR R2, [PC, #-96] ; Questions 9, 10, 11, 12 LDR R3, =variableAllouee ; Question 13 STR R0, [R1] ; Question 14 MOV R5, #0x4 LDR R2, [R0], #4 ; Question 15 LDR R2, [R0, R5] ; Questions 16 et 17 LDR R2, [R0, #5] ; Questions 18 et 19 ADD R0, R0, #4 STR R3, [R1] ; Question 20 ;STR R1, [pointeur] ; Questions 21 et 22 LDR R6, =tableau STR R2, [R6] fin B fin ; Question 23 ; Section des données SECTION DATA ; Variables allouées: espace mémoire alloué mais valeurs non-définies pointeur ALLOC32 1 variableAllouee ALLOC32 1 ; Questions 24 et 25 ; Fin du programme END

Instruction courante

Mémoire

Suivre PC
Cycle courant :