buenas tardes
estoyu realizando unprograma el cula suma multiplica y resta pero al realizar la resta el programa me arrioja resultados erroneos nose qeu estoy haciendo mal les recominendo si alguien sabe.......gracias..y por otro lado alguno de ustedes sabe como hacer un voltimetro con el 18f4550 se los recomindo si lo tienen graciassss
este el programa de la suma laresta y la multiplicacion
#include <p18f4550.inc>
salvar equ 0x0
operando1 equ 0x1
operando2 equ 0x2
org 0
goto continue
org 20
continue
movlw 0fh
movwf ADCON1
clrf PORTB
movlw 0ffh
movwf TRISB
movwf TRISE
clrf TRISD
repita
movf PORTB,w
movwf salvar
movlw 0fh
andwf salvar,w
movwf operando1
movf salvar,w
movlw 0f0h
andwf salvar,f
swapf salvar,f
movff salvar,operando2
movff PORTE,salvar
movlw b'00000011'
andwf salvar,f
movlw 00h
xorwf salvar,w
btfsc STATUS,Z
call sumar
movlw 01h
xorwf salvar,w
btfsc STATUS,Z
call resta
movlw 02h
xorwf salvar,w
btfss STATUS,Z
goto repita
multiplicacion
movf operando1,w
mulwf operando2
movff PRODL,PORTD
goto repita
sumar
movf operando2,w
addwf operando1,w
movwf PORTD
return
resta
movf operando2,w
subwf operando1,w
movwf PORTD
goto repita
end