Almo sujets td tp 1 Sorbonne-Université Sciences Architecture Logicielle et Matérielle des Ordinateurs Travaux Dirigés Travaux Pratiques licence informatique LU IN Alain Greiner Quentin Meunier Franck Wajsbürt Pirouz Bazargan Emmanuelle Encrenaz C CALMO T

Sorbonne-Université Sciences Architecture Logicielle et Matérielle des Ordinateurs Travaux Dirigés Travaux Pratiques licence informatique LU IN Alain Greiner Quentin Meunier Franck Wajsbürt Pirouz Bazargan Emmanuelle Encrenaz C CALMO TD n - Assembleur MIPS Instructions de base Préambule Ce TD permet de se familiariser avec le jeu d'instructions du processeur MIPS pour écrire des premiers programmes en assembleur Pour en pro ?ter pleinement il est conseillé d'avoir lu auparavant le document Architecture externe MIPS et il faut impérativement se référer au document Langage d'assemblage MIPS Étude d'une instruction simple Les registres et du processeur registres sources contiennent des valeurs connues On souhaite ranger dans le registre registre destination le résultat de la somme des valeurs contenues dans les registres et Quelle instruction faut-il utiliser Quels registres sont modi ?és par l'exécution de cette instruction Quelle est la di ?érence entre les instructions add et addu Chargement d'une valeur immédiate dans un registre La plupart des instructions utilisent des valeurs contenues dans des registres comme opérandes pour les opérations arithmétiques et logiques Écrire le code permettant de charger la valeur x dans le registre Même question avec la valeur x à charger dans le registre Même question avec la valeur - à charger dans le registre Chargement dans un registre d'une valeur stockée en mémoire Les données d'un programme sont en général des valeurs stockées dans la mémoire Ainsi tout traitement portant sur l'une de ces valeurs nécessite de charger cette valeur dans un registre Écrire les directives assembleur permettant de réserver en mémoire mots de bits aux adresses var et var et d'initialiser ces mots avec les valeurs hexadécimales x et x Écrire les instructions permettant de charger le contenu du mot d'adresse var dans le registre l'adresse var étant placée dans le registre Addition de deux valeurs stockées en mémoire Écrire un programme permettant de faire la somme entre deux nombres rangés en mémoire aux adresses var et var et de ranger le résultat en mémoire à l'adresse var La première instruction du programme point d'entrée doit avoir le label main et le programme doit se terminer par l'appel système exit Itération Somme de à Écrire en utilisant une boucle le programme assembleur qui stocke dans le registre la somme des nombres de à en utilisant trois registres On utilisera l'appel système exit pour terminer le programme Comment peut-on optimiser la boucle pour ne faire intervenir que deux registres Dernière modi ?cation le sept à ALMO TP n - Simulateur MARS Préambule Ce premier TP a pour but de vous familiariser avec l'outil MARS que vous utiliserez dans les trois premiers TP de l'UE ALMO Le simulateur MARS modélise un petit système composé d'un processeur MIPS et d'une mémoire sans faire d'hypothèse sur l'architecture interne du processeur qui est considéré comme une bo? te noire capable d'exécuter séquentiellement instruction par instruction un code binaire stocké en mémoire MARS fait l'hypothèse qu'un programme utilise trois segments en mémoire Le segment text qui contient le code binaire exécutable du programme c'est-à-dire les

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