Справочник по языку Ассемблера IBM PC

       

SBB


(SuBtract with Borrow)

Вычитание с заемом

 

Схема команды:  sbb операнд_1,операнд_2 

Назначение: целочисленное вычитание с учетом результата предыдущего вычитания командами sbb и sub (по состоянию флага переноса cf).


Алгоритм работы:

выполнить сложение операнд_2=операнд_2+(cf);

выполнить вычитание операнд_1=операнд_1-операнд_2;

Состояние флагов после выполнения команды:



11 07 06 04 02 00
OF SF ZF AF PF CF
r r r r r

Применение:


Команда sbb используется для выполнения вычитания старших частей значений многобайтных операндов с учетом возможного предыдущего заема при вычитании младших частей значений этих операндов.

;выполнить вычитание 64-битных значений: vich_1-vich_2 vich_1  dd      2 dup (0) vich_2  dd      2 dup (0) rez     dd      2 dup (0) ... ;ввести значения в поля vich_1 и vich_2: ;младший байт по младшему адресу ...         mov     eax,vich_1         sub     eax,vich_2      ;вычесть младшие половинки чисел         mov     rez,eax ;младшая часть результата         mov     eax,vich_1+4         sbb     eax,vich_2+4    ;вычесть старшие половинки чисел         mov     rez+4,eax       ;старшая часть результата         

См. также: урок 8, Приложение 7 и команды



Содержание раздела