PIC Microcontoller Subtraction Math Method

sub32: 
        movf    a1,w 
        subwf   b1,f 

        movf    a2,w 
        skpc 
         incfsz a2,w 
          subwf b2,f 

        movf    a3,w 
        skpc 
         incfsz a3,w 
          subwf b3,f 

        movf    a4,w 
        skpc 
         incfsz a4,w 
          subwf b4,f 

Following on from the multi-byte addition routines by Dwayne Reid and Regulus Berdin this works for 32-bit signed/unsigned subtraction. (only tested in Visual Baisc)

sub32   ;OpD=OpD-OpB
        movf    OpB + 0, W
        subwf   OpD + 0, F

        movf    OpB + 1, W
        skpc
         incfsz OpB + 1, W
          subwf OpD + 1, F

        movf    OpB + 2, W
        skpc
         incfsz OpB + 2, W
          subwf OpD + 2, F

        movf    OpB + 3, W
        skpc
         incfsz OpB + 3, W
          subwf OpD + 3, F

Comments: