Pular para o conteúdo

Fibonacci em assembly

Cálculo do número de fibonacci.
Leonardo Weslei Diniz leonardoweslei
Hits: 16.497 Categoria: C/C++ Subcategoria: Assembly
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Cálculo do número de fibonacci.
Download fibo.s Enviar nova versão

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

"Clear Screen" para Linux x86 em Assembly Puro (Nasm - Netwide Assembler)

Retorna a diferença entre dois vetores em Assemly

Escrita de um número em binário na tela em Assembly Puro para Linux x86 (GNU Assembly)

Escrita de um número em hexadecimal na tela em Assembly Puro para Linux x86 (Nasm - Netwide Assemble

ToUpperCase em Assembler 8086

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.