Multiplicación y División en Assembler con los Microcontroladores PIC 16F87X

#1
Hola a todos
Alguien me podria enviar ejemplos de Multiplicación y División en Assembler con los Microcontroladores PIC 16F87X.
Gracias :)
 
#2
¿No tienen esas instrucciones?

Me contesto a mi mismo, se ve que no.

¡¡Vale que sea barato pero un micro que no multiplique... que estamos en el sXXI!! (no me he podido aguantar, soy fan del 8052)


Pues ya sabes:
Opción A:
5x7 = sumar cinco veces siete osea que haces un bucle que sume tantas veces el otro número.

Opción B:
Para los casos particulares de multiplicar por 2 o potencia de 2 se rota a la izquierda.

Opción B1:
Un mix; rotar parte y el resto sumar hasta llegar a lo deseado, así para multiplicar por 7 se rota dos veces (multiplicar por 4) y se suma el otro número tres veces.


Todo esto para 8 bits, si es para 16 o coma flotante, te puedes imaginar la fiesta....
 
Última edición:
#3
Division:
Restas sucesivas, incrementas un contador cada vez que pueda realizar la resta y finalizas cuando el residuo sea mayor al dividendo

Ejemplo: 48 dividido 10

48-10= 38, 38 mayor que 10, contador=1 y sigues restando
38-10= 28, 28 mayor que 10, contador=2 y sigues restando
28-10= 18, 18 mayor que 10, contador=3 y sigues restando
18-10= 8 , 8 menor que 10, contador =4 dejas de restar

Resultado 48/10 = 4.8 que para nuestro ejemplo seria contador= 4 y residuo=8

Esta operacion la realice hasta 16 bits y creo que se puede con mas.
 
Arriba