Arm variables et acces memoire

Introduction à l ? assembleur ARM variables et accès mémoire GIF- Ordinateurs Structure et Applications Hiver Jean-François Lalonde CRappel cycle d ? instructions Que fait le microprocesseur Lire aller chercher la prochaine instruction Décode décode l ? instruction détermine ce qu ? il y a à faire Exécute exécuter l ? instruction DÉCODE Décoder l ? instruction LIRE FETCH Aller chercher la prochaine instruction EXÉCUTE Exécuter l ? instruction CRappel instructions ? De quoi une instruction est-elle constituée ? ??Opcode ? ou code d ? opération code identi ?ant quelle instruction est e ?ectuée MOV LDR etc ? Paramètres un ou plusieurs dépendent de l ? opcode CL ? assembleur des instructions en mots ? Il est donc possible d ? écrire un programme en binaire si on sait comment représenter les instructions avec des ?? ? et des ?? ? Toutefois le processus est très pénible qui voudrait écrire x AB F EE FFA pour e ?ectuer l ? opération ??a b c ? ? Un assembleur est un programme qui traduit des mots en anglais dans un ?chier texte en instructions ? Exemple a b c MOV R x LDR R R MOV R x LDR R R ADD R R R MOV R x STR R R Adresse de la variable b Lire la variable b dans le registre R Adresse de la variable c Lire la variable c dans le registre R R R R Adresse de la variable c Écrire le registre R dans la variable a CPlan ? Cette semaine ? Déclarer des variables et leur a ?ecter des valeurs ? E ?ectuer des opérations mathématiques et logiques ? Les semaines prochaines ? Gérer la séquence des opérations avec des énoncés conditionnels et des boucles ? Appeler des fonctions diviser une t? che en sous-t? ches ? Gérer les évènements et les exceptions CRevenons à notre exemple d ? addition MOV R x LDR R R MOV R x LDR R R ADD R R R MOV R x STR R R Adresse de la variable b Lire la variable b dans le registre R Adresse de la variable c Lire la variable c dans le registre R R R R Adresse de la variable c Écrire le registre R dans la variable a ? Pas pratique ? d ? avoir à conna? tre les adresses de a b et c ? d ? avoir à utiliser deux instructions MOV puis LDR pour les charger ? Solution ? L ? assembleur nous permet de donner un nom à des adresses mémoires ce sont les constantes et les variables ? constante ne change pas ? variable peut changer CConstantes ?? syntaxe ? Déclarer une constante réserve de l ? espace en ROM nom DCss valeur ? ??nom ? est le nom de la constante ? ??DCss C constante ss indique la taille Par exemple ? DC constante de bits ? DC constante de bits ? ??valeur ? la valeur de la constante ? exemple a

  • 36
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise
Partager
  • Détails
  • Publié le Jui 04, 2022
  • Catégorie Law / Droit
  • Langue French
  • Taille du fichier 58.6kB