0% ont trouvé ce document utile (0 vote)
74 vues9 pages

Pile

Transféré par

sow
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
74 vues9 pages

Pile

Transféré par

sow
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Compilation à l'aide de la pile

Dr GOITA
Compilation à l'aide de la pile

Dr GOITA
1 + (2 - 3) * 4
Dr GOITA
li $a0, 1 # Calcul de 1
sub $sp, $sp, 4 # Sauvegarde sur la pile
sw $a0, 0($sp)
li $a0, 2 # Calcul de 2
sub $sp, $sp, 4 # Sauvegarde sur la pile
sw $a0, 0($sp)
li $a0, 3 # Calcul de 3
lw $a1, 0($sp) # Chargement de 2 depuis la pile
add $sp, $sp, 4
sub $a0, $a1, $a0 # Calcul de 2 - 3
Dr GOITA
PILE
sub $sp, $sp, 4 # Sauvegarde sur la pile
sw $a0, 0($sp)
li $a0, 4 # Calcul de 4
lw $a1, 0($sp) # Chargement de 2 - 3 sur la pile
add $sp, $sp, 4
mul $a0, $a1, $a0 # Calcul de (2 - 3) * 4
lw $a1, 0($sp) # Chargement de 1 depuis la pile
add $sp, $sp, 4
add $a0, $a1, $a0 # Calcul de 1 + (2 - 3) * 4
Dr GOITA
Compilation à l'aide de registres

Dr GOITA
1 + (2 - 3) * 4
Dr GOITA
Dr GOITA
4+6
.data
a: .word 4
ba: .word 6
.text
main:
lw $t1,a
lw $t2,ba
add $t3,$t1,$t2
move $a0,$t3
li $v0,1
syscall # make the syscall. Dr GOITA

Vous aimerez peut-être aussi