• Lunes 13 de Mayo de 2024, 04:59

Autor Tema:  Problema Con Rutina  (Leído 1326 veces)

Ingeniero

  • Miembro activo
  • **
  • Mensajes: 57
    • Ver Perfil
Problema Con Rutina
« en: Miércoles 19 de Septiembre de 2007, 14:58 »
0
tengo problemas con esta rutina de multiplicación y no se porque no funciona, los numeros los carga bien pero el producto no lo hace, la suma de las unidades tambien lo hace bien, alguien podria echarme un amano??

Arit_BCD_Operacion ;Realiza la operacion:(10 * Resultado Anterior + W)
   movfw   Arit_Decenas
   movwf   Arit_Multiplicando ;(Resultado Anterior) -->(Multiplicando)
   clrf   Arit_Multiplicador   ; Carga el multiplicador con 10.
   movlw   .10
   movwf   Arit_Multiplicador

Arit_Multiplica_8Bit      ; En principio el resultado es cero.
   clrf   Arit_Producto   ;obtengo un resultado de 16 bit (2 REG de 8bit)
   movlw   .8         ; Carga el contador de 8 bits.
   movwf   Arit_ContadorBits
   movf   Arit_Multiplicando,W   ; Carga el multiplicando.
   
Arit_MultiplicaBit8
   bcf      STATUS,C
   rrf      Arit_Multiplicador,1   ; Va a comprobar el siguiente bit del multiplicador.
   btfsc   STATUS,C      ; Si el bit del multiplicador es "1"
   addwf   Arit_Producto,1   ; suma el resultado parcial anterior más el multiplicando.
   rrf      Arit_Producto,1   ; Desplaza el resultado parcial un lugar hacia la
                     ; derecha, introduciendo un "0" por la izquierda.
   decfsz   Arit_ContadorBits,1   ; ¿Ha multiplicado los 8 bits?
   goto   Arit_MultiplicaBit8   ; Repite la operación.
   movf   Arit_Unidades,W
   addwf   Arit_Producto,1   ; (10 * Resultado Anterior + W)
   return


es una rutina de cogida de la pagina de microchip

gracias

Ingeniero

  • Miembro activo
  • **
  • Mensajes: 57
    • Ver Perfil
Re: Problema Con Rutina
« Respuesta #1 en: Miércoles 19 de Septiembre de 2007, 22:40 »
0
bueno he estado estudiando la funcion y la sentencia rrf no la hace bien ya que no introduce un 1 cuando lo encuentra, alguien sabe como lo puedo solucionar ??

Ingeniero

  • Miembro activo
  • **
  • Mensajes: 57
    • Ver Perfil
Re: Problema Con Rutina
« Respuesta #2 en: Jueves 20 de Septiembre de 2007, 00:20 »
0
Tema solucionado

Gracias a todos aqueyos que me podrian haber brindado su ayuda   :P  :P