Fatorial Assembly MIPS
Publicado por Saulo Gomes (última atualização em 16/09/2015)
[ Hits: 8.395 ]
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)
Árvore binária de busca em Assembler 8086
Relógio em assembly NES 8 bits (variante do 6502)
Soma dois números lidos da memória
Nenhum comentário foi encontrado.
Atenção a quem posta conteúdo de dicas, scripts e tal (6)
O mínimo que você precisa saber sobre o terminal (parte 2)
O mínimo que você precisa saber sobre o terminal (parte 1)
Como iniciar uma máquina virtual do VirtualBox automaticamente no boot do LUbuntu 18 LTS
Os navegadores "leves" que de leves não tem nada
Liberte-se: Crie um Servidor Proxy na Nuvem para Acessar Conteúdos Bloqueados
Fedora Kinoite 40 — Instalação de drivers NVIDIA e Xorg
Deixando o Opensuse Tumbleweed com KDE bonitão
Estrutura de recuo PHP/Apache para não acessarem arquivos pela URI (barra de endereços)
Escanear a rede com NBTSCAN para descobrir IPs e nomes de computadores
Como instalar ou remover ambientes gráficos facilmente no openSUSE
Inserção de Linha no arquivo /etc/fstab (1)
Inicio de uso do Mint 32bits (1)
Icone da rede fica com sinal em zero porcento após conectado[DUV... (1)