Autor Tema: SOS ...ayuda con proyecto en MPLAB  (Leído 1989 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado nightmare_shadow

  • PIC10
  • *
  • Mensajes: 1
SOS ...ayuda con proyecto en MPLAB
« en: 12 de Mayo de 2005, 21:04:00 »
JEJEJE buenas ondas con todos

El sgte mensaje es para que me den una manito para mejorar mi programa de division el problema es que opera pero con numeros menores a 1000 en hexadecimal ...cuando el detalle es que el trabajo que me han pedido es hacer division de 16 bits es decir numeros que esten proximos a los 65000 ....por ejemplo 65000 entre 650 ...he tratado de muchas maneras pero no me sale Helado

De antemando les agradecere la ayuda prestada px ...aca dejo mi programa de division que solo opera para numeros menores a 1000 en hex.


   list p=16f84a
   __CONFIG _CP_OFF &_WDT_OFF &_PWRTE_ON &_XT_OSC
   
   include <p16f84a.inc>

dividendo1a EQU 0x0c
divisor2a   EQU 0x0d
cociente3a  EQU 0x0e
residuo4a   EQU 0x0f
dividendo1b EQU 0x10
divisor2b   EQU 0x11
cociente3b  EQU 0x12
residuo4b   EQU 0x13

   org 0x00
   goto inicio

   org 0x05

inicio

;FDE8 = 65000
;212 = 530
;2BC = 700
;28A  = 650

   clrf dividendo1a
   clrf dividendo1b
   clrf divisor2a
   clrf divisor2b
    clrf residuo4a
    clrf residuo4b      
    clrf cociente3a
      clrf cociente3b

   movlw 0xe8
   movwf dividendo1a
    movlw 0xfd
   movwf dividendo1b
    movlw 0x8a
   movwf divisor2a
    movlw 0x02
   movwf divisor2b

bucle
   
    movf  divisor2a,0
    subwf dividendo1a,1
    ;rlf dividendo1b,1  
    ;btfsc STATUS,C
    ;rlf dividendo1b,1  

    movf  divisor2b,0
    bcf STATUS,C
    subwf dividendo1b,1


    btfss STATUS,0
   
    goto  salida
     

    movlw 0x01
    bcf   STATUS,C
    addwf cociente3a,1
    rlf   cociente3b,1


    movf  dividendo1a,0
    movwf residuo4a
   
    movf  dividendo1b,0
    movwf residuo4b

    goto  bucle
   
salida

    goto $
   END


please una ayudita Angelito

Desconectado antoniof

  • Moderadores
  • PIC24F
  • *****
  • Mensajes: 729
RE: SOS ...ayuda con proyecto en MPLAB
« Respuesta #1 en: 13 de Mayo de 2005, 15:40:00 »
Buenas.

Como casi toda en esta vida, lo que uno piensa hacer por primera vez, ya está hecho. Aqui te paso un enlace con subrrutinas matemáticas de doble precisión (16bits), con signo, sin signo, multiplicar, dividir, restar, etc, etc..

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en011000