Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

07/03/2007 #1


Multiplicacion en 16f84
Hola necesito una ayudita con este programa, necesito multiplicar 2 numeros

LIST P=16F84
#INCLUDE<P16F84.INC>


CONTA EQU 0EH
I EQU 0CH
MULT EQU 0DH
CANT1 EQU 0FH
CANT2 EQU 010H

ORG 00H
GOTO INICIO


CONFIG BSF STATUS,RP0
CLRF TRISB
CLRF TRISA
BCF STATUS,RP0
RETURN


INICIO CALL CONFIG
CLRF MULT
MOVLW .6
MOVWF CANT1
MOVLW .2
MOVWF CANT2

SALTO MOVF I,W
ADDWF MULT
MOVLW .1
ADDWF I
DECFSZ CONTA
GOTO SALTO
MOVF MULT,W
MOVWF PORTB
END
07/03/2007 #2


Saludos adm.

Realmente el programa no hace la multiplicación de los dos números. La multiplicación es una suma repetitiva (ej. 10*2= 10+10= 20), esta es la lógica que tiénes que se debe usar para hacer un programa de multiplicación. Aunque parece que ya tenías la noción de eso, pero no sabías concretamente como hacerlo.

En tu programa cargas los dos números que se multiplicarán a CANT1 y CANT2 (¿Es correcto?), luego pasa a la rutina SALTO donde pasas el valor de I a W, pero I no habia sido cambiado anteriormente, por lo tanto I=0 y W=0. Luego sumas el contenido de W a MULT, que también no habia sido modificado despues de la instrucción CLRF MULT, entonces el resultado es la suma 0+0=0. Despues, cargas W a 1, y lo sumas con I, el cual es cero, entonces el resultado es 1. En la instrucción DECFSZ CONTA se da el salto a la instrucción MOVF MULT,W, debido a que CONTA también no habia sido modificado, CONTA=0; por tanto se cumplía la condición de salto.

Espero que ahora puedas ver con claridad los errores de tu programa.

Buen dia...
15/03/2007 #3


canales dijo:
En tu programa cargas los dos números que se multiplicarán a CANT1 y CANT2 (¿Es correcto?)
Si es correcto, gracias por la ayuda teniamuchos errores...
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.