Fatorial Assembly MIPS
Publicado por Saulo Gomes (última atualização em 16/09/2015)
[ Hits: 8.185 ]
Homepage: https://about.me/saulo.gomes
Usando o simulador MARS, fiz esse pequeno script para demonstrar como uma operação de fatoração pode ser executada, basta alterar o valor da variável 'num'.
Optei por não utilizar dados de entrada para simplificar o entendimento.
# By saulobr88 # Assembly MIPS fatorial exemplo # .data num: .word 10 one: .word 1 two: .word 2 .text .globl main # main() main: lw $s0, num # Guarda o valor de entrada lw $s1, one # Guarda 1 para comparacao e retorno lw $s2, two # Guarda 2 para comparacao li $s3, 268500992 # Endereço de destino na RAM em decimal lw $t2, one # para ser o retorno padrao lw $t3, num # Valor de controle para o LOOP add $s4, $s0, $s1 # $s4 = 11 # Teste para saber se num eh maior que 1 slt $t0,$s0,$s2 # testa se num < 2 (retorna 1 se num < 2) beq $t0,$zero,LOOP # Se num >= 1, vai fazer outra chamada #sw $t2, ($s3) j LSair LOOP: addi $t4, $t4, 1 slt $t0, $t4, $s4 # Verifica se o valor esta na sua ultima posicao beq $t0, $zero, LSair # Se chegou no final sai mul $t2, $t2, $t4 # t2 começa com 1, e vai incrementando pelo produto j LOOP LSair: sw $t2, ($s3)
Soma dois números lidos da memória
Assembler 8086 - Simples código que mostra horas e minutos em pontos
Inverter uma string, Assembly8086
"Clear Screen" para Linux x86 em Assembly Puro (Nasm - Netwide Assembler)
GAS Inteiro para String (formato binário)
Nenhum comentário foi encontrado.
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Entendendo o que é URI, URL, URN e conhecendo as diferenças entre POST e GET
Como instalar o XFCE4-terminal na sua distribuição Linux e integrá-lo ao sistema
Como instalar o Tilix Terminal no Gnome e usá-lo como menu drop-down ao estilo Quake
Instalando Grub Customizer no Ubuntu 24.04
BUG ao atualizar pacotes libglib2.0-0 libglib2.0-bin libglib2.0-data (0)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (42)
criar chave e repositorio local debian (1)