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

Temas similares

26/04/2007 #1


prolema de multiplicacion en 16F877A
necesito multiplicar 19 por 8, ahora podria crear un bucle k me sume las 8 veces 19, pero me tomaria mas de 3 pasos realizar la multiplicacion, y es eso lo que necesito, hacerla en 3 pasos, si alguine me puede ayudar se los agradeceria....

saludos...
26/04/2007 #2


multiplicar por 8 es el equivalente a recorrer 3 veces un número hacia la izquierda, así que para hacerlo en tres pasos debes hacer algo así

Código:
movlw	d'19'
movwf	CUENTA
rlf	CUENTA,f
rlf	CUENTA,f
rlf	CUENTA,f
esto es, primero cargas el numero 19 a W y luego lo mandas a una variable, en este caso CUENTA, posteriormente con la instruccion rlf se rota el número hacia la izquierda, eso es el equivalente de multiplicarlo por dos, despues al volver a rotar es como si se multiplicara por 4, al final se rota 3 veces, eso es lo mismo a multiplicar por 8
26/04/2007 #3


cierto. Nadamas que seria bueno borrar el carry antes del programa
Código:
movlw   d'19'
movwf   CUENTA
clrf  STATUS,C
rlf   CUENTA,f
rlf   CUENTA,f
rlf   CUENTA,f
27/04/2007 #4


se me había pasado ese detalle, gracias por la corrección
27/04/2007 #5


gracias viejos, se pasaron.....

agradecido, martinto....
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.