Specifications
Intel
®
64 and IA-32 Architectures Software Developer’s Manual Documentation Changes 179
Documentation Changes
SBB—Integer Subtraction with Borrow
Opcode Instruction Op/
En
64-Bit
Mode
Compat/
Leg Mode
Description
1C ib SBB AL, imm8 A Valid Valid Subtract with borrow imm8
from AL.
1D iw SBB AX, imm16 A Valid Valid Subtract with borrow
imm16 from AX.
1D id SBB EAX, imm32 A Valid Valid Subtract with borrow
imm32 from EAX.
REX.W + 1D id SBB RAX, imm32 A Valid N.E. Subtract with borrow sign-
extended imm.32 to 64-bits
from RAX.
80 /3 ib SBB r/m8, imm8 B Valid Valid Subtract with borrow imm8
from r/m8.
REX + 80 /3 ib SBB r/m8*, imm8 BValid N.E. Subtract with borrow imm8
from r/m8.
81 /3 iw SBB r/m16,
imm16
B Valid Valid Subtract with borrow
imm16 from r/m16.
81 /3 id SBB r/m32,
imm32
B Valid Valid Subtract with borrow
imm32 from r/m32.
REX.W + 81 /3
id
SBB r/m64,
imm32
B Valid N.E. Subtract with borrow sign-
extended imm32 to 64-bits
from r/m64.
83 /3 ib SBB r/m16, imm8 B Valid Valid Subtract with borrow sign-
extended imm8 from r/m16.
83 /3 ib SBB r/m32, imm8 B Valid Valid Subtract with borrow sign-
extended
imm8 from r/m32.
REX.W + 83 /3
ib
SBB r/m64, imm8 B Valid N.E. Subtract with borrow sign-
extended imm8 from r/m64.
18 /r SBB r/m8, r8 C Valid Valid Subtract with borrow r8
from r/m8.
REX + 18 /r SBB r/m8*, r8 CValid N.E. Subtract with borrow r8
from r/m8.
19 /r SBB r/m16, r16 C Valid Valid Subtract with borrow r16
from r/m16.
19 /r SBB r/m32, r32 C Valid Valid Subtract with borrow r32
from r/m32.
REX.W + 19 /r SBB r/m64, r64 CValid N.E. Subtract with borrow r64
from r/m64.
1A /r SBB r8, r/m8 D Valid Valid Subtract with borrow r/m8
from r8.
REX + 1A /r SBB r8*, r/m8* DValid N.E. Subtract with borrow r/m8
from r8.
1B /r SBB r16, r/m16 D Valid Valid Subtract with borrow r/m16
from r16.