Вы поскользнулись на обычной ляпе, уважаемый, и, как следствие, увели вопрос не в то русло.
Ляпы у вас, т.к. 1-2 в 2-й ПК-шной системе будет столько F, какой длинны были операнды, если 8 бит, то FF, если 64 бита, то FFFFFFFFFFFFFFFF. Надо следить за типом (длинной) данных и если один операнд у вас 32-х разрядный, а другой 64-разрядный, то чтобы получить 64-х разрядный результат, 32-х разрядный операнд надо расширить до 64-х разрядного, например специальной командой расширения знака, CDQ в данном случае. Это относится и к применению команды SBB.