logo

Воскресенье 11 Декабрь 2016 (GMT+0300)

Система команд x86
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

SBB

Целочисленное вычитание с заемом

Влияние команды на флаги и форматы команды:

OF

DF

IF

TF

SF

ZF

AF

PF

CF

*

 

 

 

*

*

*

*

*

 

Код

Команда

Описание

Проц.

Пример

1C ib

SBB AL,imm8

AL = AL - imm8 - CF

8086

sbb al,0AAh

1D iw

SBB AX,imm16

AX = AX - imm16 - CF

8086

sbb ax,0FODh

1D id

SBB EAX,imm32

AX = AX - imm32 - CF

Intel386

sbb eax,23456789h

80 /3 ib

SBB r/m8,imm8

r/m8 = r/m8 - imm8 - CF

8086

sbb ah,5

81 /3 iw

SBB r/m16,imm16

r/m16 = r/m16 - imm16 - CF

8086

sbb dx,0DBBh

81 /3 id

SBB r/m32,imm32

r/m32 = r/m32 - imm32 - CF

Intel386

sbb edx,0CAAAAh

83 /3 ib

SBB r/m16,imm8

r/m16 = r/m16 - imm8 - CF

8086

sbb cx,0AAh

83 /3 ib

SBB r/m32,imm8

r/m32 = r/m32 - imm8 - CF

Intel386

sbb ecx,02h

18 /r

SBB r/m8,r8

r/m8 = r/m8 - r8 - CF

8086

sbb [di],ah

19 /r

SBB r/m16,r16

r/m16 = r/m16 - r16 - CF

8086

sbb bx,si

19 /r

SBB r/m32,r32

r/m32 = r/m32 - r32 - CF

Intel386

sbb memory,eax

1A /r

SBB r8,r/m8

r8 = r8 - r/m8 - CF

8086

sbb dl,sum

1B /r

SBB r16,r/m16

r16 = r16 - r/m16 - CF

8086

sbb di,[si+12]

1B /r

SBB r32,r/m32

r32 = r32 - r/m32 - CF

Intel386

sbb ecx,raznost

Операция:

IF (SRC байт и DEST слово или двойное слово)

  THEN DEST = DEST - (SignExtend(SRC) + CF);

  ELSE DEST = DEST - (SRC + CF);

FI;

Описание:

Команда SBB складывает второй операнд (SRC) с флагом CF и вычитает результат из первого операнда (DEST). Результат вычитания присваивается первому операнду (DEST) и флаги устанавливаются соответствующим образом.

Когда однобайтное непосредственное значение вычитается из двухбайтного или четырехбайтного операнда, оно сперва знакорасширяется.

Команда SBB применима как для знаковых, так и для беззнаковых операндов. Флаг CF или OF после выполнения этой команды индицирует наличие заема из старшего значащего бита результата, соответственно, для знаковых или беззнаковых операндов, для знаковых операндов флаг SF индицирует знак результата.

Особые ситуации защищенного режима:

#GP(0), если операнд-назначение находится в сегменте, запрещенном для записи, если используется некорректный эффективный адрес операнда в памяти в сегментах CS, DS, ES, FS, GS или нулевой селектор.
#SS(0) при использовании некорректного эффективного адреса в сегменте SS.
#PF(Код ошибки) при страничной ошибке.
#AC(0) при невыровненной ссылке в память при текущем уровне привилегий равном 3.

Особые ситуации режима реальной адресации:

#GP, если любая часть операнда находится вне пространства эффективных адресов в сегментах CS, DS, ES, FS или GS.
#SS, если любая часть операнда находится вне пространства эффективных адресов в сегменте SS.

Особые ситуации режима V86:

Такие же, как и в режиме реальной адресации.
#PF(Код ошибки) при страничной ошибке.
#AC(0) при невыровненной ссылке в память.


Входит в группу команд: Базовая система команд CPU



Все права защищены © 1997-2011 Перепечатка возможна только по согласованию с владельцем авторских прав. admin@club155.ru

Яндекс.Метрика               Сервер радиолюбителей России - схемы, документация,

 соревнования, дипломы, программы, форумы и многое другое!   схемы новости электроники