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: