Fatorial em assembly
Publicado por Leonardo Weslei Diniz 10/06/2008
[ Hits: 22.102 ]
Homepage: http://www.agilesoft.com.br/
Download fatorial_exterminador3.s
Recursividade em assembly também é possível!
Fatorial em assembly.
#By Exterminador3 .data str1: .asciiz "\n\tDigite um valor : " .text .globl main. #main() main: # Ponto de entrada... li $v0,4 # Pede ao utilizador o valor N la $a0,str1 syscall li $v0,5 syscall addi $a0,$v0,0 # Valor lido fica em a0 jal fact # call fact(n) addi $a0,$v0,0 # Escreve o resultado li $v0,1 syscall li $v0,10 # Fim... syscall fact: sub $sp,$sp,8 # Ajusta a stack para 2 items sw $ra, 4($sp) # Guarda endereço de retorno sw $a0, 0($sp) # Guarda argumento n slt $t0,$a0,1 # testa se n < 1 beq $t0,$zero,L1 # Se n >= 1, vai fazer outra chamada li $v0,1 # Se não for devolve 1 add $sp,$sp,8 # liberta o espaço da stack antes de jr $ra # retornar L1: sub $a0,$a0,1 # Nova chamada: novo argumento (n - 1) jal fact # call fact com (n - 1) # Ponto de retorno da chamada recursiva: lw $a0, 0($sp) # Recupera o argumento passado lw $ra, 4($sp) # Recupera o endereço de retorno add $sp,$sp,8 # Liberta o espaço da stack mul $v0,$a0,$v0 # Calcula n * fact (n - 1) jr $ra # Retorna com o resultado
Escrita de um número em binário na tela em Assembly Puro para Linux x86 (Nasm - Netwide Assembler)
Escrita de um número em binário na tela em Assembly Puro para Linux x86 (GNU Assembly)
"Clear Screen" para Linux 64 bits em Assembly Puro (GNU Assembly)
Inverter uma string, Assembly8086
Retorna a diferença entre dois vetores em Assemly
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (15)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)
Pendrive não formata de jeito nenhum (4)