Vous êtes sur la page 1sur 2

Nom : Neysser Michell BLAS ESPINOZA

ING1 TP 2 :Architecture des ordinateurs - Assembleur

Question 1 :Dresser un tableau avec l’ensemble des variables et registres utilisés et leur contenu pour les 6
premières lignes. Vérifier cela par le gdb.

Registres rax rbx rcx rdx rip

1ère ligne
0 0 0 0 <messageDemandeSaisie>
(25)

2ème ligne
4 0 0 0 <messageDemandeSaisie+5>
(26)

3ème ligne
4 1 0 0 <messageDemandeSaisie+10>
(27)

4ème ligne
4 1 6291754 0 <messageDemandeSaisie+15>
(28)

5ème ligne
4 1 6291754 48 <messageDemandeSaisie+20>
(29)

6ème ligne
4 1 6291754 48 <litCaractere>
(32)

Liste des variables : msg ; msgSaisi ; msgFin ; __bss_start ; _edata ; _end

Question 2 :Ecrire un nouveau code nommé RepeteCharIf qui répète 5 fois l’affichage du caractère saisi en
utilisant une structuration équivalente à if(i<5)

RepeteCharIf:
incl $msg
movl $msg, %eax
cmpl $5, %eax
jne afficheCaractere
Question 3 :Ecrire un nouveau code nommé RepeteCharFor qui répète 5 fois l’affichage du caractère saisi en
utilisant une structuration équivalente à for (int i=0; i<5; i++)

movl $0, %ecx


RepeteCharFor :
cmpl $5, %ecx
jae fin_for
addl $4, %eax
addl $1, %ecx
jmp for
fin_RepeteCharFor :

Vous aimerez peut-être aussi