Donner la signification des bits Z et C lorsqu'ils sont positionnés à 1. Z = 1 : le résultat de l'opération qui a modifié le registre d'état était nul C = 1 : l'opération (sur des nombres non signés) qui a modifié le registre d'état a provoqué une retenue ou un emprunt Expliquez et comparez les mécanismes des branchements conditionnels et des sous programmes Les instructions de branchement (Bcc) permettent à un programme de continuer son déroulement à une adresse qui n'est pas forcément consécutive par modification du PC on peut alors réaliser des boucles. Le mécanisme des sous-programmes permet quant à lui d'exécuter une partie d'un programme à une adresse non consécutive et de revenir à l'instruction suivante à l'appel. Dans le Cortex M3, l'adresse de retour est stockée dans le registre LR et le branchement au sous-programme s'effectue grâce à l'instruction BL (Branch and Link). Donner le numéro et le rôle du registre SP dans le CPU du STM32. Le registre SP (R13) est le pointeur de pile. Il est utilisé pour la gestion de la pile qui est un espace de stockage dynamique en mémoire vive. Lorsque le processeur stocke une donnée en pile (emplile), le pointeur de pile est préalablement décrémenté puis la donnée est écrite à l'adresse correspondant au contenu du registre SP. Lors de la récupération d'une donnée, le processeur lit le contenu mémoire à l'adresse contenue dans le registre SP puis celui-ci est incrémenté de 4 (taille des mots dans la pile) pour restituer l'espace mémoire. Donner deux éléments du registre d’état du processeur et les propriétés auxquels ils sont associés ? Les bits Z et N sont les plus évidents pour la réponse (C et V peuvent aussi convenir). Donner l’algorithme de l’instruction Bcc de branchement conditionnel. Si (cc vraie) alors PC <= PC + d (d = Label - PC) Fin Si Donner les différentes catégories de registres présents dans les contrôleurs de périphériques ainsi que leurs rôles respectifs. Registres de commandes : utilisés pour paramétrer le fonctionnement du périphérique (par exemple pour un compteur/temporisateur choisir le mode compteur). Registres de données : servant à l'échange de données entre le périphérique et le microprocesseur ou la périphérie (ex. : le registre CNT dans un compteur /temporisateur). Registres d'états : regroupent les évènements utiles pour la gestion du périphérique comme par exemple l'indicateur de passage à 0 de CNT dans le registre SR d'un compteur/temporisateur. Lors d'une interruption les registres R1 à R4 et R12 sont sauvegardés dans la pile. Donner le nom de deux des trois autres registres sauvegardés et la raison pour chacun d'eux. Registre PC : permet de retourner à la partie de code interrompue. Registre PSR : permet de conserver le contexte d'exécution du code interrompu. Registre LR : permet de conserver l'adresse de retour dans le cas ou le code interrompu est un sous-programme.