SAHF - Store AH Register into FLAGS

Clocks
operands 286 386 486 Size Bytes
none 2 3 2 1




SAL/SHL - Shift Arithmetic Left / Shift Logical Left

Clocks
operands 286 386 486 Size Bytes
reg,1 2 3 3 2
mem,1 7 7 4 2-4
reg,CL 5+n 3 3 2
mem,CL 8+n 7 4 2-4
reg,immed8 5+n 3 2 3
mem,immed8 8+n 7 4 3-5




SAR - Shift Arithmetic Right

Clocks
operands 286 386 486 Size Bytes
reg,1 2 3 3 2
mem,1 7 7 4 2-4
reg,CL 5+n 3 3 2
mem,CL 8+n 7 4 2-4
reg,immed8 5+n 3 2 3
mem,immed8 8+n 7 4 3-5




SBB - Subtract with Borrow/Carry

Clocks
operands 286 386 486 Size Bytes
reg,reg 2 2 1 2
mem,reg 7 6 3 2-4
reg,mem 7 7 2 2-4
reg,immed 3 2 1 3-4
mem,immed 7 7 3 3-6
accum,immed 3 2 1 2-3




SCAS - Scan String (Byte, Word or Doubleword)

Clocks
operands 286 386 486 Size Bytes
string 7 7 6 1




SETAE/SETNB - Set if Above or Equal / Set if Not Below (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETB/SETNAE - Set if Below / Set if Not Above or Equal (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETBE/SETNA - Set if Below or Equal / Set if Not Above (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETE/SETZ - Set if Equal / Set if Zero (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETNE/SETNZ - Set if Not Equal / Set if Not Zero (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETL/SETNGE - Set if Less / Set if Not Greater or Equal (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETGE/SETNL - Set if Greater or Equal / Set if Not Less (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETLE/SETNG - Set if Less or Equal / Set if Not greater or Equal (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETG/SETNLE - Set if Greater / Set if Not Less or Equal (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETS - Set if Signed (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETNS - Set if Not Signed (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETC - Set if Carry (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETNC - Set if Not Carry (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETO - Set if Overflow (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETNO - Set if Not Overflow (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETP/SETPE - Set if Parity / Set if Parity Even (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SETNP/SETPO - Set if No Parity / Set if Parity Odd (386+)

Clocks
operands 286 386 486 Size Bytes
reg8 4 3 3
mem8 5 4 3




SGDT - Store Global Descriptor Table (286+ privileged)

Clocks
operands 286 386 486 Size Bytes
mem64 11 9 10 5




SIDT - Store Interrupt Descriptor Table (286+ privileged)

Clocks
operands 286 386 486 Size Bytes
mem64 12 9 10 5




SHR - Shift Logical Right

Clocks
operands 286 386 486 Size Bytes
reg,1 2 3 3 2
mem,1 7 7 4 2-4
reg,CL 5+n 3 3 2
mem,CL 8+n 7 4 2-4
reg,immed8 5+n 3 2 3
mem,immed8 8+n 7 4 3-5




SHLD/SHRD - Double Precision Shift (386+)

Clocks
operands 286 386 486 Size Bytes
reg16,reg16,immed8 3 2 4
reg32,reg32,immed8 3 2 4
mem16,reg16,immed8 7 3 6
mem32,reg32,immed8 7 3 6
reg16,reg16,CL 3 3 3
reg32,reg32,CL 3 3 3
mem16,reg16,CL 7 4 5
mem32,reg32,CL 7 4 5




SLDT - Store Local Descriptor Table (286+ privileged)

Clocks
operands 286 386 486 Size Bytes
reg16 2 2 2 3
mem16 2 2 3 5




SMSW - Store Machine Status Word (286+ privileged)

Clocks
operands 286 386 486 Size Bytes
reg16 2 1 2 3
mem16 3 3 3 5




STC - Set Carry

Clocks
operands 286 386 486 Size Bytes
none 2 2 2 1




STD - Set Direction Flag

Clocks
operands 286 386 486 Size Bytes
none 2 2 2 1




STI - Set Interrupt Flag (Enable Interrupts)

Clocks
operands 286 386 486 Size Bytes
none 2 2 5 1




STOS - Store String (Byte, Word or Doubleword)

Clocks
operands 286 386 486 Size Bytes
dest 3 4 5 1




STR - Store Task Register (286+ privileged)

Clocks
operands 286 386 486 Size Bytes
reg16 2 2 2 3
mem16 3 2 3 5




SUB - Subtract

Clocks
operands 286 386 486 Size Bytes
reg,reg 2 2 1 2
mem,reg 7 6 3 2-4
reg,mem 7 7 2 2-4
reg,immed 3 2 1 3-4
mem,immed 7 7 3 3-6
accum,immed 3 2 1 2-3

[ TOC | Previous | NeXt | Winston's page ]