Background
If the Carry (C) flag holds a value that you want to put into a register, the naïve way is to do something like this:
mov al, 1
jc NotZero
mov al, 0
NotZero:
Use 'sbb'
A more direct way, avoiding the jump, is to use "Subtract with Borrow":
sbb al,a...