Basically, the trick here is to think way back to when you first learned to add and subtract multi-digit numbers on paper. Then just apply the same methods here. Subtract the least significant bytes of each number first, and if the carry bit is set after the subtraction then that means you have to "borrow" from the more-significant byte by decrementing it and then performing the subtraction on those upper bytes.
This same method applies to addition, and as you can tell it's easy to build up routines that will add or subtract numbers of any number of bytes.
(edit) Guess Ken beat me to it
