Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

knoxpt

[Assembly486] Factorial e Potencias

Mensagens Recomendadas

knoxpt

Ola,

Estou a realizar um projecto em que recebe dois numeros passado pelo cliente e realiza diversas operações no entanto no factorial e na Potencia os resultados não estão correctos.

Na Potencia o primeiro numero é a base e o segundo expoente no factorial apenas é feito o factorial do primeiro numero.

Podem ajudar-me ?

Obrigado desde já pela possibilidade.

;Factorial
FAT:
cmp al,'F'
jne potencia
lodsb
cmp  al,'A'
jne  ERROR
;Factorial do 1 numero
mov bx, [num1]
call  proc_fact
add   ax, 30h
mov  [result], ax
jmp fim_operacao
proc_fact:
	 cmp   bl, 1
 jg    do_calculation
 mov   ax, 1
 ret

do_calculation:
   dec   bl
   call  proc_fact
   inc   bl
   mul   bl	    ;ax = al * bl
   jo fim_operacao
   ret
;Potencia
potencia:
cmp al,'P'
jne funcao_S
lodsb
cmp  al, 'O'
jne  ERROR


call  proc_fact
mov eax, [num1]
mov ebx, [num2]
add edx, eax
call  potenc
potenc:
mul
 jo fim_operacao
 sub ebx,1
 cmp ebx,0
  jnz potenc
 mov [result], al
 jmp fim_operacao

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.