Fibonacci em assembly

Publicado por Leonardo Weslei Diniz 10/06/2008

[ Hits: 16.190 ]

Homepage: http://www.agilesoft.com.br/

Download fibo.s




Cálculo do número de fibonacci.

  



Esconder código-fonte

#By Exterminador3
.data
   msg1:.asciiz "Digite um numero inteiro : "
.text
.globl main
   main:
   li $v0,4
   la $a0,msg1
   syscall
   li $v0,5
   syscall
   add $a0,$v0,$zero
   jal fib   #fibonacc($a0)
   add $a0,$v0,$zero
   li $v0,1
   syscall
   li $v0,10
   syscall
   fib:
   #a0=a
   #if (a==0) return 0;
   #if (a==1) return 1;
   
   #    int x($t1),y($t2),z($t3),i($t4);
   #    for (x=0,y=0,z=1,i=1;i<a;i++) {
   #        x=y+z;
   #        y=z;
   #        z=x;   }   
   
   #    return(x);
   
   addi $t0,$zero,1
   
   beqz $a0,return0
   beq $a0,$t0,return1
   
   
   add $t1,$zero,$zero
   add $t2,$zero,$zero
   addi $t3,$zero,1
   addi $t4,$zero,1
   
   loop:
   bge $t4,$a0,endloop
   add $t1,$t2,$t3
   add $t2,$zero,$t3
   add $t3,$zero,$t1
   addi $t4,$t4,1
   j loop
   
   endloop:
   add $v0,$zero,$t1
   jr $ra
   
   return0:
   add $v0,$zero,$zero
   jr $ra
   
   return1:
   addi $v0,$zero,1
   jr $ra

Scripts recomendados

Intercessão entre dois vetores em Assembly

Escrita de um número em hexadecimal na tela em Assembly Puro para Linux 64 bits (GNU Assembly

Retorna a diferença entre dois vetores em Assemly

Crivo de Eratóstenes Simples para Linux x86 em Assembly Puro (GNU Assembler)

Escrita de um número em octal na tela em Assembly Puro para Linux 64 bits (GNU Assembler)


  

Comentários

Nenhum coment�rio foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts