:: Enseignements :: ESIPE :: E3INFO :: 2007-2008 :: Architecture des ordinateurs ::
[LOGO]

Assembleur MIPS


Dans cette séance de travaux dirigés, nous allons étudier les bases de l'assembleur MIPS

Exercice 1 - Affectations C en MIPS

Traduire en assembleur MIPS les affectations C suivantes (on suppose que les entiers i , j , k , r correspondent respectivement aux registres t0 , t1 , t2 et v0 ):

  1. r = i + j - k
  2. r = i - j + k
  3. r = i - (j + k)
  4. r = 4 + i
  5. r = 4 * i
  6. r = 3 * i
  7. r = (i + j)/8 + k%2

Exercice 2 - Mon 1er programme MIPS

Ecrire un programme MIPS plaçant dans le registre v0 le n-ième bit (à droite) du registre a0 , l'entier n étant une valeur contenue dans le registre a1 .

Exercice 3 - Calcul du determinant

Ecrire une suite d'instructions MIPS mettant à l'adresse Ad le déterminant ad - bc de la matrice qui suit dont les éléments (entiers de 32 bits) sont rangés dans la mémoire à partir d'une adresse Am .

--  --
|a  b|
|c  d|
--  --

Exercice 4 - Somme des éléments d'un tableau

Ecrire une suite d'instructions MIPS calculant la somme des éléments d'un tableau d'entiers rangé à l'adresse tab de la mémoire; le premier élément indique la taille du tableau.