You can't take 1 from 0, zero is less than one so you borrow a 1 from the sixteens place. So 0x10 - 0x01 = 0x0F. Now you take 0x3 from 0x3 in the sixteens place to get 0x0, and the answer is 0x0F, but remembering the 'b' on the end of subb, which stands for borrow and is the complement of the carry the 0x0F - (borrow==1) = 0x0E
Clear? I guess that might be a bit hard to follow if you've never done hexadecimal arithmetic. Think about it for a really long time and it will come to you. While you're at it try these references so we don't end up rewriting the whole damn reference manual.
https://www.electro-tech-online.com/custompdfs/2009/01/doc0509-1.pdf
https://www.electro-tech-online.com/custompdfs/2009/01/doc4316-1.pdf