Intel 253666-024US Manual do Utilizador

Consulte online ou descarregue Manual do Utilizador para Hardware Intel 253666-024US. Intel 253666-024US User Manual Manual do Utilizador

  • Descarregar
  • Adicionar aos meus manuais
  • Imprimir
  • Página
    / 760
  • Índice
  • MARCADORES
  • Avaliado. / 5. Com base em avaliações de clientes
Vista de página 0
Intel® 64 and IA-32 Architectures
Software Developer’s Manual
Volume 2A:
Instruction Set Reference, A-M
NOTE: The Intel 64 and IA-32 Architectures Software Developer's Manual
consists of five volumes: Basic Architecture, Order Number 253665;
Instruction Set Reference A-M, Order Number 253666; Instruction Set
Reference N-Z, Order Number 253667; System Programming Guide,
Part 1, Order Number 253668; System Programming Guide, Part 2,
Order Number 253669. Refer to all five volumes when evaluating your
design needs.
Order Number: 253666-024US
August 2007
Vista de página 0
1 2 3 4 5 6 ... 759 760

Resumo do Conteúdo

Página 1 - Software Developer’s Manual

Intel® 64 and IA-32 ArchitecturesSoftware Developer’s ManualVolume 2A:Instruction Set Reference, A-MNOTE: The Intel 64 and IA-32 Architectures Softwar

Página 2

CONTENTSxVol. 2APAGEPAVGB/PAVGW—Average Packed Integers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-61PCMPEQB/PCMPEQ

Página 3

3-54 Vol. 2A AND—Logical ANDINSTRUCTION SET REFERENCE, A-MDescriptionPerforms a bitwise AND operation on the destination (first) and source (second) o

Página 4

Vol. 2A 3-55INSTRUCTION SET REFERENCE, A-MAND—Logical AND#UD If the LOCK prefix is used but the destination is not a memory operand.Virtual-8086 Mode

Página 5 - Vol. 2A v

3-56 Vol. 2A ANDPD—Bitwise Logical AND of Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MANDPD—Bitwise Logical AND of Pack

Página 6

Vol. 2A 3-57INSTRUCTION SET REFERENCE, A-MANDPD—Bitwise Logical AND of Packed Double-Precision Floating-Point ValuesReal-Address Mode Exceptions#GP(0)

Página 7 - Vol. 2A vii

3-58 Vol. 2A ANDPS—Bitwise Logical AND of Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MANDPS—Bitwise Logical AND of Pack

Página 8

Vol. 2A 3-59INSTRUCTION SET REFERENCE, A-MANDPS—Bitwise Logical AND of Packed Single-Precision Floating-Point ValuesReal-Address Mode Exceptions#GP(0)

Página 9 - Vol. 2A ix

3-60 Vol. 2A ANDNPD—Bitwise Logical AND NOT of Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MANDNPD—Bitwise Logical AND N

Página 10

Vol. 2A 3-61INSTRUCTION SET REFERENCE, A-MANDNPD—Bitwise Logical AND NOT of Packed Double-Precision Floating-Point Values#UD If CR0.EM[bit 2] = 1.If

Página 11 - Vol. 2A xi

3-62 Vol. 2A ANDNPS—Bitwise Logical AND NOT of Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MANDNPS—Bitwise Logical AND N

Página 12

Vol. 2A 3-63INSTRUCTION SET REFERENCE, A-MANDNPS—Bitwise Logical AND NOT of Packed Single-Precision Floating-Point ValuesReal-Address Mode Exceptions#

Página 13 - Vol. 2A xiii

Vol. 2A xiCONTENTSPAGEPUSH—Push Word, Doubleword or Quadword Onto the Stack . . . . . . . . . . . . . . . . . . . 4-217PUSHA/PUSHAD—Push All General-P

Página 14

3-64 Vol. 2A ARPL—Adjust RPL Field of Segment SelectorINSTRUCTION SET REFERENCE, A-MARPL—Adjust RPL Field of Segment SelectorDescriptionCompares the R

Página 15 - Vol. 2A xv

Vol. 2A 3-65INSTRUCTION SET REFERENCE, A-MARPL—Adjust RPL Field of Segment SelectorELSEZF ← 0;FI;FI;Flags AffectedThe ZF flag is set to 1 if the RPL f

Página 16

3-66 Vol. 2A BOUND—Check Array Index Against BoundsINSTRUCTION SET REFERENCE, A-MBOUND—Check Array Index Against BoundsDescriptionBOUND determines if

Página 17 - Vol. 2A xvii

Vol. 2A 3-67INSTRUCTION SET REFERENCE, A-MBOUND—Check Array Index Against BoundsFlags AffectedNone.Protected Mode Exceptions#BR If the bounds test fai

Página 18

3-68 Vol. 2A BOUND—Check Array Index Against BoundsINSTRUCTION SET REFERENCE, A-MCompatibility Mode ExceptionsSame exceptions as in protected mode.64-

Página 19 - Vol. 2A xix

Vol. 2A 3-69INSTRUCTION SET REFERENCE, A-MBSF—Bit Scan ForwardBSF—Bit Scan ForwardDescriptionSearches the source operand (second operand) for the leas

Página 20 - CONTENTS

3-70 Vol. 2A BSF—Bit Scan ForwardINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#GP(0) If a memory operand effective address is outside the CS

Página 21 - ABOUT THIS MANUAL

Vol. 2A 3-71INSTRUCTION SET REFERENCE, A-MBSR—Bit Scan ReverseBSR—Bit Scan ReverseDescriptionSearches the source operand (second operand) for the most

Página 22 - 1-2 Vol. 2A

3-72 Vol. 2A BSR—Bit Scan ReverseINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#GP(0) If a memory operand effective address is outside the CS

Página 23 - 1.3 NOTATIONAL CONVENTIONS

Vol. 2A 3-73INSTRUCTION SET REFERENCE, A-MBSWAP—Byte SwapBSWAP—Byte SwapDescriptionReverses the byte order of a 32-bit or 64-bit (destination) registe

Página 24 - 1.3.1 Bit and Byte Order

CONTENTSxiiVol. 2APAGESYSCALL—Fast System Call. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Página 25

3-74 Vol. 2A BSWAP—Byte SwapINSTRUCTION SET REFERENCE, A-MDEST[15:8] ← TEMP[23:16];DEST[23:16] ← TEMP[15:8];DEST[31:24] ← TEMP[7:0];FI;Flags AffectedN

Página 26 - 1.3.5 Segmented Addressing

Vol. 2A 3-75INSTRUCTION SET REFERENCE, A-MBT—Bit TestBT—Bit TestDescriptionSelects the bit in a bit string (specified with the first operand, called t

Página 27 - 1.3.6 Exceptions

3-76 Vol. 2A BT—Bit TestINSTRUCTION SET REFERENCE, A-MOr, it may access 2 bytes starting from the memory address for a 16-bit operand, using this rela

Página 28 - 1.4 RELATED LITERATURE

Vol. 2A 3-77INSTRUCTION SET REFERENCE, A-MBT—Bit TestVirtual-8086 Mode Exceptions#GP(0) If a memory operand effective address is outside the CS, DS, E

Página 29 - Vol. 2A 1-9

3-78 Vol. 2A BTC—Bit Test and ComplementINSTRUCTION SET REFERENCE, A-MBTC—Bit Test and ComplementDescriptionSelects the bit in a bit string (specified

Página 30 - 1-10 Vol. 2A

Vol. 2A 3-79INSTRUCTION SET REFERENCE, A-MBTC—Bit Test and Complementprefix in the form of REX.W promotes operation to 64 bits. See the summary chart

Página 31 - INSTRUCTION FORMAT

3-80 Vol. 2A BTC—Bit Test and ComplementINSTRUCTION SET REFERENCE, A-M#AC(0) If alignment checking is enabled and an unaligned memory reference is mad

Página 32 - • Group 4

Vol. 2A 3-81INSTRUCTION SET REFERENCE, A-MBTR—Bit Test and ResetBTR—Bit Test and ResetDESCRIPTIONSelects the bit in a bit string (specified with the f

Página 33 - 2.1.2 Opcodes

3-82 Vol. 2A BTR—Bit Test and ResetINSTRUCTION SET REFERENCE, A-Mprefix in the form of REX.W promotes operation to 64 bits. See the summary chart at t

Página 34 - 2.1.3 ModR/M and SIB Bytes

Vol. 2A 3-83INSTRUCTION SET REFERENCE, A-MBTR—Bit Test and Reset#AC(0) If alignment checking is enabled and an unaligned memory reference is made.#UD

Página 35 - Vol. 2A 2-5

Vol. 2A xiiiCONTENTSPAGECHAPTER 6SAFER MODE EXTENSIONS REFERENCE6.1 OVERVIEW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Página 36 - 2-6 Vol. 2A

3-84 Vol. 2A BTS—Bit Test and SetINSTRUCTION SET REFERENCE, A-MBTS—Bit Test and SetDescriptionSelects the bit in a bit string (specified with the firs

Página 37 - Vol. 2A 2-7

Vol. 2A 3-85INSTRUCTION SET REFERENCE, A-MBTS—Bit Test and Setprefix in the form of REX.W promotes operation to 64 bits. See the summary chart at the

Página 38 - 2-8 Vol. 2A

3-86 Vol. 2A BTS—Bit Test and SetINSTRUCTION SET REFERENCE, A-M#AC(0) If alignment checking is enabled and an unaligned memory reference is made.#UD

Página 39 - 2.2.1 REX Prefixes

Vol. 2A 3-87INSTRUCTION SET REFERENCE, A-MCALL—Call ProcedureCALL—Call ProcedureDescriptionSaves procedure linking information on the stack and branch

Página 40 - 2.2.1.1 Encoding

3-88 Vol. 2A CALL—Call ProcedureINSTRUCTION SET REFERENCE, A-Mthe first instruction in the called procedure. The operand can be an immediate value, a

Página 41 - 5UUU %EEE

Vol. 2A 3-89INSTRUCTION SET REFERENCE, A-MCALL—Call Procedureor 64 bits). In 64-bit mode the target operand will always be 64-bits because the operand

Página 42 - 2-12 Vol. 2A

3-90 Vol. 2A CALL—Call ProcedureINSTRUCTION SET REFERENCE, A-Msegment selector for the new code segment and the new instruction pointer (offset) from

Página 43 - 2.2.1.3 Displacement

Vol. 2A 3-91INSTRUCTION SET REFERENCE, A-MCALL—Call ProcedureFar Calls in Compatibility Mode. When the processor is operating in compatibility mode, t

Página 44 - 2.2.1.5 Immediates

3-92 Vol. 2A CALL—Call ProcedureINSTRUCTION SET REFERENCE, A-Mpushes the segment selector and stack pointer for the calling procedure’s stack and the

Página 45 - • Near branches

Vol. 2A 3-93INSTRUCTION SET REFERENCE, A-MCALL—Call ProcedureNote that when using a call gate to perform a far call to a segment at the same priv-ileg

Página 46

CONTENTSxivVol. 2APAGEA.5.2.3 Escape Opcodes with DA as First Byte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-25A

Página 47 - CHAPTER 3

3-94 Vol. 2A CALL—Call ProcedureINSTRUCTION SET REFERENCE, A-MTHENtempRIP ← DEST; (* DEST is r/m64 *)IF stack not large enough for a 8-byte return add

Página 48 - 3-2 Vol. 2A

Vol. 2A 3-95INSTRUCTION SET REFERENCE, A-MCALL—Call ProcedurePush(IP);CS ← DEST[31:16]; (* DEST is ptr16:16 or [m16:16] *)EIP ← DEST[15:0]; (* DEST is

Página 49

3-96 Vol. 2A CALL—Call ProcedureINSTRUCTION SET REFERENCE, A-MtempEIP ← tempEIP AND 0000FFFFH; FI; (* Clear upper 16 bits *)IF (EFER.LMA = 0 or target

Página 50 - 3-4 Vol. 2A

Vol. 2A 3-97INSTRUCTION SET REFERENCE, A-MCALL—Call ProceduretempEIP ← DEST(Offset);IF OperandSize = 16THEN tempEIP ← tempEIP AND 0000FFFFH; FI; (* Cl

Página 51 - Vol. 2A 3-5

3-98 Vol. 2A CALL—Call ProcedureINSTRUCTION SET REFERENCE, A-MTHEN #GP(code segment selector); FI;Read code segment descriptor;IF code-segment segment

Página 52 - 3-6 Vol. 2A

Vol. 2A 3-99INSTRUCTION SET REFERENCE, A-MCALL—Call Procedureor stack segment DPL ≠ DPL of code segment or stack segment is not awritable data segment

Página 53 - 3.1.1.7 Operation Section

3-100 Vol. 2A CALL—Call ProcedureINSTRUCTION SET REFERENCE, A-M(* Segment descriptor information also loaded *)Push(oldSS:oldESP); (* From calling pro

Página 54 - 3-8 Vol. 2A

Vol. 2A 3-101INSTRUCTION SET REFERENCE, A-MCALL—Call ProcedureTHEN #GP(task gate selector); FI;IF task gate not present THEN #NP(task gate selector);

Página 55 - Vol. 2A 3-9

3-102 Vol. 2A CALL—Call ProcedureINSTRUCTION SET REFERENCE, A-M#GP(selector) If a code segment or gate or TSS selector index is outside descriptor tab

Página 56 - 3-10 Vol. 2A

Vol. 2A 3-103INSTRUCTION SET REFERENCE, A-MCALL—Call ProcedureIf the RPL of the new stack segment selector in the TSS is not equal to the DPL of the c

Página 57 - Vol. 2A 3-11

Vol. 2A xvCONTENTSPAGEFIGURESFigure 1-1. Bit and Byte Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Página 58 - Technology Intrinsics

3-104 Vol. 2A CALL—Call ProcedureINSTRUCTION SET REFERENCE, A-MIf code segment or 64-bit call gate overlaps non-canonical space. If the segment descri

Página 59 - Vol. 2A 3-13

Vol. 2A 3-105INSTRUCTION SET REFERENCE, A-MCBW/CWDE/CDQE—Convert Byte to Word/Convert Word to Doubleword/Convert Double-word to QuadwordCBW/CWDE/CDQE—

Página 60 - 3-14 Vol. 2A

3-106 Vol. 2A CLC—Clear Carry FlagINSTRUCTION SET REFERENCE, A-MCLC—Clear Carry FlagDescriptionClears the CF flag in the EFLAGS register. Operation is

Página 61 - Vol. 2A 3-15

Vol. 2A 3-107INSTRUCTION SET REFERENCE, A-MCLD—Clear Direction FlagCLD—Clear Direction FlagDescriptionClears the DF flag in the EFLAGS register. When

Página 62 - 3-16 Vol. 2A

3-108 Vol. 2A CLFLUSH—Flush Cache LineINSTRUCTION SET REFERENCE, A-MCLFLUSH—Flush Cache LineDescriptionInvalidates the cache line that contains the li

Página 63 - Vol. 2A 3-17

Vol. 2A 3-109INSTRUCTION SET REFERENCE, A-MCLFLUSH—Flush Cache LineOperationFlush_Cache_Line(SRC);Intel C/C++ Compiler Intrinsic EquivalentsCLFLUSH vo

Página 64 - 3.2 INSTRUCTIONS (A-M)

3-110 Vol. 2A CLI — Clear Interrupt FlagINSTRUCTION SET REFERENCE, A-MCLI — Clear Interrupt FlagDescriptionIf protected-mode virtual interrupts are no

Página 65

Vol. 2A 3-111INSTRUCTION SET REFERENCE, A-MCLI — Clear Interrupt FlagTHENIF IOPL ← CPLTHENIF ← 0; (* Reset Interrupt Flag *)ELSEIF ((IOPL < CPL) an

Página 66

3-112 Vol. 2A CLI — Clear Interrupt FlagINSTRUCTION SET REFERENCE, A-MVirtual-8086 Mode Exceptions#GP(0) If the CPL is greater (has less privilege) t

Página 67

Vol. 2A 3-113INSTRUCTION SET REFERENCE, A-MCLTS—Clear Task-Switched Flag in CR0CLTS—Clear Task-Switched Flag in CR0DescriptionClears the task-switched

Página 68

CONTENTSxviVol. 2APAGETABLESTable 2-1. 16-Bit Addressing Forms with the ModR/M Byte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6T

Página 69

3-114 Vol. 2A CLTS—Clear Task-Switched Flag in CR0INSTRUCTION SET REFERENCE, A-MCompatibility Mode ExceptionsSame exceptions as in protected mode.64-B

Página 70

Vol. 2A 3-115INSTRUCTION SET REFERENCE, A-MCMC—Complement Carry FlagCMC—Complement Carry FlagDescriptionComplements the CF flag in the EFLAGS register

Página 71

3-116 Vol. 2A CMOVcc—Conditional MoveINSTRUCTION SET REFERENCE, A-MCMOVcc—Conditional MoveOpcode Instruction 64-Bit ModeCompat/Leg ModeDescription0F 4

Página 72

Vol. 2A 3-117INSTRUCTION SET REFERENCE, A-MCMOVcc—Conditional MoveOpcode Instruction 64-Bit ModeCompat/Leg ModeDescription0F 4D /r CMOVGE r32, r/m32 V

Página 73 - ADC—Add with Carry

3-118 Vol. 2A CMOVcc—Conditional MoveINSTRUCTION SET REFERENCE, A-MOpcode Instruction 64-Bit ModeCompat/Leg ModeDescription0F 43 /r CMOVNC r16, r/m16

Página 74

Vol. 2A 3-119INSTRUCTION SET REFERENCE, A-MCMOVcc—Conditional MoveOpcode Instruction 64-Bit ModeCompat/Leg ModeDescriptionREX.W + 0F 4B /r CMOVNP r64,

Página 75

3-120 Vol. 2A CMOVcc—Conditional MoveINSTRUCTION SET REFERENCE, A-MDescriptionThe CMOVcc instructions check the state of one or more of the status fla

Página 76

Vol. 2A 3-121INSTRUCTION SET REFERENCE, A-MCMOVcc—Conditional MoveDEST ← temp;FI;FI;Flags AffectedNone.Protected Mode Exceptions#GP(0) If a memory ope

Página 77

3-122 Vol. 2A CMOVcc—Conditional MoveINSTRUCTION SET REFERENCE, A-M64-Bit Mode Exceptions#SS(0) If a memory address referencing the SS segment is in a

Página 78

Vol. 2A 3-123INSTRUCTION SET REFERENCE, A-MCMP—Compare Two OperandsCMP—Compare Two OperandsOpcode Instruction 64-Bit ModeCompat/Leg ModeDescription3C

Página 79

Vol. 2A xviiCONTENTSPAGETable 3-38. FPTAN Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Página 80

3-124 Vol. 2A CMP—Compare Two OperandsINSTRUCTION SET REFERENCE, A-MDescriptionCompares the first source operand with the second source operand and se

Página 81 - Vol. 2A 3-35

Vol. 2A 3-125INSTRUCTION SET REFERENCE, A-MCMP—Compare Two OperandsVirtual-8086 Mode Exceptions#GP(0) If a memory operand effective address is outside

Página 82

3-126 Vol. 2A CMPPD—Compare Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MCMPPD—Compare Packed Double-Precision Floating-

Página 83

Vol. 2A 3-127INSTRUCTION SET REFERENCE, A-MCMPPD—Compare Packed Double-Precision Floating-Point ValuesThe unordered relationship is true when at least

Página 84

3-128 Vol. 2A CMPPD—Compare Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MThe greater-than relations that the processor d

Página 85 - Vol. 2A 3-39

Vol. 2A 3-129INSTRUCTION SET REFERENCE, A-MCMPPD—Compare Packed Double-Precision Floating-Point ValuesCMPPD for inequality __m128d _mm_cmpneq_pd(__m12

Página 86

3-130 Vol. 2A CMPPD—Compare Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#UD If an unmasked SIMD floating-point excepti

Página 87 - Vol. 2A 3-41

Vol. 2A 3-131INSTRUCTION SET REFERENCE, A-MCMPPS—Compare Packed Single-Precision Floating-Point ValuesCMPPS—Compare Packed Single-Precision Floating-P

Página 88

3-132 Vol. 2A CMPPS—Compare Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MThe greater-than relations not implemented by t

Página 89

Vol. 2A 3-133INSTRUCTION SET REFERENCE, A-MCMPPS—Compare Packed Single-Precision Floating-Point ValuesTHEN DEST95:64] ← FFFFFFFFH;ELSE DEST[95:64] ← 0

Página 90

CONTENTSxviiiVol. 2APAGETable A-1. Superscripts Utilized in Opcode Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Página 91

3-134 Vol. 2A CMPPS—Compare Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MIf CPUID.01H:EDX.SSE[bit 25] = 0.If the LOCK pr

Página 92 - xmm2/m128[63:0];

Vol. 2A 3-135INSTRUCTION SET REFERENCE, A-MCMPPS—Compare Packed Single-Precision Floating-Point Values#UD If an unmasked SIMD floating-point exceptio

Página 93

3-136 Vol. 2A CMPS/CMPSB/CMPSW/CMPSD/CMPSQ—Compare String OperandsINSTRUCTION SET REFERENCE, A-MCMPS/CMPSB/CMPSW/CMPSD/CMPSQ—Compare String OperandsOp

Página 94

Vol. 2A 3-137INSTRUCTION SET REFERENCE, A-MCMPS/CMPSB/CMPSW/CMPSD/CMPSQ—Compare String OperandsDescriptionCompares the byte, word, doubleword, or quad

Página 95

3-138 Vol. 2A CMPS/CMPSB/CMPSW/CMPSD/CMPSQ—Compare String OperandsINSTRUCTION SET REFERENCE, A-MRDI) registers are assumed by the processor to specify

Página 96

Vol. 2A 3-139INSTRUCTION SET REFERENCE, A-MCMPS/CMPSB/CMPSW/CMPSD/CMPSQ—Compare String Operands(R|E)DI ← (R|E)DI – 2; FI;ELSE IF (Doubleword compariso

Página 97

3-140 Vol. 2A CMPS/CMPSB/CMPSW/CMPSD/CMPSQ—Compare String OperandsINSTRUCTION SET REFERENCE, A-M(E)SI ← (E)SI – 4; (E)DI ← (E)DI – 4; FI;FI;FI;Flags A

Página 98

Vol. 2A 3-141INSTRUCTION SET REFERENCE, A-MCMPS/CMPSB/CMPSW/CMPSD/CMPSQ—Compare String Operands64-Bit Mode Exceptions#SS(0) If a memory address refere

Página 99 - AND—Logical AND

3-142 Vol. 2A CMPSD—Compare Scalar Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MCMPSD—Compare Scalar Double-Precision Floating-

Página 100 - Real-Address Mode Exceptions

Vol. 2A 3-143INSTRUCTION SET REFERENCE, A-MCMPSD—Compare Scalar Double-Precision Floating-Point ValuesThe greater-than relations not implemented in th

Página 101 - 64-Bit Mode Exceptions

Vol. 2A xixCONTENTSPAGETable B-23. Format and Encoding of SSE Cacheability & Memory Ordering Instructions. . . . . .B-67Table B-24. Encoding of Gr

Página 102 - Point Values

3-144 Vol. 2A CMPSD—Compare Scalar Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MCMPSD for greater-than-or-equal__m128d _mm_cmpg

Página 103

Vol. 2A 3-145INSTRUCTION SET REFERENCE, A-MCMPSD—Compare Scalar Double-Precision Floating-Point ValuesIf CR4.OSFXSR[bit 9] = 0.If CPUID.01H:EDX.SSE2[b

Página 104

3-146 Vol. 2A CMPSS—Compare Scalar Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MCMPSS—Compare Scalar Single-Precision Floating-

Página 105

Vol. 2A 3-147INSTRUCTION SET REFERENCE, A-MCMPSS—Compare Scalar Single-Precision Floating-Point ValuesThe greater-than relations not implemented in th

Página 106 - Floating-Point Values

3-148 Vol. 2A CMPSS—Compare Scalar Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MCMPSS for less-than __m128 _mm_cmplt_ss(__m128

Página 107

Vol. 2A 3-149INSTRUCTION SET REFERENCE, A-MCMPSS—Compare Scalar Single-Precision Floating-Point Values#UD If an unmasked SIMD floating-point exceptio

Página 108

3-150 Vol. 2A CMPXCHG—Compare and ExchangeINSTRUCTION SET REFERENCE, A-MCMPXCHG—Compare and ExchangeDescriptionCompares the value in the AL, AX, EAX,

Página 109

Vol. 2A 3-151INSTRUCTION SET REFERENCE, A-MCMPXCHG—Compare and ExchangeIn 64-bit mode, the instruction’s default operation size is 32 bits. Use of the

Página 110

3-152 Vol. 2A CMPXCHG—Compare and ExchangeINSTRUCTION SET REFERENCE, A-MReal-Address Mode Exceptions#GP If a memory operand effective address is outsi

Página 111 - Vol. 2A 3-65

Vol. 2A 3-153INSTRUCTION SET REFERENCE, A-MCMPXCHG8B/CMPXCHG16B—Compare and Exchange BytesCMPXCHG8B/CMPXCHG16B—Compare and Exchange BytesDescriptionCo

Página 112

ii Vol. 2AINFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE,EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY

Página 113

CONTENTSxxVol. 2APAGE

Página 114

3-154 Vol. 2A CMPXCHG8B/CMPXCHG16B—Compare and Exchange BytesINSTRUCTION SET REFERENCE, A-MOperationIF (64-Bit Mode and OperandSize = 64)THENIF (RDX:R

Página 115 - BSF—Bit Scan Forward

Vol. 2A 3-155INSTRUCTION SET REFERENCE, A-MCMPXCHG8B/CMPXCHG16B—Compare and Exchange Bytes#SS If a memory operand effective address is outside the SS

Página 116

3-156 Vol. 2A COMISD—Compare Scalar Ordered Double-Precision Floating-Point Values and SetEFLAGSINSTRUCTION SET REFERENCE, A-MCOMISD—Compare Scalar Or

Página 117 - BSR—Bit Scan Reverse

Vol. 2A 3-157INSTRUCTION SET REFERENCE, A-MCOMISD—Compare Scalar Ordered Double-Precision Floating-Point Values and Set EFLAGSint _mm_comile_sd (__m12

Página 118

3-158 Vol. 2A COMISD—Compare Scalar Ordered Double-Precision Floating-Point Values and SetEFLAGSINSTRUCTION SET REFERENCE, A-MVirtual-8086 Mode Except

Página 119 - BSWAP—Byte Swap

Vol. 2A 3-159INSTRUCTION SET REFERENCE, A-MCOMISS—Compare Scalar Ordered Single-Precision Floating-Point Values and Set EFLAGSCOMISS—Compare Scalar Or

Página 120

3-160 Vol. 2A COMISS—Compare Scalar Ordered Single-Precision Floating-Point Values and Set EFLAGSINSTRUCTION SET REFERENCE, A-Mint _mm_comile_ss (__m1

Página 121 - BT—Bit Test

Vol. 2A 3-161INSTRUCTION SET REFERENCE, A-MCOMISS—Compare Scalar Ordered Single-Precision Floating-Point Values and Set EFLAGSVirtual-8086 Mode Except

Página 122

3-162 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-MCPUID—CPU IdentificationDescriptionThe ID flag (bit 21) in the EFLAGS register ind

Página 123

Vol. 2A 3-163INSTRUCTION SET REFERENCE, A-MCPUID—CPU IdentificationSee also: “Serializing Instructions” in Chapter 7, “Multiple-Processor Management,”

Página 124 - BTC—Bit Test and Complement

Vol. 2A 1-1CHAPTER 1ABOUT THIS MANUALThe Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volumes 2A & 2B: Instruction Set Reference

Página 125

3-164 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-MCPUID leaves > 3 < 80000000 are visible only when IA32_MISC_ENABLES.BOOT_NT4

Página 126

Vol. 2A 3-165INSTRUCTION SET REFERENCE, A-MCPUID—CPU IdentificationMONITOR/MWAIT Leaf 5H EAX Bits 15-00: Smallest monitor-line size in bytes (default

Página 127 - BTR—Bit Test and Reset

3-166 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-M0AH EAX Bits 07 - 00: Version ID of architectural performance monitoringBits 15- 0

Página 128

Vol. 2A 3-167INSTRUCTION SET REFERENCE, A-MCPUID—CPU IdentificationEDX Bits 10-0: ReservedBit 11: SYSCALL/SYSRET available (when in 64-bit mode)Bits 1

Página 129

3-168 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-MINPUT EAX = 0: Returns CPUID’s Highest Value for Basic Processor Information and t

Página 130 - BTS—Bit Test and Set

Vol. 2A 3-169INSTRUCTION SET REFERENCE, A-MCPUID—CPU IdentificationIA32_BIOS_SIGN_ID Returns Microcode Update SignatureFor processors that support the

Página 131

3-170 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-MSee Table 3-14 for available processor type values. Stepping IDs are provided as n

Página 132

Vol. 2A 3-171INSTRUCTION SET REFERENCE, A-MCPUID—CPU Identification(* Right justify and zero-extend 4-bit field. *)FI;(* Show Display_Family as HEX fi

Página 133 - CALL—Call Procedure

3-172 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-M Figure 3-6. Feature Information Returned in the ECX RegisterOM16524bCNXT-ID — L1

Página 134

Vol. 2A 3-173INSTRUCTION SET REFERENCE, A-MCPUID—CPU IdentificationTable 3-15. Feature Information Returned in the ECX Register Bit # Mnemonic Desc

Página 135 - Vol. 2A 3-89

1-2 Vol. 2AABOUT THIS MANUAL• Intel® Core™2 Duo processor• Intel® Core™2 Quad processor• Intel® Xeon® processor 3000, 3200 series• Intel® Xeon® proces

Página 136

3-174 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-M21 - 22 Reserved Reserved23 POPCNT A value of 1 indicates that the processor suppo

Página 137 - Vol. 2A 3-91

Vol. 2A 3-175INSTRUCTION SET REFERENCE, A-MCPUID—CPU IdentificationTable 3-16. More on Feature Information Returned in the EDX RegisterBit # Mnemoni

Página 138 - -byte call gate

3-176 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-M13 PGE PTE Global Bit. The global bit in page directory entries (PDEs) and page t

Página 139

Vol. 2A 3-177INSTRUCTION SET REFERENCE, A-MCPUID—CPU IdentificationINPUT EAX = 2: Cache and TLB Information Returned in EAX, EBX, ECX, EDXWhen CPUID e

Página 140 - = 16 *)

3-178 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-MTable 3-17. Encoding of Cache and TLB Descriptors Descriptor Value Cache or TLB D

Página 141 - Vol. 2A 3-95

Vol. 2A 3-179INSTRUCTION SET REFERENCE, A-MCPUID—CPU Identification56H Data TLB0: 4 MByte pages, 4-way set associative, 16 entries57H Data TLB0: 4 KBy

Página 142 - ≠ CPL)

3-180 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-MExample 3-1. Example of Cache and TLB InterpretationThe first member of the famil

Página 143 - Vol. 2A 3-97

Vol. 2A 3-181INSTRUCTION SET REFERENCE, A-MCPUID—CPU Identificationquery maximum number of cores per physical package by executing CPUID with EAX=4 an

Página 144 - ≠ DPL of code segment

3-182 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-MThis method (introduced with Pentium 4 processors) returns an ASCII brand identifi

Página 145 - Vol. 2A 3-99

Vol. 2A 3-183INSTRUCTION SET REFERENCE, A-MCPUID—CPU IdentificationTable 3-18 shows the brand string that is returned by the first processor in the Pe

Página 146

Vol. 2A 1-3ABOUT THIS MANUALChapter 1 — About This Manual. Gives an overview of all five volumes of the Intel® 64 and IA-32 Architectures Software Dev

Página 147

3-184 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-MThe Processor Brand Index MethodThe brand index method (introduced with Pentium® I

Página 148

Vol. 2A 3-185INSTRUCTION SET REFERENCE, A-MCPUID—CPU Identificationdo not support the brand identification feature. Starting with processor signature

Página 149

3-186 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-MIA-32 Architecture CompatibilityCPUID is not supported in early models of the Inte

Página 150

Vol. 2A 3-187INSTRUCTION SET REFERENCE, A-MCPUID—CPU IdentificationBREAKEAX = 4H:EAX ← Deterministic Cache Parameters Leaf; (* See Table 3-12. *)EBX ←

Página 151 - Vol. 2A 3-105

3-188 Vol. 2A CPUID—CPU IdentificationINSTRUCTION SET REFERENCE, A-MEAX = 80000002H:EAX ← Processor Brand String; EBX ← Processor Brand String, contin

Página 152 - CLC—Clear Carry Flag

Vol. 2A 3-189INSTRUCTION SET REFERENCE, A-MCPUID—CPU IdentificationEAX ← Reserved; (* Information returned for highest basic information leaf. *)EBX ←

Página 153 - CLD—Clear Direction Flag

3-190 Vol. 2A CVTDQ2PD—Convert Packed Doubleword Integers to Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MCVTDQ2PD—Conve

Página 154 - CLFLUSH—Flush Cache Line

Vol. 2A 3-191INSTRUCTION SET REFERENCE, A-MCVTDQ2PD—Convert Packed Doubleword Integers to Packed Double-Precision Floating-Point ValuesIf CPUID.01H:ED

Página 155 - Vol. 2A 3-109

3-192 Vol. 2A CVTDQ2PS—Convert Packed Doubleword Integers to Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MCVTDQ2PS—Conve

Página 156 - CLI — Clear Interrupt Flag

Vol. 2A 3-193INSTRUCTION SET REFERENCE, A-MCVTDQ2PS—Convert Packed Doubleword Integers to Packed Single-Precision Floating-Point Values#NM If CR0.TS[b

Página 157 - < 3) AND (VME = 1)

1-4 Vol. 2AABOUT THIS MANUAL1.3.1 Bit and Byte OrderIn illustrations of data structures in memory, smaller addresses appear toward the bottom of the

Página 158

3-194 Vol. 2A CVTDQ2PS—Convert Packed Doubleword Integers to Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#NM If CR0.TS[

Página 159 - Vol. 2A 3-113

Vol. 2A 3-195INSTRUCTION SET REFERENCE, A-MCVTPD2DQ—Convert Packed Double-Precision Floating-Point Values to Packed Double-word IntegersCVTPD2DQ—Conve

Página 160

3-196 Vol. 2A CVTPD2DQ—Convert Packed Double-Precision Floating-Point Values to Packed Double-word IntegersINSTRUCTION SET REFERENCE, A-MIf a memory o

Página 161 - CMC—Complement Carry Flag

Vol. 2A 3-197INSTRUCTION SET REFERENCE, A-MCVTPD2DQ—Convert Packed Double-Precision Floating-Point Values to Packed Double-word Integers#GP(0) If the

Página 162 - CMOVcc—Conditional Move

3-198 Vol. 2A CVTPD2PI—Convert Packed Double-Precision Floating-Point Values to Packed Double-word IntegersINSTRUCTION SET REFERENCE, A-MCVTPD2PI—Conv

Página 163 - Vol. 2A 3-117

Vol. 2A 3-199INSTRUCTION SET REFERENCE, A-MCVTPD2PI—Convert Packed Double-Precision Floating-Point Values to Packed Double-word IntegersProtected Mode

Página 164

3-200 Vol. 2A CVTPD2PI—Convert Packed Double-Precision Floating-Point Values to Packed Double-word IntegersINSTRUCTION SET REFERENCE, A-MCompatibility

Página 165 - Vol. 2A 3-119

Vol. 2A 3-201INSTRUCTION SET REFERENCE, A-MCVTPD2PS—Convert Packed Double-Precision Floating-Point Values to Packed Single-Precision Floating-Point Va

Página 166

3-202 Vol. 2A CVTPD2PS—Convert Packed Double-Precision Floating-Point Values to Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE

Página 167

Vol. 2A 3-203INSTRUCTION SET REFERENCE, A-MCVTPD2PS—Convert Packed Double-Precision Floating-Point Values to Packed Single-Precision Floating-Point Va

Página 168

Vol. 2A 1-5ABOUT THIS MANUAL1.3.2 Reserved Bits and Software CompatibilityIn many register and memory layout descriptions, certain bits are marked as

Página 169 - CMP—Compare Two Operands

3-204 Vol. 2A CVTPI2PD—Convert Packed Doubleword Integers to Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MCVTPI2PD—Conve

Página 170

Vol. 2A 3-205INSTRUCTION SET REFERENCE, A-MCVTPI2PD—Convert Packed Doubleword Integers to Packed Double-Precision Floating-Point ValuesProtected Mode

Página 171

3-206 Vol. 2A CVTPI2PD—Convert Packed Doubleword Integers to Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#MF If there

Página 172

Vol. 2A 3-207INSTRUCTION SET REFERENCE, A-MCVTPI2PS—Convert Packed Doubleword Integers to Packed Single-Precision Floating-Point ValuesCVTPI2PS—Conver

Página 173 - Vol. 2A 3-127

3-208 Vol. 2A CVTPI2PS—Convert Packed Doubleword Integers to Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#PF(fault-code

Página 174

Vol. 2A 3-209INSTRUCTION SET REFERENCE, A-MCVTPI2PS—Convert Packed Doubleword Integers to Packed Single-Precision Floating-Point Values64-Bit Mode Exc

Página 175

3-210 Vol. 2A CVTPS2DQ—Convert Packed Single-Precision Floating-Point Values to Packed Double-word IntegersINSTRUCTION SET REFERENCE, A-MCVTPS2DQ—Conv

Página 176

Vol. 2A 3-211INSTRUCTION SET REFERENCE, A-MCVTPS2DQ—Convert Packed Single-Precision Floating-Point Values to Packed Double-word Integers#SS(0) For an

Página 177

3-212 Vol. 2A CVTPS2DQ—Convert Packed Single-Precision Floating-Point Values to Packed Double-word IntegersINSTRUCTION SET REFERENCE, A-MIf memory ope

Página 178

Vol. 2A 3-213INSTRUCTION SET REFERENCE, A-MCVTPS2PD—Convert Packed Single-Precision Floating-Point Values to Packed Double-Precision Floating-Point Va

Página 179

1-6 Vol. 2AABOUT THIS MANUAL1.3.3 Instruction OperandsWhen instructions are represented symbolically, a subset of the IA-32 assembly language is used.

Página 180

3-214 Vol. 2A CVTPS2PD—Convert Packed Single-Precision Floating-Point Values to Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE

Página 181 - Vol. 2A 3-135

Vol. 2A 3-215INSTRUCTION SET REFERENCE, A-MCVTPS2PD—Convert Packed Single-Precision Floating-Point Values to Packed Double-Precision Floating-Point Va

Página 182

3-216 Vol. 2A CVTPS2PI—Convert Packed Single-Precision Floating-Point Values to Packed Double-word IntegersINSTRUCTION SET REFERENCE, A-MCVTPS2PI—Conv

Página 183

Vol. 2A 3-217INSTRUCTION SET REFERENCE, A-MCVTPS2PI—Convert Packed Single-Precision Floating-Point Values to Packed Double-word IntegersProtected Mode

Página 184

3-218 Vol. 2A CVTPS2PI—Convert Packed Single-Precision Floating-Point Values to Packed Double-word IntegersINSTRUCTION SET REFERENCE, A-MCompatibility

Página 185 - Vol. 2A 3-139

Vol. 2A 3-219INSTRUCTION SET REFERENCE, A-MCVTSD2SI—Convert Scalar Double-Precision Floating-Point Value to Doubleword IntegerCVTSD2SI—Convert Scalar

Página 186

3-220 Vol. 2A CVTSD2SI—Convert Scalar Double-Precision Floating-Point Value to Doubleword IntegerINSTRUCTION SET REFERENCE, A-MSIMD Floating-Point Exc

Página 187

Vol. 2A 3-221INSTRUCTION SET REFERENCE, A-MCVTSD2SI—Convert Scalar Double-Precision Floating-Point Value to Doubleword IntegerCompatibility Mode Excep

Página 188

3-222 Vol. 2A CVTSD2SS—Convert Scalar Double-Precision Floating-Point Value to Scalar Single-Preci-sion Floating-Point ValueINSTRUCTION SET REFERENCE,

Página 189

Vol. 2A 3-223INSTRUCTION SET REFERENCE, A-MCVTSD2SS—Convert Scalar Double-Precision Floating-Point Value to Scalar Single-Preci-sion Floating-Point Va

Página 190

Vol. 2A 1-7ABOUT THIS MANUALFor example, a program can keep its code (instructions) and stack in separate segments. Code addresses would always refer

Página 191

3-224 Vol. 2A CVTSD2SS—Convert Scalar Double-Precision Floating-Point Value to Scalar Single-Preci-sion Floating-Point ValueINSTRUCTION SET REFERENCE,

Página 192

Vol. 2A 3-225INSTRUCTION SET REFERENCE, A-MCVTSI2SD—Convert Doubleword Integer to Scalar Double-Precision Floating-Point ValueCVTSI2SD—Convert Doublew

Página 193

3-226 Vol. 2A CVTSI2SD—Convert Doubleword Integer to Scalar Double-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptio

Página 194

Vol. 2A 3-227INSTRUCTION SET REFERENCE, A-MCVTSI2SD—Convert Doubleword Integer to Scalar Double-Precision Floating-Point Value64-Bit Mode Exceptions#S

Página 195

3-228 Vol. 2A CVTSI2SS—Convert Doubleword Integer to Scalar Single-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MCVTSI2SS—Convert Double

Página 196 - CMPXCHG—Compare and Exchange

Vol. 2A 3-229INSTRUCTION SET REFERENCE, A-MCVTSI2SS—Convert Doubleword Integer to Scalar Single-Precision Floating-Point ValueSIMD Floating-Point Exce

Página 197

3-230 Vol. 2A CVTSI2SS—Convert Doubleword Integer to Scalar Single-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MCompatibility Mode Exce

Página 198

Vol. 2A 3-231INSTRUCTION SET REFERENCE, A-MCVTSS2SD—Convert Scalar Single-Precision Floating-Point Value to Scalar Double-Preci-sion Floating-Point Va

Página 199

3-232 Vol. 2A CVTSS2SD—Convert Scalar Single-Precision Floating-Point Value to Scalar Double-Preci-sion Floating-Point ValueINSTRUCTION SET REFERENCE,

Página 200

Vol. 2A 3-233INSTRUCTION SET REFERENCE, A-MCVTSS2SD—Convert Scalar Single-Precision Floating-Point Value to Scalar Double-Preci-sion Floating-Point Va

Página 201

1-8 Vol. 2AABOUT THIS MANUAL1.4 RELATED LITERATURELiterature related to Intel 64 and IA-32 processors is listed on-line at: http://developer.intel.com

Página 202 - Values and Set EFLAGS

3-234 Vol. 2A CVTSS2SI—Convert Scalar Single-Precision Floating-Point Value to Doubleword IntegerINSTRUCTION SET REFERENCE, A-MCVTSS2SI—Convert Scalar

Página 203

Vol. 2A 3-235INSTRUCTION SET REFERENCE, A-MCVTSS2SI—Convert Scalar Single-Precision Floating-Point Value to Doubleword IntegerSIMD Floating-Point Exce

Página 204

3-236 Vol. 2A CVTSS2SI—Convert Scalar Single-Precision Floating-Point Value to Doubleword IntegerINSTRUCTION SET REFERENCE, A-MCompatibility Mode Exce

Página 205

Vol. 2A 3-237INSTRUCTION SET REFERENCE, A-MCVTTPD2PI—Convert with Truncation Packed Double-Precision Floating-Point Values to Packed Doubleword Intege

Página 206

3-238 Vol. 2A CVTTPD2PI—Convert with Truncation Packed Double-Precision Floating-Point Values toPacked Doubleword IntegersINSTRUCTION SET REFERENCE, A

Página 207

Vol. 2A 3-239INSTRUCTION SET REFERENCE, A-MCVTTPD2PI—Convert with Truncation Packed Double-Precision Floating-Point Values to Packed Doubleword Intege

Página 208 - CPUID—CPU Identification

3-240 Vol. 2A CVTTPD2DQ—Convert with Truncation Packed Double-Precision Floating-Point Valuesto Packed Doubleword IntegersINSTRUCTION SET REFERENCE, A

Página 209 - Vol. 2A 3-163

Vol. 2A 3-241INSTRUCTION SET REFERENCE, A-MCVTTPD2DQ—Convert with Truncation Packed Double-Precision Floating-Point Values to Packed Doubleword Intege

Página 210

3-242 Vol. 2A CVTTPD2DQ—Convert with Truncation Packed Double-Precision Floating-Point Valuesto Packed Doubleword IntegersINSTRUCTION SET REFERENCE, A

Página 211 - Vol. 2A 3-165

Vol. 2A 3-243INSTRUCTION SET REFERENCE, A-MCVTTPS2DQ—Convert with Truncation Packed Single-Precision Floating-Point Values to Packed Doubleword Intege

Página 212

Vol. 2A 1-9ABOUT THIS MANUALliterature types: applications notes, data sheets, manuals, papers, and specification updates. See also: • The data sheet

Página 213 - Vol. 2A 3-167

3-244 Vol. 2A CVTTPS2DQ—Convert with Truncation Packed Single-Precision Floating-Point Values toPacked Doubleword IntegersINSTRUCTION SET REFERENCE, A

Página 214

Vol. 2A 3-245INSTRUCTION SET REFERENCE, A-MCVTTPS2DQ—Convert with Truncation Packed Single-Precision Floating-Point Values to Packed Doubleword Intege

Página 215 - • Processor Type — 00B

3-246 Vol. 2A CVTTPS2PI—Convert with Truncation Packed Single-Precision Floating-Point Values toPacked Doubleword IntegersINSTRUCTION SET REFERENCE, A

Página 216 - Processor 01B

Vol. 2A 3-247INSTRUCTION SET REFERENCE, A-MCVTTPS2PI—Convert with Truncation Packed Single-Precision Floating-Point Values to Packed Doubleword Intege

Página 217 - Vol. 2A 3-171

3-248 Vol. 2A CVTTPS2PI—Convert with Truncation Packed Single-Precision Floating-Point Values toPacked Doubleword IntegersINSTRUCTION SET REFERENCE, A

Página 218 - OM16524b

Vol. 2A 3-249INSTRUCTION SET REFERENCE, A-MCVTTSD2SI—Convert with Truncation Scalar Double-Precision Floating-Point Value to Signed Doubleword Integer

Página 219 - Vol. 2A 3-173

3-250 Vol. 2A CVTTSD2SI—Convert with Truncation Scalar Double-Precision Floating-Point Value toSigned Doubleword IntegerINSTRUCTION SET REFERENCE, A-M

Página 220 - (';

Vol. 2A 3-251INSTRUCTION SET REFERENCE, A-MCVTTSD2SI—Convert with Truncation Scalar Double-Precision Floating-Point Value to Signed Doubleword Integer

Página 221 - Vol. 2A 3-175

3-252 Vol. 2A CVTTSS2SI—Convert with Truncation Scalar Single-Precision Floating-Point Value toDoubleword IntegerINSTRUCTION SET REFERENCE, A-MCVTTSS2

Página 222

Vol. 2A 3-253INSTRUCTION SET REFERENCE, A-MCVTTSS2SI—Convert with Truncation Scalar Single-Precision Floating-Point Value to Doubleword IntegerIntel C

Página 223 - Vol. 2A 3-177

Vol. 2A iiiCONTENTSPAGECHAPTER 1ABOUT THIS MANUAL1.1 IA-32 PROCESSORS COVERED IN THIS MANUAL . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Página 224

1-10 Vol. 2AABOUT THIS MANUAL• Intel 64 and IA-32 processor manuals (printed or PDF downloads):http://developer.intel.com/products/processor/manuals/i

Página 225 - Vol. 2A 3-179

3-254 Vol. 2A CVTTSS2SI—Convert with Truncation Scalar Single-Precision Floating-Point Value toDoubleword IntegerINSTRUCTION SET REFERENCE, A-M#AC(0)

Página 226 - -μop, 8-way set associative

Vol. 2A 3-255INSTRUCTION SET REFERENCE, A-MCWD/CDQ/CQO—Convert Word to Doubleword/Convert Doubleword to QuadwordCWD/CDQ/CQO—Convert Word to Doubleword

Página 227 - Vol. 2A 3-181

3-256 Vol. 2A CWD/CDQ/CQO—Convert Word to Doubleword/Convert Doubleword to QuadwordINSTRUCTION SET REFERENCE, A-MRDX ← SignExtend(RAX); FI;FI;Flags Af

Página 228 - How Brand Strings Work

Vol. 2A 3-257INSTRUCTION SET REFERENCE, A-MDAA—Decimal Adjust AL after AdditionDAA—Decimal Adjust AL after AdditionDescriptionAdjusts the sum of two p

Página 229 - Vol. 2A 3-183

3-258 Vol. 2A DAA—Decimal Adjust AL after AdditionINSTRUCTION SET REFERENCE, A-MExampleADD AL, BL Before: AL=79H BL=35H EFLAGS(OSZAPC)=XXXXXXAfter:

Página 230 - III Xeon

Vol. 2A 3-259INSTRUCTION SET REFERENCE, A-MDAS—Decimal Adjust AL after SubtractionDAS—Decimal Adjust AL after SubtractionDescriptionAdjusts the result

Página 231

3-260 Vol. 2A DAS—Decimal Adjust AL after SubtractionINSTRUCTION SET REFERENCE, A-MExampleSUB AL, BL Before: AL = 35H, BL = 47H, EFLAGS(OSZAPC) = XX

Página 232

Vol. 2A 3-261INSTRUCTION SET REFERENCE, A-MDEC—Decrement by 1DEC—Decrement by 1DescriptionSubtracts 1 from the destination operand, while preserving t

Página 233 - Vol. 2A 3-187

3-262 Vol. 2A DEC—Decrement by 1INSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#GP(0) If the destination operand is located in a non-writable

Página 234

Vol. 2A 3-263INSTRUCTION SET REFERENCE, A-MDEC—Decrement by 1#AC(0) If alignment checking is enabled and an unaligned memory reference is made while t

Página 235 - Vol. 2A 3-189

Vol. 2A 2-1CHAPTER 2INSTRUCTION FORMATThis chapter describes the instruction format for all Intel 64 and IA-32 processors. The instruction format for

Página 236

3-264 Vol. 2A DIV—Unsigned DivideINSTRUCTION SET REFERENCE, A-MDIV—Unsigned DivideDescriptionDivides unsigned the value in the AX, DX:AX, EDX:EAX, or

Página 237

Vol. 2A 3-265INSTRUCTION SET REFERENCE, A-MDIV—Unsigned DivideOperationIF SRC = 0THEN #DE; FI; (* Divide Error *) IF OperandSize = 8 (* Word/Byte Oper

Página 238

3-266 Vol. 2A DIV—Unsigned DivideINSTRUCTION SET REFERENCE, A-MELSE IF 64-Bit Mode and Operandsize = 64 (* Doublequadword/quadword operation *)THENtem

Página 239

Vol. 2A 3-267INSTRUCTION SET REFERENCE, A-MDIV—Unsigned DivideVirtual-8086 Mode Exceptions#DE If the source operand (divisor) is 0.If the quotient is

Página 240

3-268 Vol. 2A DIVPD—Divide Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MDIVPD—Divide Packed Double-Precision Floating-Po

Página 241 - Packed Doubleword Integers

Vol. 2A 3-269INSTRUCTION SET REFERENCE, A-MDIVPD—Divide Packed Double-Precision Floating-Point Values#XM If an unmasked SIMD floating-point exception

Página 242

3-270 Vol. 2A DIVPD—Divide Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#XM If an unmasked SIMD floating-point exceptio

Página 243 - Vol. 2A 3-197

Vol. 2A 3-271INSTRUCTION SET REFERENCE, A-MDIVPS—Divide Packed Single-Precision Floating-Point ValuesDIVPS—Divide Packed Single-Precision Floating-Poi

Página 244

3-272 Vol. 2A DIVPS—Divide Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#NM If CR0.TS[bit 3] = 1. #XM If an unmasked SI

Página 245

Vol. 2A 3-273INSTRUCTION SET REFERENCE, A-MDIVPS—Divide Packed Single-Precision Floating-Point Values#NM If CR0.TS[bit 3] = 1. #XM If an unmasked SIM

Página 246

2-2 Vol. 2AINSTRUCTION FORMAT• F2H—REPNE/REPNZ (used only with string instructions; when used with the escape opcode 0FH, this prefix is treated as a

Página 247

3-274 Vol. 2A DIVSD—Divide Scalar Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MDIVSD—Divide Scalar Double-Precision Floating-Po

Página 248

Vol. 2A 3-275INSTRUCTION SET REFERENCE, A-MDIVSD—Divide Scalar Double-Precision Floating-Point ValuesIf CR0.EM[bit 2] = 1.If CR4.OSFXSR[bit 9] = 0.If

Página 249

3-276 Vol. 2A DIVSD—Divide Scalar Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MIf CR0.EM[bit 2] = 1.If CR4.OSFXSR[bit 9] = 0.If

Página 250

Vol. 2A 3-277INSTRUCTION SET REFERENCE, A-MDIVSS—Divide Scalar Single-Precision Floating-Point ValuesDIVSS—Divide Scalar Single-Precision Floating-Poi

Página 251

3-278 Vol. 2A DIVSS—Divide Scalar Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MIf CR0.EM[bit 2] = 1.If CR4.OSFXSR[bit 9] = 0.If

Página 252

Vol. 2A 3-279INSTRUCTION SET REFERENCE, A-MDIVSS—Divide Scalar Single-Precision Floating-Point ValuesIf CR0.EM[bit 2] = 1.If CR4.OSFXSR[bit 9] = 0.If

Página 253

3-280 Vol. 2A EMMS—Empty MMX Technology StateINSTRUCTION SET REFERENCE, A-MEMMS—Empty MMX Technology StateDescription Sets the values of all the tags

Página 254

Vol. 2A 3-281INSTRUCTION SET REFERENCE, A-MEMMS—Empty MMX Technology StateVirtual-8086 Mode ExceptionsSame exceptions as in protected mode.Compatibili

Página 255

3-282 Vol. 2A ENTER—Make Stack Frame for Procedure ParametersINSTRUCTION SET REFERENCE, A-MENTER—Make Stack Frame for Procedure ParametersDescriptionC

Página 256

Vol. 2A 3-283INSTRUCTION SET REFERENCE, A-MENTER—Make Stack Frame for Procedure ParametersOperationNestingLevel ← NestingLevel MOD 32IF 64-Bit Mode (S

Página 257

Vol. 2A 2-3INSTRUCTION FORMATopcodes with Intel 64 or IA-32 instructions is reserved; such use may cause unpre-dictable behavior.The operand-size over

Página 258

3-284 Vol. 2A ENTER—Make Stack Frame for Procedure ParametersINSTRUCTION SET REFERENCE, A-MFI;FI;OD;FI;IF 64-Bit Mode (StackSize = 64)THENPush(FrameTe

Página 259

Vol. 2A 3-285INSTRUCTION SET REFERENCE, A-MENTER—Make Stack Frame for Procedure ParametersReal-Address Mode Exceptions#SS(0) If the new value of the S

Página 260

3-286 Vol. 2A F2XM1—Compute 2x–1INSTRUCTION SET REFERENCE, A-MF2XM1—Compute 2x–1DescriptionComputes the exponential value of 2 to the power of the sou

Página 261 - Vol. 2A 3-215

Vol. 2A 3-287INSTRUCTION SET REFERENCE, A-MF2XM1—Compute 2x–1#U Result is too small for destination format.#P Value cannot be represented exactly in d

Página 262

3-288 Vol. 2A FABS—Absolute ValueINSTRUCTION SET REFERENCE, A-MFABS—Absolute ValueDescriptionClears the sign bit of ST(0) to create the absolute value

Página 263

Vol. 2A 3-289INSTRUCTION SET REFERENCE, A-MFABS—Absolute ValueReal-Address Mode ExceptionsSame exceptions as in protected mode.Virtual-8086 Mode Excep

Página 264

3-290 Vol. 2A FADD/FADDP/FIADD—AddINSTRUCTION SET REFERENCE, A-MFADD/FADDP/FIADD—AddDescriptionAdds the destination and source operands and stores the

Página 265 - Doubleword Integer

Vol. 2A 3-291INSTRUCTION SET REFERENCE, A-MFADD/FADDP/FIADD—AddThe table on the following page shows the results obtained when adding various classes

Página 266

3-292 Vol. 2A FADD/FADDP/FIADD—AddINSTRUCTION SET REFERENCE, A-MFPU Flags AffectedC1 Set to 0 if stack underflow occurred.Set if result was rounded up

Página 267

Vol. 2A 3-293INSTRUCTION SET REFERENCE, A-MFADD/FADDP/FIADD—Add#NM CR0.EM[bit 2] or CR0.TS[bit 3] = 1.#PF(fault-code) If a page fault occurs.#AC(0) If

Página 268

2-4 Vol. 2AINSTRUCTION FORMAT2.1.3 ModR/M and SIB BytesMany instructions that refer to an operand in memory have an addressing-form spec-ifier byte (

Página 269

3-294 Vol. 2A FBLD—Load Binary Coded DecimalINSTRUCTION SET REFERENCE, A-MFBLD—Load Binary Coded DecimalDescriptionConverts the BCD source operand int

Página 270

Vol. 2A 3-295INSTRUCTION SET REFERENCE, A-MFBLD—Load Binary Coded DecimalReal-Address Mode Exceptions#GP If a memory operand effective address is outs

Página 271 - Floating-Point Value

3-296 Vol. 2A FBSTP—Store BCD Integer and PopINSTRUCTION SET REFERENCE, A-MFBSTP—Store BCD Integer and PopDescriptionConverts the value in the ST(0) r

Página 272

Vol. 2A 3-297INSTRUCTION SET REFERENCE, A-MFBSTP—Store BCD Integer and Popnation operand. If the invalid-operation exception is masked, the packed BCD

Página 273

3-298 Vol. 2A FBSTP—Store BCD Integer and PopINSTRUCTION SET REFERENCE, A-M#NM CR0.EM[bit 2] or CR0.TS[bit 3] = 1.#UD If the LOCK prefix is used.Virt

Página 274

Vol. 2A 3-299INSTRUCTION SET REFERENCE, A-MFCHS—Change SignFCHS—Change SignDescriptionComplements the sign bit of ST(0). This operation changes a posi

Página 275

3-300 Vol. 2A FCHS—Change SignINSTRUCTION SET REFERENCE, A-MReal-Address Mode ExceptionsSame exceptions as in protected mode.Virtual-8086 Mode Excepti

Página 276

Vol. 2A 3-301INSTRUCTION SET REFERENCE, A-MFCLEX/FNCLEX—Clear ExceptionsFCLEX/FNCLEX—Clear ExceptionsDescriptionClears the floating-point exception fl

Página 277

3-302 Vol. 2A FCLEX/FNCLEX—Clear ExceptionsINSTRUCTION SET REFERENCE, A-MFPU Flags AffectedThe PE, UE, OE, ZE, DE, IE, ES, SF, and B flags in the FPU

Página 278

Vol. 2A 3-303INSTRUCTION SET REFERENCE, A-MFCMOVcc—Floating-Point Conditional MoveFCMOVcc—Floating-Point Conditional MoveDescriptionTests the status f

Página 279 - Vol. 2A 3-233

Vol. 2A 2-5INSTRUCTION FORMATlocation; the last eight (Mod = 11B) provide ways of specifying general-purpose, MMX technology and XMM registers. The Mo

Página 280

3-304 Vol. 2A FCMOVcc—Floating-Point Conditional MoveINSTRUCTION SET REFERENCE, A-MOperationIF condition TRUETHEN ST(0) ← ST(i);FI;FPU Flags AffectedC

Página 281

Vol. 2A 3-305INSTRUCTION SET REFERENCE, A-MFCMOVcc—Floating-Point Conditional MoveFCOM/FCOMP/FCOMPP—Compare Floating Point ValuesDescriptionCompares t

Página 282

3-306 Vol. 2A FCMOVcc—Floating-Point Conditional MoveINSTRUCTION SET REFERENCE, A-MThe FCOMP instruction pops the register stack following the compari

Página 283

Vol. 2A 3-307INSTRUCTION SET REFERENCE, A-MFCMOVcc—Floating-Point Conditional MoveFloating-Point Exceptions#IS Stack underflow occurred.#IA One or bot

Página 284

3-308 Vol. 2A FCMOVcc—Floating-Point Conditional MoveINSTRUCTION SET REFERENCE, A-MCompatibility Mode ExceptionsSame exceptions as in protected mode.6

Página 285

Vol. 2A 3-309INSTRUCTION SET REFERENCE, A-MFCOMI/FCOMIP/ FUCOMI/FUCOMIP—Compare Floating Point Values and Set EFLAGSFCOMI/FCOMIP/ FUCOMI/FUCOMIP—Compa

Página 286

3-310 Vol. 2A FCOMI/FCOMIP/ FUCOMI/FUCOMIP—Compare Floating Point Values and Set EFLAGSINSTRUCTION SET REFERENCE, A-MIf the operation results in an in

Página 287

Vol. 2A 3-311INSTRUCTION SET REFERENCE, A-MFCOMI/FCOMIP/ FUCOMI/FUCOMIP—Compare Floating Point Values and Set EFLAGSZF, PF, CF ← 111;FI;FI;FI;IF Instr

Página 288

3-312 Vol. 2A FCOS—CosineINSTRUCTION SET REFERENCE, A-MFCOS—CosineDescriptionComputes the cosine of the source operand in register ST(0) and stores th

Página 289

Vol. 2A 3-313INSTRUCTION SET REFERENCE, A-MFCOS—CosineST(0) ← cosine(ST(0));ELSE (* Source operand is out-of-range *)C2 ← 1;FI;FPU Flags AffectedC1 Se

Página 290

2-6 Vol. 2AINSTRUCTION FORMATNOTES:1. The default segment register is SS for the effective addresses containing a BP index, DS for othereffective addr

Página 291 - Vol. 2A 3-245

3-314 Vol. 2A FDECSTP—Decrement Stack-Top PointerINSTRUCTION SET REFERENCE, A-MFDECSTP—Decrement Stack-Top PointerDescriptionSubtracts one from the TO

Página 292

Vol. 2A 3-315INSTRUCTION SET REFERENCE, A-MFDECSTP—Decrement Stack-Top PointerCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit

Página 293

3-316 Vol. 2A FDIV/FDIVP/FIDIV—DivideINSTRUCTION SET REFERENCE, A-MFDIV/FDIVP/FIDIV—DivideDescriptionDivides the destination operand by the source ope

Página 294

Vol. 2A 3-317INSTRUCTION SET REFERENCE, A-MFDIV/FDIVP/FIDIV—DivideIf an unmasked divide-by-zero exception (#Z) is generated, no result is stored; if t

Página 295

3-318 Vol. 2A FDIV/FDIVP/FIDIV—DivideINSTRUCTION SET REFERENCE, A-MIF Instruction = FDIVP THEN PopRegisterStack;FI;FPU Flags AffectedC1 Set to 0 if st

Página 296

Vol. 2A 3-319INSTRUCTION SET REFERENCE, A-MFDIV/FDIVP/FIDIV—DivideVirtual-8086 Mode Exceptions#GP(0) If a memory operand effective address is outside

Página 297

3-320 Vol. 2A FDIVR/FDIVRP/FIDIVR—Reverse DivideINSTRUCTION SET REFERENCE, A-MFDIVR/FDIVRP/FIDIVR—Reverse DivideDescriptionDivides the source operand

Página 298

Vol. 2A 3-321INSTRUCTION SET REFERENCE, A-MFDIVR/FDIVRP/FIDIVR—Reverse DivideThe FIDIVR instructions convert an integer source operand to double exten

Página 299

3-322 Vol. 2A FDIVR/FDIVRP/FIDIVR—Reverse DivideINSTRUCTION SET REFERENCE, A-MDEST ← SRC / DEST;FI;FI;IF Instruction = FDIVRP THEN PopRegisterStack;F

Página 300

Vol. 2A 3-323INSTRUCTION SET REFERENCE, A-MFDIVR/FDIVRP/FIDIVR—Reverse Divide#SS If a memory operand effective address is outside the SS segment limit

Página 301 - Quadword

Vol. 2A 2-7INSTRUCTION FORMATNOTES:1. The [--][--] nomenclature means a SIB follows the ModR/M byte.2. The disp32 nomenclature denotes a 32-bit displa

Página 302

3-324 Vol. 2A FFREE—Free Floating-Point RegisterINSTRUCTION SET REFERENCE, A-MFFREE—Free Floating-Point RegisterDescriptionSets the tag in the FPU tag

Página 303 - > 9) or AF = 1)

Vol. 2A 3-325INSTRUCTION SET REFERENCE, A-MFICOM/FICOMP—Compare IntegerFICOM/FICOMP—Compare IntegerDescriptionCompares the value in ST(0) with an inte

Página 304

3-326 Vol. 2A FICOM/FICOMP—Compare IntegerINSTRUCTION SET REFERENCE, A-MESAC;IF Instruction = FICOMP THEN PopRegisterStack; FI;FPU Flags AffectedC1 Se

Página 305 - Vol. 2A 3-259

Vol. 2A 3-327INSTRUCTION SET REFERENCE, A-MFICOM/FICOMP—Compare Integer#SS(0) If a memory operand effective address is outside the SS segment limit.#N

Página 306

3-328 Vol. 2A FILD—Load IntegerINSTRUCTION SET REFERENCE, A-MFILD—Load IntegerDescriptionConverts the signed-integer source operand into double extend

Página 307 - DEC—Decrement by 1

Vol. 2A 3-329INSTRUCTION SET REFERENCE, A-MFILD—Load Integer#UD If the LOCK prefix is used.Real-Address Mode Exceptions#GP If a memory operand effect

Página 308

3-330 Vol. 2A FINCSTP—Increment Stack-Top PointerINSTRUCTION SET REFERENCE, A-MFINCSTP—Increment Stack-Top PointerDescriptionAdds one to the TOP field

Página 309 - Vol. 2A 3-263

Vol. 2A 3-331INSTRUCTION SET REFERENCE, A-MFINCSTP—Increment Stack-Top PointerCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit

Página 310 - DIV—Unsigned Divide

3-332 Vol. 2A FINIT/FNINIT—Initialize Floating-Point UnitINSTRUCTION SET REFERENCE, A-MFINIT/FNINIT—Initialize Floating-Point UnitDescriptionSets the

Página 311 - Table 3-20. DIV Action

Vol. 2A 3-333INSTRUCTION SET REFERENCE, A-MFINIT/FNINIT—Initialize Floating-Point UnitOperationFPUControlWord ← 037FH;FPUStatusWord ← 0;FPUTagWord ← F

Página 312

2-8 Vol. 2AINSTRUCTION FORMATof the table indicate the register used as the index (SIB byte bits 3, 4 and 5) and the scaling factor (determined by SIB

Página 313

3-334 Vol. 2A FIST/FISTP—Store IntegerINSTRUCTION SET REFERENCE, A-MFIST/FISTP—Store IntegerDescriptionThe FIST instruction converts the value in the

Página 314

Vol. 2A 3-335INSTRUCTION SET REFERENCE, A-MFIST/FISTP—Store IntegerIf the source value is a non-integral value, it is rounded to an integer value, acc

Página 315

3-336 Vol. 2A FIST/FISTP—Store IntegerINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#GP(0) If the destination is located in a non-writable se

Página 316

Vol. 2A 3-337INSTRUCTION SET REFERENCE, A-MFIST/FISTP—Store Integer#NM CR0.EM[bit 2] or CR0.TS[bit 3] = 1.#MF If there is a pending x87 FPU exception

Página 317 - Vol. 2A 3-271

3-338 Vol. 2A FISTTP—Store Integer with TruncationINSTRUCTION SET REFERENCE, A-MFISTTP—Store Integer with TruncationDescriptionFISTTP converts the val

Página 318

Vol. 2A 3-339INSTRUCTION SET REFERENCE, A-MFISTTP—Store Integer with TruncationNumeric ExceptionsInvalid, Stack Invalid (stack underflow), Precision.P

Página 319 - Vol. 2A 3-273

3-340 Vol. 2A FISTTP—Store Integer with TruncationINSTRUCTION SET REFERENCE, A-M64-Bit Mode Exceptions#SS(0) If a memory address referencing the SS se

Página 320

Vol. 2A 3-341INSTRUCTION SET REFERENCE, A-MFLD—Load Floating Point ValueFLD—Load Floating Point ValueDescriptionPushes the source operand onto the FPU

Página 321

3-342 Vol. 2A FLD—Load Floating Point ValueINSTRUCTION SET REFERENCE, A-M#IA Source operand is an SNaN. Does not occur if the source operand is in dou

Página 322

Vol. 2A 3-343INSTRUCTION SET REFERENCE, A-MFLD—Load Floating Point ValueCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit Mode

Página 323

Vol. 2A 2-9INSTRUCTION FORMAT2.2 IA-32E MODEIA-32e mode has two sub-modes. These are: • Compatibility Mode. Enables a 64-bit operating system to run m

Página 324

3-344 Vol. 2A FLD1/FLDL2T/FLDL2E/FLDPI/FLDLG2/FLDLN2/FLDZ—Load ConstantINSTRUCTION SET REFERENCE, A-MFLD1/FLDL2T/FLDL2E/FLDPI/FLDLG2/FLDLN2/FLDZ—Load

Página 325 - Vol. 2A 3-279

Vol. 2A 3-345INSTRUCTION SET REFERENCE, A-MFLD1/FLDL2T/FLDL2E/FLDPI/FLDLG2/FLDLN2/FLDZ—Load ConstantFloating-Point Exceptions#IS Stack overflow occurr

Página 326

3-346 Vol. 2A FLDCW—Load x87 FPU Control WordINSTRUCTION SET REFERENCE, A-MFLDCW—Load x87 FPU Control WordDescriptionLoads the 16-bit source operand i

Página 327

Vol. 2A 3-347INSTRUCTION SET REFERENCE, A-MFLDCW—Load x87 FPU Control Word#AC(0) If alignment checking is enabled and an unaligned memory reference is

Página 328

3-348 Vol. 2A FLDENV—Load x87 FPU EnvironmentINSTRUCTION SET REFERENCE, A-MFLDENV—Load x87 FPU EnvironmentDescriptionLoads the complete x87 FPU operat

Página 329 - 1 to (NestingLevel - 1)

Vol. 2A 3-349INSTRUCTION SET REFERENCE, A-MFLDENV—Load x87 FPU EnvironmentFPU Flags AffectedThe C0, C1, C2, C3 flags are loaded.Floating-Point Excepti

Página 330

3-350 Vol. 2A FLDENV—Load x87 FPU EnvironmentINSTRUCTION SET REFERENCE, A-MCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit Mo

Página 331

Vol. 2A 3-351INSTRUCTION SET REFERENCE, A-MFMUL/FMULP/FIMUL—MultiplyFMUL/FMULP/FIMUL—MultiplyDescriptionMultiplies the destination and source operands

Página 332 - F2XM1—Compute 2

3-352 Vol. 2A FMUL/FMULP/FIMUL—MultiplyINSTRUCTION SET REFERENCE, A-MThe FIMUL instructions convert an integer source operand to double extended-preci

Página 333

Vol. 2A 3-353INSTRUCTION SET REFERENCE, A-MFMUL/FMULP/FIMUL—MultiplyFPU Flags AffectedC1 Set to 0 if stack underflow occurred.Set if result was rounde

Página 334 - FABS—Absolute Value

CONTENTSivVol. 2APAGE3.1.1.5 Description Column in the Instruction Summary Table. . . . . . . . . . . . . . . . . . . . . . . . . . 3-73.1.1.6 Descri

Página 335

2-10 Vol. 2AINSTRUCTION FORMAT2.2.1.1 EncodingIntel 64 and IA-32 instruction formats specify up to three registers by using 3-bit fields in the enco

Página 336 - FADD/FADDP/FIADD—Add

3-354 Vol. 2A FMUL/FMULP/FIMUL—MultiplyINSTRUCTION SET REFERENCE, A-M#NM CR0.EM[bit 2] or CR0.TS[bit 3] = 1.#PF(fault-code) If a page fault occurs.#AC

Página 337 - = FADDP

Vol. 2A 3-355INSTRUCTION SET REFERENCE, A-MFNOP—No OperationFNOP—No OperationDescriptionPerforms no FPU operation. This instruction takes up space in

Página 338 - Floating-Point Exceptions

3-356 Vol. 2A FPATAN—Partial ArctangentINSTRUCTION SET REFERENCE, A-MFPATAN—Partial ArctangentDescriptionComputes the arctangent of the source operand

Página 339

Vol. 2A 3-357INSTRUCTION SET REFERENCE, A-MFPATAN—Partial ArctangentThere is no restriction on the range of source operands that FPATAN can accept.Thi

Página 340

3-358 Vol. 2A FPATAN—Partial ArctangentINSTRUCTION SET REFERENCE, A-MFloating-Point Exceptions#IS Stack underflow occurred.#IA Source operand is an SN

Página 341

Vol. 2A 3-359INSTRUCTION SET REFERENCE, A-MFPREM—Partial RemainderFPREM—Partial RemainderDescriptionComputes the remainder obtained from dividing the

Página 342 - Table 3-24. FBSTP Results

3-360 Vol. 2A FPREM—Partial RemainderINSTRUCTION SET REFERENCE, A-MThe FPREM instruction does not compute the remainder specified in IEEE Std 754. The

Página 343

Vol. 2A 3-361INSTRUCTION SET REFERENCE, A-MFPREM—Partial RemainderFPU Flags AffectedC0 Set to bit 2 (Q2) of the quotient.C1 Set to 0 if stack underflo

Página 344

3-362 Vol. 2A FPREM1—Partial RemainderINSTRUCTION SET REFERENCE, A-MFPREM1—Partial RemainderDescriptionComputes the IEEE remainder obtained from divid

Página 345 - FCHS—Change Sign

Vol. 2A 3-363INSTRUCTION SET REFERENCE, A-MFPREM1—Partial RemainderThe FPREM1 instruction computes the remainder specified in IEEE Standard 754. This

Página 346

Vol. 2A 2-11INSTRUCTION FORMATTable 2-4. REX Prefix Fields [BITS: 0100WRXB]Field Name Bit Position Definition- 7:4 0100W 3 0 = Operand size determine

Página 347 - FCLEX/FNCLEX—Clear Exceptions

3-364 Vol. 2A FPREM1—Partial RemainderINSTRUCTION SET REFERENCE, A-MC2 Set to 0 if reduction complete; set to 1 if incomplete.C3 Set to bit 1 (Q1) of

Página 348

Vol. 2A 3-365INSTRUCTION SET REFERENCE, A-MFPTAN—Partial TangentFPTAN—Partial TangentDescriptionComputes the tangent of the source operand in register

Página 349

3-366 Vol. 2A FPTAN—Partial TangentINSTRUCTION SET REFERENCE, A-MThis instruction’s operation is the same in non-64-bit modes and 64-bit mode.Operatio

Página 350

Vol. 2A 3-367INSTRUCTION SET REFERENCE, A-MFPTAN—Partial TangentCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit Mode Exceptio

Página 351

3-368 Vol. 2A FRNDINT—Round to IntegerINSTRUCTION SET REFERENCE, A-MFRNDINT—Round to IntegerDescriptionRounds the source value in the ST(0) register t

Página 352

Vol. 2A 3-369INSTRUCTION SET REFERENCE, A-MFRNDINT—Round to IntegerCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit Mode Excep

Página 353

3-370 Vol. 2A FRSTOR—Restore x87 FPU StateINSTRUCTION SET REFERENCE, A-MFRSTOR—Restore x87 FPU StateDescriptionLoads the FPU state (operating environm

Página 354

Vol. 2A 3-371INSTRUCTION SET REFERENCE, A-MFRSTOR—Restore x87 FPU StateST(7) ← SRC[ST(7)];FPU Flags AffectedThe C0, C1, C2, C3 flags are loaded.Floati

Página 355 - Set EFLAGS

3-372 Vol. 2A FRSTOR—Restore x87 FPU StateINSTRUCTION SET REFERENCE, A-M#AC(0) If alignment checking is enabled and an unaligned memory reference is m

Página 356

Vol. 2A 3-373INSTRUCTION SET REFERENCE, A-MFSAVE/FNSAVE—Store x87 FPU StateFSAVE/FNSAVE—Store x87 FPU StateDescriptionStores the current FPU state (op

Página 357 - Vol. 2A 3-311

2-12 Vol. 2AINSTRUCTION FORMATIn the IA-32 architecture, byte registers (AH, AL, BH, BL, CH, CL, DH, and DL) are encoded in the ModR/M byte’s reg fiel

Página 358 - FCOS—Cosine

3-374 Vol. 2A FSAVE/FNSAVE—Store x87 FPU StateINSTRUCTION SET REFERENCE, A-Minstructions separately. If an exception is generated for either of these

Página 359 - Vol. 2A 3-313

Vol. 2A 3-375INSTRUCTION SET REFERENCE, A-MFSAVE/FNSAVE—Store x87 FPU StateFPU Flags AffectedThe C0, C1, C2, and C3 flags are saved and then cleared.F

Página 360

3-376 Vol. 2A FSAVE/FNSAVE—Store x87 FPU StateINSTRUCTION SET REFERENCE, A-MCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit M

Página 361

Vol. 2A 3-377INSTRUCTION SET REFERENCE, A-MFSCALE—ScaleFSCALE—ScaleDescriptionTruncates the value in the source operand (toward 0) to an integral valu

Página 362 - FDIV/FDIVP/FIDIV—Divide

3-378 Vol. 2A FSCALE—ScaleINSTRUCTION SET REFERENCE, A-Mbefore the FXTRACT operation was performed. The FSTP ST(1) instruction overwrites the exponent

Página 363 - Vol. 2A 3-317

Vol. 2A 3-379INSTRUCTION SET REFERENCE, A-MFSIN—SineFSIN—SineDescriptionComputes the sine of the source operand in register ST(0) and stores the resul

Página 364 - = FDIVP

3-380 Vol. 2A FSIN—SineINSTRUCTION SET REFERENCE, A-MST(0) ← sin(ST(0));ELSE (* Source operand out of range *)C2 ← 1;FI;FPU Flags AffectedC1 Set to 0

Página 365

Vol. 2A 3-381INSTRUCTION SET REFERENCE, A-MFSINCOS—Sine and CosineFSINCOS—Sine and CosineDescriptionComputes both the sine and the cosine of the sourc

Página 366

3-382 Vol. 2A FSINCOS—Sine and CosineINSTRUCTION SET REFERENCE, A-MOperationIF ST(0) < 263THENC2 ← 0;TEMP ← cosine(ST(0));ST(0) ← sine(ST(0));TOP ←

Página 367 - = FIDIVR

Vol. 2A 3-383INSTRUCTION SET REFERENCE, A-MFSINCOS—Sine and CosineCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit Mode Except

Página 368 - = FDIVRP

Vol. 2A 2-13INSTRUCTION FORMAT2.2.1.3 Displacement Addressing in 64-bit mode uses existing 32-bit ModR/M and SIB encodings. The ModR/M and SIB displ

Página 369

3-384 Vol. 2A FSQRT—Square RootINSTRUCTION SET REFERENCE, A-MFSQRT—Square RootDescriptionComputes the square root of the source value in the ST(0) reg

Página 370

Vol. 2A 3-385INSTRUCTION SET REFERENCE, A-MFSQRT—Square RootSource operand is a negative value (except for −0).#D Source operand is a denormal value.#

Página 371 - FICOM/FICOMP—Compare Integer

3-386 Vol. 2A FST/FSTP—Store Floating Point ValueINSTRUCTION SET REFERENCE, A-MFST/FSTP—Store Floating Point ValueDescriptionThe FST instruction copie

Página 372 - = FICOMP

Vol. 2A 3-387INSTRUCTION SET REFERENCE, A-MFST/FSTP—Store Floating Point ValueIf the destination operand is a non-empty register, the invalid-operatio

Página 373

3-388 Vol. 2A FST/FSTP—Store Floating Point ValueINSTRUCTION SET REFERENCE, A-MReal-Address Mode Exceptions#GP If a memory operand effective address i

Página 374 - FILD—Load Integer

Vol. 2A 3-389INSTRUCTION SET REFERENCE, A-MFSTCW/FNSTCW—Store x87 FPU Control WordFSTCW/FNSTCW—Store x87 FPU Control WordDescriptionStores the current

Página 375

3-390 Vol. 2A FSTCW/FNSTCW—Store x87 FPU Control WordINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#GP(0) If the destination is located in a

Página 376

Vol. 2A 3-391INSTRUCTION SET REFERENCE, A-MFSTCW/FNSTCW—Store x87 FPU Control Word#NM CR0.EM[bit 2] or CR0.TS[bit 3] = 1.#MF If there is a pending x8

Página 377

3-392 Vol. 2A FSTENV/FNSTENV—Store x87 FPU EnvironmentINSTRUCTION SET REFERENCE, A-MFSTENV/FNSTENV—Store x87 FPU EnvironmentDescriptionSaves the curre

Página 378

Vol. 2A 3-393INSTRUCTION SET REFERENCE, A-MFSTENV/FNSTENV—Store x87 FPU EnvironmentIA-32 Architecture CompatibilityWhen operating a Pentium or Intel48

Página 379 - Vol. 2A 3-333

2-14 Vol. 2AINSTRUCTION FORMATsize of the memory offset follows the address-size default (64 bits in 64-bit mode). See Table 2-6.2.2.1.5 Immediates

Página 380 - FIST/FISTP—Store Integer

3-394 Vol. 2A FSTENV/FNSTENV—Store x87 FPU EnvironmentINSTRUCTION SET REFERENCE, A-M#SS If a memory operand effective address is outside the SS segmen

Página 381 - ← not roundup; 1 ← roundup

Vol. 2A 3-395INSTRUCTION SET REFERENCE, A-MFSTSW/FNSTSW—Store x87 FPU Status WordFSTSW/FNSTSW—Store x87 FPU Status WordDescriptionStores the current v

Página 382

3-396 Vol. 2A FSTSW/FNSTSW—Store x87 FPU Status WordINSTRUCTION SET REFERENCE, A-MIA-32 Architecture CompatibilityWhen operating a Pentium or Intel486

Página 383 - Vol. 2A 3-337

Vol. 2A 3-397INSTRUCTION SET REFERENCE, A-MFSTSW/FNSTSW—Store x87 FPU Status WordVirtual-8086 Mode Exceptions#GP(0) If a memory operand effective addr

Página 384

3-398 Vol. 2A FSUB/FSUBP/FISUB—SubtractINSTRUCTION SET REFERENCE, A-MFSUB/FSUBP/FISUB—SubtractDescriptionSubtracts the source operand from the destina

Página 385 - Virtual 8086 Mode Exceptions

Vol. 2A 3-399INSTRUCTION SET REFERENCE, A-MFSUB/FSUBP/FISUB—SubtractThe FISUB instructions convert an integer source operand to double extended-preci-

Página 386

3-400 Vol. 2A FSUB/FSUBP/FISUB—SubtractINSTRUCTION SET REFERENCE, A-MIF Instruction = FSUBP THEN PopRegisterStack;FI;FPU Flags AffectedC1 Set to 0 if

Página 387 - FLD—Load Floating Point Value

Vol. 2A 3-401INSTRUCTION SET REFERENCE, A-MFSUB/FSUBP/FISUB—SubtractVirtual-8086 Mode Exceptions#GP(0) If a memory operand effective address is outsid

Página 388

3-402 Vol. 2A FSUBR/FSUBRP/FISUBR—Reverse SubtractINSTRUCTION SET REFERENCE, A-MFSUBR/FSUBRP/FISUBR—Reverse SubtractDescriptionSubtracts the destinati

Página 389

Vol. 2A 3-403INSTRUCTION SET REFERENCE, A-MFSUBR/FSUBRP/FISUBR—Reverse Subtractthe register stack being popped. In some assemblers, the mnemonic for t

Página 390

Vol. 2A 2-15INSTRUCTION FORMATThe ModR/M encoding for RIP-relative addressing does not depend on using prefix. Specifically, the r/m bit field encodin

Página 391 - Vol. 2A 3-345

3-404 Vol. 2A FSUBR/FSUBRP/FISUBR—Reverse SubtractINSTRUCTION SET REFERENCE, A-MIF Instruction = FSUBRP THEN PopRegisterStack; FI;FPU Flags AffectedC1

Página 392

Vol. 2A 3-405INSTRUCTION SET REFERENCE, A-MFSUBR/FSUBRP/FISUBR—Reverse SubtractVirtual-8086 Mode Exceptions#GP(0) If a memory operand effective addres

Página 393

3-406 Vol. 2A FTST—TESTINSTRUCTION SET REFERENCE, A-MFTST—TESTDescriptionCompares the value in the ST(0) register with 0.0 and sets the condition code

Página 394

Vol. 2A 3-407INSTRUCTION SET REFERENCE, A-MFTST—TEST#IA The source operand is a NaN value or is in an unsupported format.#D The source operand is a de

Página 395

3-408 Vol. 2A FUCOM/FUCOMP/FUCOMPP—Unordered Compare Floating Point ValuesINSTRUCTION SET REFERENCE, A-MFUCOM/FUCOMP/FUCOMPP—Unordered Compare Floatin

Página 396

Vol. 2A 3-409INSTRUCTION SET REFERENCE, A-MFUCOM/FUCOMP/FUCOMPP—Unordered Compare Floating Point ValuesThe FUCOMP instruction pops the register stack

Página 397 - FMUL/FMULP/FIMUL—Multiply

3-410 Vol. 2A FUCOM/FUCOMP/FUCOMPP—Unordered Compare Floating Point ValuesINSTRUCTION SET REFERENCE, A-M#IA One or both operands are SNaN values or ha

Página 398 - = FMULP

Vol. 2A 3-411INSTRUCTION SET REFERENCE, A-MFXAM—ExamineModR/MFXAM—ExamineModR/MDescriptionExamines the contents of the ST(0) register and sets the con

Página 399

3-412 Vol. 2A FXAM—ExamineModR/MINSTRUCTION SET REFERENCE, A-MFPU Flags AffectedC1 Sign of value in ST(0).C0, C2, C3 See Table 3-47.Floating-Point Exc

Página 400

Vol. 2A 3-413INSTRUCTION SET REFERENCE, A-MFXCH—Exchange Register ContentsFXCH—Exchange Register ContentsDescriptionExchanges the contents of register

Página 401 - FNOP—No Operation

2-16 Vol. 2AINSTRUCTION FORMAT

Página 402 - FPATAN—Partial Arctangent

3-414 Vol. 2A FXCH—Exchange Register ContentsINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#NM CR0.EM[bit 2] or CR0.TS[bit 3] = 1.#MF If the

Página 403 - Vol. 2A 3-357

Vol. 2A 3-415INSTRUCTION SET REFERENCE, A-MFXRSTOR—Restore x87 FPU, MMX , XMM, and MXCSR StateFXRSTOR—Restore x87 FPU, MMX , XMM, and MXCSR StateDescr

Página 404

3-416 Vol. 2A FXRSTOR—Restore x87 FPU, MMX , XMM, and MXCSR StateINSTRUCTION SET REFERENCE, A-Mx87 FPU and SIMD Floating-Point ExceptionsNone.Protecte

Página 405 - FPREM—Partial Remainder

Vol. 2A 3-417INSTRUCTION SET REFERENCE, A-MFXRSTOR—Restore x87 FPU, MMX , XMM, and MXCSR StateVirtual-8086 Mode ExceptionsSame exceptions as in real a

Página 406

3-418 Vol. 2A FXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2 StateINSTRUCTION SET REFERENCE, A-MFXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2

Página 407 - Vol. 2A 3-361

Vol. 2A 3-419INSTRUCTION SET REFERENCE, A-MFXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2 StateThe destination operand contains the first byte of

Página 408 - FPREM1—Partial Remainder

3-420 Vol. 2A FXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2 StateINSTRUCTION SET REFERENCE, A-MTable 3-49. Field Definitions Field DefinitionFCW

Página 409

Vol. 2A 3-421INSTRUCTION SET REFERENCE, A-MFXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2 StateThe FXSAVE instruction saves an abridged version of

Página 410

3-422 Vol. 2A FXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2 StateINSTRUCTION SET REFERENCE, A-MHere, a 1 is saved for any valid, zero, or special

Página 411 - FPTAN—Partial Tangent

Vol. 2A 3-423INSTRUCTION SET REFERENCE, A-MFXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2 StateThe J-bit is defined to be the 1-bit binary integer

Página 412

Vol. 2A 3-1CHAPTER 3INSTRUCTION SET REFERENCE, A-MThis chapter describes the instruction set for the Intel 64 and IA-32 architectures (A-M) in IA-32e,

Página 413

3-424 Vol. 2A FXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2 StateINSTRUCTION SET REFERENCE, A-MXMM2 192XMM3 208XMM4 224XMM5 240XMM6 256XMM7 272XM

Página 414 - FRNDINT—Round to Integer

Vol. 2A 3-425INSTRUCTION SET REFERENCE, A-MFXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2 StateOperationIF 64-Bit ModeTHENIF REX.W = 1Reserved ST4

Página 415

3-426 Vol. 2A FXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2 StateINSTRUCTION SET REFERENCE, A-MTHENDEST ← Save64BitPromotedFxsave(x87 FPU, MMX, X

Página 416 - FRSTOR—Restore x87 FPU State

Vol. 2A 3-427INSTRUCTION SET REFERENCE, A-MFXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2 State#UD If CR0.EM[bit 2] = 1.If CPUID.01H:EDX.FXSR[bit

Página 417

3-428 Vol. 2A FXSAVE—Save x87 FPU, MMX Technology, SSE, and SSE2 StateINSTRUCTION SET REFERENCE, A-MImplementation NoteThe order in which the processo

Página 418

Vol. 2A 3-429INSTRUCTION SET REFERENCE, A-MFXTRACT—Extract Exponent and SignificandFXTRACT—Extract Exponent and SignificandDescriptionSeparates the so

Página 419

3-430 Vol. 2A FXTRACT—Extract Exponent and SignificandINSTRUCTION SET REFERENCE, A-M#IA Source operand is an SNaN value or unsupported format.#Z ST(0)

Página 420

Vol. 2A 3-431INSTRUCTION SET REFERENCE, A-MFYL2X—Compute y * log2xFYL2X—Compute y ∗ log2xDescriptionComputes (ST(1) ∗ log2 (ST(0))), stores the result

Página 421

3-432 Vol. 2A FYL2X—Compute y * log2xINSTRUCTION SET REFERENCE, A-MOperationST(1) ← ST(1) ∗ log2ST(0);PopRegisterStack;FPU Flags AffectedC1 Set to 0 i

Página 422

Vol. 2A 3-433INSTRUCTION SET REFERENCE, A-MFYL2XP1—Compute y * log2(x +1)FYL2XP1—Compute y ∗ log2(x +1)DescriptionComputes (ST(1) ∗ log2(ST(0) + 1.0))

Página 423 - FSCALE—Scale

3-2 Vol. 2AINSTRUCTION SET REFERENCE, A-M3.1.1.1 Opcode Column in the Instruction Summary TableThe “Opcode” column in the table above shows the obje

Página 424 - 3-378 Vol. 2A FSCALE—Scale

3-434 Vol. 2A FYL2XP1—Compute y * log2(x +1)INSTRUCTION SET REFERENCE, A-Mequation is used to calculate the scale factor for a particular logarithm ba

Página 425 - FSIN—Sine

Vol. 2A 3-435INSTRUCTION SET REFERENCE, A-MHADDPD—Packed Double-FP Horizontal AddHADDPD—Packed Double-FP Horizontal AddDescriptionAdds the double-prec

Página 426 - 3-380 Vol. 2A FSIN—Sine

3-436 Vol. 2A HADDPD—Packed Double-FP Horizontal AddINSTRUCTION SET REFERENCE, A-MOperationxmm1[63:0] = xmm1[63:0] + xmm1[127:64];xmm1[127:64] = xmm2/

Página 427 - FSINCOS—Sine and Cosine

Vol. 2A 3-437INSTRUCTION SET REFERENCE, A-MHADDPD—Packed Double-FP Horizontal Add#UD If CR0.EM[bit 2] = 1.For an unmasked Streaming SIMD Extensions nu

Página 428

3-438 Vol. 2A HADDPD—Packed Double-FP Horizontal AddINSTRUCTION SET REFERENCE, A-M#UD If an unmasked SIMD floating-point exception and CR4.OSXM-MEXCP

Página 429

Vol. 2A 3-439INSTRUCTION SET REFERENCE, A-MHADDPS—Packed Single-FP Horizontal AddHADDPS—Packed Single-FP Horizontal AddDescriptionAdds the single-prec

Página 430 - FSQRT—Square Root

3-440 Vol. 2A HADDPS—Packed Single-FP Horizontal AddINSTRUCTION SET REFERENCE, A-MIn 64-bit mode, use of the REX.R prefix permits this instruction to

Página 431

Vol. 2A 3-441INSTRUCTION SET REFERENCE, A-MHADDPS—Packed Single-FP Horizontal AddReal Address Mode ExceptionsGP(0) If any part of the operand would l

Página 432

3-442 Vol. 2A HADDPS—Packed Single-FP Horizontal AddINSTRUCTION SET REFERENCE, A-M#PF(fault-code) For a page fault.#NM If CR0.TS[bit 3] = 1. #XM If

Página 433

Vol. 2A 3-443INSTRUCTION SET REFERENCE, A-MHLT—HaltHLT—HaltDescriptionStops instruction execution and places the processor in a HALT state. An enabled

Página 434

Vol. 2A 3-3INSTRUCTION SET REFERENCE, A-M3.1.1.2 Instruction Column in the Opcode Summary TableThe “Instruction” column gives the syntax of the inst

Página 435

3-444 Vol. 2A HLT—HaltINSTRUCTION SET REFERENCE, A-MCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit Mode ExceptionsSame excep

Página 436

Vol. 2A 3-445INSTRUCTION SET REFERENCE, A-MHSUBPD—Packed Double-FP Horizontal SubtractHSUBPD—Packed Double-FP Horizontal SubtractDescriptionThe HSUBPD

Página 437 - Vol. 2A 3-391

3-446 Vol. 2A HSUBPD—Packed Double-FP Horizontal SubtractINSTRUCTION SET REFERENCE, A-MOperationxmm1[63:0] = xmm1[63:0] − xmm1[127:64];xmm1[127:64] =

Página 438

Vol. 2A 3-447INSTRUCTION SET REFERENCE, A-MHSUBPD—Packed Double-FP Horizontal Subtract#UD If CR0.EM[bit 2] = 1.For an unmasked Streaming SIMD Extensi

Página 439 - Vol. 2A 3-393

3-448 Vol. 2A HSUBPD—Packed Double-FP Horizontal SubtractINSTRUCTION SET REFERENCE, A-MIf CPUID feature flag SSE3 is 0.If the LOCK prefix is used.

Página 440

Vol. 2A 3-449INSTRUCTION SET REFERENCE, A-MHSUBPS—Packed Single-FP Horizontal SubtractHSUBPS—Packed Single-FP Horizontal SubtractDescriptionSubtracts

Página 441

3-450 Vol. 2A HSUBPS—Packed Single-FP Horizontal SubtractINSTRUCTION SET REFERENCE, A-MIn 64-bit mode, use of the REX.R prefix permits this instructio

Página 442

Vol. 2A 3-451INSTRUCTION SET REFERENCE, A-MHSUBPS—Packed Single-FP Horizontal SubtractNumeric ExceptionsOverflow, Underflow, Invalid, Precision, Denor

Página 443

3-452 Vol. 2A HSUBPS—Packed Single-FP Horizontal SubtractINSTRUCTION SET REFERENCE, A-M#NM If CR0.TS[bit 3] = 1.#XM For an unmasked Streaming SIMD E

Página 444 - FSUB/FSUBP/FISUB—Subtract

Vol. 2A 3-453INSTRUCTION SET REFERENCE, A-MIDIV—Signed DivideIDIV—Signed DivideDescriptionDivides the (signed) value in the AX, DX:AX, or EDX:EAX (div

Página 445 - = result)

Vol. 2A vCONTENTSPAGECLFLUSH—Flush Cache Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-

Página 446

3-4 Vol. 2AINSTRUCTION SET REFERENCE, A-M• ptr16:16, ptr16:32 and ptr16:64 — A far pointer, typically to a code segment different from that of the ins

Página 447

3-454 Vol. 2A IDIV—Signed DivideINSTRUCTION SET REFERENCE, A-MOperationIF SRC = 0THEN #DE; (* Divide error *) FI;IF OperandSize = 8 (* Word/byte opera

Página 448

Vol. 2A 3-455INSTRUCTION SET REFERENCE, A-MIDIV—Signed DivideTHEN #DE; (* Divide error *) ELSEEAX ← temp;EDX ← EDXE:AX SignedModulus SRC;FI;FI;ELSE IF

Página 449 - − DEST; FI;

3-456 Vol. 2A IDIV—Signed DivideINSTRUCTION SET REFERENCE, A-M#GP If a memory operand effective address is outside the CS, DS, ES, FS, or GS segment l

Página 450 - FSUBRP

Vol. 2A 3-457INSTRUCTION SET REFERENCE, A-MIMUL—Signed MultiplyIMUL—Signed MultiplyOpcode Instruction 64-Bit ModeCompat/Leg ModeDescriptionF6 /5 IMUL

Página 451

3-458 Vol. 2A IMUL—Signed MultiplyINSTRUCTION SET REFERENCE, A-MDescriptionPerforms a signed multiplication of two operands. This instruction has thre

Página 452 - FTST—TEST

Vol. 2A 3-459INSTRUCTION SET REFERENCE, A-MIMUL—Signed Multiplysigned or unsigned. The CF and OF flags, however, cannot be used to determine if the up

Página 453

3-460 Vol. 2A IMUL—Signed MultiplyINSTRUCTION SET REFERENCE, A-MELSE IF (NumberOfOperands = 2)THEN temp ← DEST ∗ SRC (* Signed multiplication; temp is

Página 454

Vol. 2A 3-461INSTRUCTION SET REFERENCE, A-MIMUL—Signed Multiply#SS If a memory operand effective address is outside the SS segment limit.#UD If the L

Página 455 - = FUCOMPP

3-462 Vol. 2A IN—Input from PortINSTRUCTION SET REFERENCE, A-MIN—Input from PortDescriptionCopies the value from the I/O port specified with the secon

Página 456

Vol. 2A 3-463INSTRUCTION SET REFERENCE, A-MIN—Input from PortDEST ← SRC; (* Read from selected I/O port *)FI;ELSE (Real Mode or Protected Mode with CP

Página 457 - FXAM—ExamineModR/M

Vol. 2A 3-5INSTRUCTION SET REFERENCE, A-M• r/m32 — A doubleword general-purpose register or memory operand used for instructions whose operand-size at

Página 458

3-464 Vol. 2A INC—Increment by 1INSTRUCTION SET REFERENCE, A-MINC—Increment by 1DescriptionAdds 1 to the destination operand, while preserving the sta

Página 459

Vol. 2A 3-465INSTRUCTION SET REFERENCE, A-MINC—Increment by 1Protected Mode Exceptions#GP(0) If the destination operand is located in a non-writable s

Página 460

3-466 Vol. 2A INC—Increment by 1INSTRUCTION SET REFERENCE, A-M#AC(0) If alignment checking is enabled and an unaligned memory reference is made while

Página 461

Vol. 2A 3-467INSTRUCTION SET REFERENCE, A-MINS/INSB/INSW/INSD—Input from Port to StringINS/INSB/INSW/INSD—Input from Port to StringDescriptionCopies t

Página 462

3-468 Vol. 2A INS/INSB/INSW/INSD—Input from Port to StringINSTRUCTION SET REFERENCE, A-Mdestination operand symbol must specify the correct type (size

Página 463

Vol. 2A 3-469INSTRUCTION SET REFERENCE, A-MINS/INSB/INSW/INSD—Input from Port to StringIF (Byte transfer)THEN IF DF = 0THEN (E)DI ← (E)DI + 1; ELSE (E

Página 464 - Memory Region

3-470 Vol. 2A INS/INSB/INSW/INSD—Input from Port to StringINSTRUCTION SET REFERENCE, A-M#AC(0) If alignment checking is enabled and an unaligned memor

Página 465 - Memory Region (Contd.)

Vol. 2A 3-471INSTRUCTION SET REFERENCE, A-MINT n/INTO/INT 3—Call to Interrupt ProcedureINT n/INTO/INT 3—Call to Interrupt ProcedureDescriptionThe INT

Página 466

3-472 Vol. 2A INT n/INTO/INT 3—Call to Interrupt ProcedureINSTRUCTION SET REFERENCE, A-Mwith the IRET instruction, which pops the EFLAGS information a

Página 467 - Vol. 2A 3-421

Vol. 2A 3-473INSTRUCTION SET REFERENCE, A-MINT n/INTO/INT 3—Call to Interrupt ProcedureWhen the processor is executing in virtual-8086 mode, the IOPL

Página 468

3-6 Vol. 2AINSTRUCTION SET REFERENCE, A-M• Sreg — A segment register. The segment register bit assignments are ES = 0, CS = 1, SS = 2, DS = 3, FS = 4,

Página 469 - IA-32e Mode Operation

3-474 Vol. 2A INT n/INTO/INT 3—Call to Interrupt ProcedureINSTRUCTION SET REFERENCE, A-MCS ← IDT(Descriptor (vector_number ∗ 4), selector));EIP ← IDT(

Página 470 - Default OperandSize

Vol. 2A 3-475INSTRUCTION SET REFERENCE, A-MINT n/INTO/INT 3—Call to Interrupt Procedureor index not within GDT limitsTHEN #GP(TSS selector); FI;Access

Página 471 - Default OperandSize (Contd.)

3-476 Vol. 2A INT n/INTO/INT 3—Call to Interrupt ProcedureINSTRUCTION SET REFERENCE, A-MIF VM = 1 THEN #GP(new code segment selector); FI;IF code segm

Página 472

Vol. 2A 3-477INSTRUCTION SET REFERENCE, A-MINT n/INTO/INT 3—Call to Interrupt Procedureor stack segment does not indicate writable data segmentTHEN #T

Página 473

3-478 Vol. 2A INT n/INTO/INT 3—Call to Interrupt ProcedureINSTRUCTION SET REFERENCE, A-MFI;IF 32-bit gateTHENPush(far pointer to old stack); (* Old SS

Página 474 - Implementation Note

Vol. 2A 3-479INSTRUCTION SET REFERENCE, A-MINT n/INTO/INT 3—Call to Interrupt ProcedureNewESP ← stack address;ELSE (* TSS is 16-bit *)TSSstackAddress

Página 475

3-480 Vol. 2A INT n/INTO/INT 3—Call to Interrupt ProcedureINSTRUCTION SET REFERENCE, A-MTempSS ← SS;TempESP ← ESP;SS:ESP ← TSS(SS0:ESP0); (* Change to

Página 476

Vol. 2A 3-481INSTRUCTION SET REFERENCE, A-MINT n/INTO/INT 3—Call to Interrupt ProcedureIF instruction pointer not within code segment limitTHEN #GP(0)

Página 477 - FYL2X—Compute y ∗ log

3-482 Vol. 2A INT n/INTO/INT 3—Call to Interrupt ProcedureINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#GP(0) If the instruction pointer in

Página 478

Vol. 2A 3-483INSTRUCTION SET REFERENCE, A-MINT n/INTO/INT 3—Call to Interrupt ProcedureReal-Address Mode Exceptions#GP If a memory operand effective a

Página 479 - FYL2XP1—Compute y ∗ log

Vol. 2A 3-7INSTRUCTION SET REFERENCE, A-M• N.P. — Indicates the REX prefix does not affect the legacy instruction in 64-bit mode.• N.I. — Indicates th

Página 480

3-484 Vol. 2A INT n/INTO/INT 3—Call to Interrupt ProcedureINSTRUCTION SET REFERENCE, A-MIf the stack segment for the TSS is not a writable data segmen

Página 481

Vol. 2A 3-485INSTRUCTION SET REFERENCE, A-MINT n/INTO/INT 3—Call to Interrupt Procedure#TS(selector) If an attempt to load RSP from the TSS causes an

Página 482

3-486 Vol. 2A INVD—Invalidate Internal CachesINSTRUCTION SET REFERENCE, A-MINVD—Invalidate Internal CachesDescriptionInvalidates (flushes) the process

Página 483

Vol. 2A 3-487INSTRUCTION SET REFERENCE, A-MINVD—Invalidate Internal CachesProtected Mode Exceptions#GP(0) If the current privilege level is not 0.#UD

Página 484

3-488 Vol. 2A INVLPG—Invalidate TLB EntryINSTRUCTION SET REFERENCE, A-MINVLPG—Invalidate TLB EntryDescriptionInvalidates (flushes) the translation loo

Página 485

Vol. 2A 3-489INSTRUCTION SET REFERENCE, A-MINVLPG—Invalidate TLB EntryReal-Address Mode Exceptions#UD Operand is a register.If the LOCK prefix is used

Página 486 - Exceptions

3-490 Vol. 2A IRET/IRETD—Interrupt ReturnINSTRUCTION SET REFERENCE, A-MIRET/IRETD—Interrupt ReturnDescriptionReturns program control from an exception

Página 487

Vol. 2A 3-491INSTRUCTION SET REFERENCE, A-MIRET/IRETD—Interrupt ReturnAs with a real-address mode interrupt return, the IRET instruction pops the retu

Página 488

3-492 Vol. 2A IRET/IRETD—Interrupt ReturnINSTRUCTION SET REFERENCE, A-MEFLAGS ← (tempEFLAGS AND 257FD5H) OR (EFLAGS AND 1A0000H);ELSE (* OperandSize =

Página 489 - HLT—Halt

Vol. 2A 3-493INSTRUCTION SET REFERENCE, A-MIRET/IRETD—Interrupt ReturnELSE IF OperandSize = 32THENIF top 12 bytes of stack not within stack limitsTHEN

Página 490

3-8 Vol. 2AINSTRUCTION SET REFERENCE, A-Maddress contained in register SI relative to the SI register’s default segment (DS) or the overridden segment

Página 491

3-494 Vol. 2A IRET/IRETD—Interrupt ReturnINSTRUCTION SET REFERENCE, A-MTHEN #GP(0); FI;EIP ← Pop();EIP ← EIP AND 0000FFFFH;CS ← Pop(); (* 16-bit pop *

Página 492 - − xmm2/m128[127:64];

Vol. 2A 3-495INSTRUCTION SET REFERENCE, A-MIRET/IRETD—Interrupt ReturnIF EIP is not within code segment limit THEN #GP(0); FI;END;PROTECTED-MODE-RETUR

Página 493

3-496 Vol. 2A IRET/IRETD—Interrupt ReturnINSTRUCTION SET REFERENCE, A-M EFLAGS(IOPL) ← tempEFLAGS; IF OperandSize = 32 or OperandSize = 64THEN EFLAGS(

Página 494 - If the LOCK prefix is used

Vol. 2A 3-497INSTRUCTION SET REFERENCE, A-MIRET/IRETD—Interrupt ReturnIF CPL = 0THENEFLAGS(IOPL) ← tempEFLAGS;IF OperandSize = 32THEN EFLAGS(VM, VIF,

Página 495

3-498 Vol. 2A IRET/IRETD—Interrupt ReturnINSTRUCTION SET REFERENCE, A-MFlags AffectedAll the flags and fields in the EFLAGS register are potentially m

Página 496 - − xmm2/m128[127:96];

Vol. 2A 3-499INSTRUCTION SET REFERENCE, A-MIRET/IRETD—Interrupt ReturnVirtual-8086 Mode Exceptions#GP(0) If the return instruction pointer is not with

Página 497

3-500 Vol. 2A IRET/IRETD—Interrupt ReturnINSTRUCTION SET REFERENCE, A-MIf the stack segment selector RPL is not equal to the RPL of the return code se

Página 498

Vol. 2A 3-501INSTRUCTION SET REFERENCE, A-MJcc—Jump if Condition Is MetJcc—Jump if Condition Is MetOpcode Instruction 64-Bit ModeCompat/Leg ModeDescri

Página 499 - IDIV—Signed Divide

3-502 Vol. 2A Jcc—Jump if Condition Is MetINSTRUCTION SET REFERENCE, A-M75 cb JNZ rel8 Valid Valid Jump short if not zero (ZF=0).70 cb JO rel8 Valid V

Página 500 - = 8 (* Word/byte operation *)

Vol. 2A 3-503INSTRUCTION SET REFERENCE, A-MJcc—Jump if Condition Is Met0F 8C cw JL rel16 N.S. Valid Jump near if less (SF≠ OF). Not supported in 64-bi

Página 501

Vol. 2A 3-9INSTRUCTION SET REFERENCE, A-MAttribute for Stack” in Chapter 6, “Procedure Calls, Interrupts, and Exceptions,” of the Intel® 64 and IA-32

Página 502

3-504 Vol. 2A Jcc—Jump if Condition Is MetINSTRUCTION SET REFERENCE, A-M0F 8C cd JNGE rel32 Valid Valid Jump near if not greater or equal (SF≠ OF).0F

Página 503 - IMUL—Signed Multiply

Vol. 2A 3-505INSTRUCTION SET REFERENCE, A-MJcc—Jump if Condition Is MetDescriptionChecks the state of one or more of the status flags in the EFLAGS re

Página 504

3-506 Vol. 2A Jcc—Jump if Condition Is MetINSTRUCTION SET REFERENCE, A-Mchecked is determined by the address-size attribute. These instructions are us

Página 505

Vol. 2A 3-507INSTRUCTION SET REFERENCE, A-MJcc—Jump if Condition Is MetCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit Mode E

Página 506

3-508 Vol. 2A JMP—JumpINSTRUCTION SET REFERENCE, A-MJMP—JumpDescriptionTransfers program control to a different point in the instruction stream withou

Página 507

Vol. 2A 3-509INSTRUCTION SET REFERENCE, A-MJMP—Jump• Short jump—A near jump where the jump range is limited to –128 to +127 from the current EIP value

Página 508 - IN—Input from Port

3-510 Vol. 2A JMP—JumpINSTRUCTION SET REFERENCE, A-M• A task switch.(The JMP instruction cannot be used to perform inter-privilege-level far jumps.)In

Página 509 - Vol. 2A 3-463

Vol. 2A 3-511INSTRUCTION SET REFERENCE, A-MJMP—Jumpand save the previous task link information, allowing a return to the calling task with an IRET ins

Página 510 - INC—Increment by 1

3-512 Vol. 2A JMP—JumpINSTRUCTION SET REFERENCE, A-MFI;IF far jump and (PE = 0 or (PE = 1 AND VM = 1)) (* Real-address or virtual-8086 mode *) THEN te

Página 511

Vol. 2A 3-513INSTRUCTION SET REFERENCE, A-MJMP—JumpTHEN GP(new code segment selector); FI; IF DPL > CPL THEN #GP(segment selector); FI; IF segment

Página 512

3-10 Vol. 2AINSTRUCTION SET REFERENCE, A-Mzero (00H); if it is greater than 65535, it is represented by the saturated value 65535 (FFFFH).• LowOrderWo

Página 513

3-514 Vol. 2A JMP—JumpINSTRUCTION SET REFERENCE, A-MTHEN #GP(0); FI;IF call gate code-segment selector index outside descriptor table limitsTHEN #GP(c

Página 514

Vol. 2A 3-515INSTRUCTION SET REFERENCE, A-MJMP—Jumpor TSS DPL < TSS segment-selector RPLor TSS descriptor indicates TSS not availableTHEN #GP(TSS s

Página 515

3-516 Vol. 2A JMP—JumpINSTRUCTION SET REFERENCE, A-MIf the segment selector for a TSS has its local/global bit set for local.If a TSS segment descript

Página 516

Vol. 2A 3-517INSTRUCTION SET REFERENCE, A-MJMP—JumpIf target offset in destination operand is non-canonical.If target offset in destination operand is

Página 517

3-518 Vol. 2A LAHF—Load Status Flags into AH RegisterINSTRUCTION SET REFERENCE, A-MLAHF—Load Status Flags into AH RegisterDescriptionThis instruction

Página 518 - Table 3-56. Decision Table

Vol. 2A 3-519INSTRUCTION SET REFERENCE, A-MLAHF—Load Status Flags into AH Register64-Bit Mode Exceptions#UD If CPUID.80000001H:ECX.LAHF-SAHF[bit 0] =

Página 519

3-520 Vol. 2A LAR—Load Access Rights ByteINSTRUCTION SET REFERENCE, A-MLAR—Load Access Rights ByteDescriptionLoads the access rights from the segment

Página 520 - = 1, task gate *)

Vol. 2A 3-521INSTRUCTION SET REFERENCE, A-MLAR—Load Access Rights Byte• If the segment is not a conforming code segment, it checks that the specified

Página 521 - Vol. 2A 3-475

3-522 Vol. 2A LAR—Load Access Rights ByteINSTRUCTION SET REFERENCE, A-MZF = 0; ELSE IF SegmentDescriptor(Type) ≠ conforming code segmentand (CPL >

Página 522

Vol. 2A 3-523INSTRUCTION SET REFERENCE, A-MLAR—Load Access Rights ByteVirtual-8086 Mode Exceptions#UD The LAR instruction cannot be executed in virtua

Página 523 - Vol. 2A 3-477

Vol. 2A 3-11INSTRUCTION SET REFERENCE, A-MThe addressed bit is numbered (Offset MOD 8) within the byte at address (BitBase + (BitOffset DIV 8)) where

Página 524

3-524 Vol. 2A LDDQU—Load Unaligned Integer 128 BitsINSTRUCTION SET REFERENCE, A-MLDDQU—Load Unaligned Integer 128 BitsDescriptionThe instruction is fu

Página 525 - = 0; FI;

Vol. 2A 3-525INSTRUCTION SET REFERENCE, A-MLDDQU—Load Unaligned Integer 128 BitsIntel C/C++ Compiler Intrinsic EquivalentLDDQU __m128i _mm_lddqu_si128

Página 526

3-526 Vol. 2A LDDQU—Load Unaligned Integer 128 BitsINSTRUCTION SET REFERENCE, A-MCompatibility Mode ExceptionsSame exceptions as in protected mode.64-

Página 527

Vol. 2A 3-527INSTRUCTION SET REFERENCE, A-MLDMXCSR—Load MXCSR RegisterLDMXCSR—Load MXCSR RegisterDescriptionLoads the source operand into the MXCSR co

Página 528

3-528 Vol. 2A LDMXCSR—Load MXCSR RegisterINSTRUCTION SET REFERENCE, A-MIf CPUID.01H:EDX.SSE[bit 25] = 0.If the LOCK prefix is used.#AC(0) If alignment

Página 529

Vol. 2A 3-529INSTRUCTION SET REFERENCE, A-MLDS/LES/LFS/LGS/LSS—Load Far PointerLDS/LES/LFS/LGS/LSS—Load Far PointerDescriptionLoads a far pointer (seg

Página 530

3-530 Vol. 2A LDS/LES/LFS/LGS/LSS—Load Far PointerINSTRUCTION SET REFERENCE, A-MIf one of these instructions is executed in protected mode, additional

Página 531 - Vol. 2A 3-485

Vol. 2A 3-531INSTRUCTION SET REFERENCE, A-MLDS/LES/LFS/LGS/LSS—Load Far PointerFI;SegmentRegister ← SegmentSelector(SRC) ;SegmentRegister ← SegmentDes

Página 532

3-532 Vol. 2A LDS/LES/LFS/LGS/LSS—Load Far PointerINSTRUCTION SET REFERENCE, A-MFI;DEST ← Offset(SRC);Real-Address or Virtual-8086 ModeSegmentRegister

Página 533

Vol. 2A 3-533INSTRUCTION SET REFERENCE, A-MLDS/LES/LFS/LGS/LSS—Load Far Pointer#SS If a memory operand effective address is outside the SS segment lim

Página 534 - INVLPG—Invalidate TLB Entry

3-12 Vol. 2AINSTRUCTION SET REFERENCE, A-MSee Appendix C, “InteL® C/C++ Compiler Intrinsics and Functional Equivalents,” in the Intel® 64 and IA-32 Ar

Página 535

3-534 Vol. 2A LDS/LES/LFS/LGS/LSS—Load Far PointerINSTRUCTION SET REFERENCE, A-M#NP(selector) If FS, or GS register is being loaded with a non-NULL se

Página 536 - IRET/IRETD—Interrupt Return

Vol. 2A 3-535INSTRUCTION SET REFERENCE, A-MLEA—Load Effective AddressLEA—Load Effective AddressDescriptionComputes the effective address of the second

Página 537

3-536 Vol. 2A LEA—Load Effective AddressINSTRUCTION SET REFERENCE, A-MOperationIF OperandSize = 16 and AddressSize = 16THEN DEST ← EffectiveAddress(SR

Página 538

Vol. 2A 3-537INSTRUCTION SET REFERENCE, A-MLEA—Load Effective AddressDEST ← temp[0:15]; (* 16-bit address *)FI;ELSE IF OperandSize = 32 and AddressSiz

Página 539 - Vol. 2A 3-493

3-538 Vol. 2A LEAVE—High Level Procedure ExitINSTRUCTION SET REFERENCE, A-MLEAVE—High Level Procedure ExitDescriptionReleases the stack frame set up b

Página 540

Vol. 2A 3-539INSTRUCTION SET REFERENCE, A-MLEAVE—High Level Procedure ExitFlags AffectedNone.Protected Mode Exceptions#SS(0) If the EBP register point

Página 541 - Vol. 2A 3-495

3-540 Vol. 2A LFENCE—Load FenceINSTRUCTION SET REFERENCE, A-MLFENCE—Load FenceDescriptionPerforms a serializing operation on all load-from-memory inst

Página 542

Vol. 2A 3-541INSTRUCTION SET REFERENCE, A-MLGDT/LIDT—Load Global/Interrupt Descriptor Table RegisterLGDT/LIDT—Load Global/Interrupt Descriptor Table R

Página 543 - Vol. 2A 3-497

3-542 Vol. 2A LGDT/LIDT—Load Global/Interrupt Descriptor Table RegisterINSTRUCTION SET REFERENCE, A-MIDTR(Limit) ← SRC[0:15];IDTR(Base) ← SRC[16:47];

Página 544

Vol. 2A 3-543INSTRUCTION SET REFERENCE, A-MLGDT/LIDT—Load Global/Interrupt Descriptor Table RegisterReal-Address Mode Exceptions#UD If source operand

Página 545

Vol. 2A 3-13INSTRUCTION SET REFERENCE, A-M• The __m128i data type can hold sixteen byte, eight word, or four doubleword, or two quadword integer value

Página 546

3-544 Vol. 2A LLDT—Load Local Descriptor Table RegisterINSTRUCTION SET REFERENCE, A-MLLDT—Load Local Descriptor Table RegisterDescriptionLoads the sou

Página 547 - Jcc—Jump if Condition Is Met

Vol. 2A 3-545INSTRUCTION SET REFERENCE, A-MLLDT—Load Local Descriptor Table RegisterELSE LDTR ← INVALIDFI;Flags AffectedNone.Protected Mode Exceptions

Página 548

3-546 Vol. 2A LLDT—Load Local Descriptor Table RegisterINSTRUCTION SET REFERENCE, A-M#PF(fault-code) If a page fault occurs.#UD If the LOCK prefix is

Página 549 - Vol. 2A 3-503

Vol. 2A 3-547INSTRUCTION SET REFERENCE, A-MLMSW—Load Machine Status WordLMSW—Load Machine Status WordDescriptionLoads the source operand into the mach

Página 550

3-548 Vol. 2A LMSW—Load Machine Status WordINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#GP(0) If the current privilege level is not 0.If a

Página 551

Vol. 2A 3-549INSTRUCTION SET REFERENCE, A-MLOCK—Assert LOCK# Signal PrefixLOCK—Assert LOCK# Signal PrefixDescriptionCauses the processor’s LOCK# signa

Página 552

3-550 Vol. 2A LOCK—Assert LOCK# Signal PrefixINSTRUCTION SET REFERENCE, A-MOperationAssertLOCK#(DurationOfAccompaningInstruction);Flags AffectedNone.P

Página 553

Vol. 2A 3-551INSTRUCTION SET REFERENCE, A-MLODS/LODSB/LODSW/LODSD/LODSQ—Load StringLODS/LODSB/LODSW/LODSD/LODSQ—Load StringDescriptionLoads a byte, wo

Página 554 - JMP—Jump

3-552 Vol. 2A LODS/LODSB/LODSW/LODSD/LODSQ—Load StringINSTRUCTION SET REFERENCE, A-Mcorrect location. The location is always specified by the DS:(E)SI

Página 555 - Vol. 2A 3-509

Vol. 2A 3-553INSTRUCTION SET REFERENCE, A-MLODS/LODSB/LODSW/LODSD/LODSQ—Load StringFI;FI;ELSE IF RAX ← SRC; (* Quadword load *)THEN IF DF = 0THEN (R)S

Página 556 - • A task switch

CONTENTSviVol. 2APAGEDouble-Precision Floating-Point Value. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-231CVTSS2SI—Conver

Página 557

3-14 Vol. 2AINSTRUCTION SET REFERENCE, A-MSome intrinsics are “composites” because they require more than one instruction to implement them. You shoul

Página 558 - 3-512 Vol. 2A JMP—Jump

3-554 Vol. 2A LODS/LODSB/LODSW/LODSD/LODSQ—Load StringINSTRUCTION SET REFERENCE, A-MCompatibility Mode ExceptionsSame exceptions as in protected mode.

Página 559 - Vol. 2A 3-513

Vol. 2A 3-555INSTRUCTION SET REFERENCE, A-MLOOP/LOOPcc—Loop According to ECX CounterLOOP/LOOPcc—Loop According to ECX CounterDescriptionPerforms a loo

Página 560 - 3-514 Vol. 2A JMP—Jump

3-556 Vol. 2A LOOP/LOOPcc—Loop According to ECX CounterINSTRUCTION SET REFERENCE, A-MIF (Instruction ← LOOPE) or (Instruction ← LOOPZ)THEN IF (ZF = 1)

Página 561

Vol. 2A 3-557INSTRUCTION SET REFERENCE, A-MLOOP/LOOPcc—Loop According to ECX CounterProtected Mode Exceptions#GP(0) If the offset being jumped to is b

Página 562

3-558 Vol. 2A LSL—Load Segment LimitINSTRUCTION SET REFERENCE, A-MLSL—Load Segment LimitDescriptionLoads the unscrambled segment limit from the segmen

Página 563 - Vol. 2A 3-517

Vol. 2A 3-559INSTRUCTION SET REFERENCE, A-MLSL—Load Segment Limit• Checks that the descriptor type is valid for this instruction. All code and data se

Página 564

3-560 Vol. 2A LSL—Load Segment LimitINSTRUCTION SET REFERENCE, A-MRead segment descriptor;IF SegmentDescriptor(Type) ≠ conforming code segmentand (CPL

Página 565

Vol. 2A 3-561INSTRUCTION SET REFERENCE, A-MLSL—Load Segment LimitCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit Mode Excepti

Página 566 - LAR—Load Access Rights Byte

3-562 Vol. 2A LTR—Load Task RegisterINSTRUCTION SET REFERENCE, A-MLTR—Load Task RegisterDescriptionLoads the source operand into the segment selector

Página 567

Vol. 2A 3-563INSTRUCTION SET REFERENCE, A-MLTR—Load Task RegisterFlags AffectedNone.Protected Mode Exceptions#GP(0) If the current privilege level is

Página 568 - ≠ conforming code segment

Vol. 2A 3-15INSTRUCTION SET REFERENCE, A-Mletter mnemonic with the corresponding interrupt vector number and exception name. See Chapter 5, “Interrupt

Página 569

3-564 Vol. 2A LTR—Load Task RegisterINSTRUCTION SET REFERENCE, A-M#NP(selector) If the TSS is marked not present.#PF(fault-code) If a page fault occur

Página 570 - Implementation Notes

Vol. 2A 3-565INSTRUCTION SET REFERENCE, A-MMASKMOVDQU—Store Selected Bytes of Double QuadwordMASKMOVDQU—Store Selected Bytes of Double QuadwordDescrip

Página 571

3-566 Vol. 2A MASKMOVDQU—Store Selected Bytes of Double QuadwordINSTRUCTION SET REFERENCE, A-MIn 64-bit mode, use of the REX.R prefix permits this ins

Página 572

Vol. 2A 3-567INSTRUCTION SET REFERENCE, A-MMASKMOVDQU—Store Selected Bytes of Double QuadwordVirtual-8086 Mode ExceptionsSame exceptions as in real ad

Página 573 - LDMXCSR—Load MXCSR Register

3-568 Vol. 2A MASKMOVQ—Store Selected Bytes of QuadwordINSTRUCTION SET REFERENCE, A-MMASKMOVQ—Store Selected Bytes of QuadwordDescriptionStores select

Página 574

Vol. 2A 3-569INSTRUCTION SET REFERENCE, A-MMASKMOVQ—Store Selected Bytes of QuadwordThe MASKMOVQ instruction can be used to improve performance for al

Página 575

3-570 Vol. 2A MASKMOVQ—Store Selected Bytes of QuadwordINSTRUCTION SET REFERENCE, A-M#MF If there is a pending FPU exception.#UD If CR0.EM[bit 2] = 1

Página 576 - ≠ 3 and RPL ≠ CPL) )

Vol. 2A 3-571INSTRUCTION SET REFERENCE, A-MMAXPD—Return Maximum Packed Double-Precision Floating-Point ValuesMAXPD—Return Maximum Packed Double-Precis

Página 577 - Vol. 2A 3-531

3-572 Vol. 2A MAXPD—Return Maximum Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MELSE SRC[127:64]; FI; FI;Intel C/C++ Com

Página 578

Vol. 2A 3-573INSTRUCTION SET REFERENCE, A-MMAXPD—Return Maximum Packed Double-Precision Floating-Point ValuesVirtual-8086 Mode ExceptionsSame exceptio

Página 579

3-16 Vol. 2AINSTRUCTION SET REFERENCE, A-M3.1.1.12 Real-Address Mode Exceptions SectionThe “Real-Address Mode Exceptions” section lists the exceptio

Página 580

3-574 Vol. 2A MAXPS—Return Maximum Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MMAXPS—Return Maximum Packed Single-Preci

Página 581 - LEA—Load Effective Address

Vol. 2A 3-575INSTRUCTION SET REFERENCE, A-MMAXPS—Return Maximum Packed Single-Precision Floating-Point ValuesTHEN DEST[127:96]; ELSE SRC[127:96]; FI;

Página 582 - = 16 and AddressSize = 64

3-576 Vol. 2A MAXPS—Return Maximum Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MIf CPUID.01H:EDX.SSE[bit 25] = 0.If the

Página 583 - = 64 and AddressSize = 64

Vol. 2A 3-577INSTRUCTION SET REFERENCE, A-MMAXSD—Return Maximum Scalar Double-Precision Floating-Point ValueMAXSD—Return Maximum Scalar Double-Precisi

Página 584

3-578 Vol. 2A MAXSD—Return Maximum Scalar Double-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MIntel C/C++ Compiler Intrinsic Equivalent

Página 585 - Vol. 2A 3-539

Vol. 2A 3-579INSTRUCTION SET REFERENCE, A-MMAXSD—Return Maximum Scalar Double-Precision Floating-Point Value#PF(fault-code) For a page fault.#AC(0) I

Página 586 - LFENCE—Load Fence

3-580 Vol. 2A MAXSS—Return Maximum Scalar Single-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MMAXSS—Return Maximum Scalar Single-Precis

Página 587

Vol. 2A 3-581INSTRUCTION SET REFERENCE, A-MMAXSS—Return Maximum Scalar Single-Precision Floating-Point ValueSIMD Floating-Point ExceptionsInvalid (inc

Página 588

3-582 Vol. 2A MAXSS—Return Maximum Scalar Single-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MCompatibility Mode ExceptionsSame excepti

Página 589

Vol. 2A 3-583INSTRUCTION SET REFERENCE, A-MMFENCE—Memory FenceMFENCE—Memory FenceDescriptionPerforms a serializing operation on all load-from-memory a

Página 590

Vol. 2A 3-17INSTRUCTION SET REFERENCE, A-M3.1.1.15 SIMD Floating-Point Exceptions SectionThe “SIMD Floating-Point Exceptions” section lists exceptio

Página 591 - Vol. 2A 3-545

3-584 Vol. 2A MINPD—Return Minimum Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MMINPD—Return Minimum Packed Double-Preci

Página 592

Vol. 2A 3-585INSTRUCTION SET REFERENCE, A-MMINPD—Return Minimum Packed Double-Precision Floating-Point ValuesTHEN DEST[127:64] ELSE SRC[127:64]; FI; F

Página 593 - LMSW—Load Machine Status Word

3-586 Vol. 2A MINPD—Return Minimum Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MIf CPUID.01H:EDX.SSE2[bit 26] = 0.If the

Página 594

Vol. 2A 3-587INSTRUCTION SET REFERENCE, A-MMINPS—Return Minimum Packed Single-Precision Floating-Point ValuesMINPS—Return Minimum Packed Single-Precis

Página 595

3-588 Vol. 2A MINPS—Return Minimum Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MTHEN DEST[127:96] ELSE SRC[127:96]; FI;

Página 596

Vol. 2A 3-589INSTRUCTION SET REFERENCE, A-MMINPS—Return Minimum Packed Single-Precision Floating-Point ValuesIf CPUID.01H:EDX.SSE[bit 25] = 0.If the L

Página 597

3-590 Vol. 2A MINSD—Return Minimum Scalar Double-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MMINSD—Return Minimum Scalar Double-Precis

Página 598

Vol. 2A 3-591INSTRUCTION SET REFERENCE, A-MMINSD—Return Minimum Scalar Double-Precision Floating-Point ValueSIMD Floating-Point ExceptionsInvalid (inc

Página 599

3-592 Vol. 2A MINSD—Return Minimum Scalar Double-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MCompatibility Mode ExceptionsSame excepti

Página 600

Vol. 2A 3-593INSTRUCTION SET REFERENCE, A-MMINSS—Return Minimum Scalar Single-Precision Floating-Point ValueMINSS—Return Minimum Scalar Single-Precisi

Página 601

3-18 Vol. 2AINSTRUCTION SET REFERENCE, A-M3.2 INSTRUCTIONS (A-M)The remainder of this chapter provides descriptions of Intel 64 and IA-32 instructions

Página 602

3-594 Vol. 2A MINSS—Return Minimum Scalar Single-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MSIMD Floating-Point ExceptionsInvalid (in

Página 603

Vol. 2A 3-595INSTRUCTION SET REFERENCE, A-MMINSS—Return Minimum Scalar Single-Precision Floating-Point ValueCompatibility Mode ExceptionsSame exceptio

Página 604 - LSL—Load Segment Limit

3-596 Vol. 2A MONITOR—Set Up Monitor AddressINSTRUCTION SET REFERENCE, A-MMONITOR—Set Up Monitor AddressDescriptionThe MONITOR instruction arms addres

Página 605

Vol. 2A 3-597INSTRUCTION SET REFERENCE, A-MMONITOR—Set Up Monitor AddressOperationMONITOR sets up an address range for the monitor hardware using the

Página 606 - = 64 (* REX.W used *)

3-598 Vol. 2A MONITOR—Set Up Monitor AddressINSTRUCTION SET REFERENCE, A-M64-Bit Mode Exceptions#GP(0) If the linear address of the operand in the CS,

Página 607

Vol. 2A 3-599INSTRUCTION SET REFERENCE, A-MMOV—MoveMOV—MoveOpcode Instruction 64-Bit ModeCompat/Leg ModeDescription88 /r MOV r/m8,r8 Valid Valid Move

Página 608 - LTR—Load Task Register

3-600 Vol. 2A MOV—MoveINSTRUCTION SET REFERENCE, A-MDescriptionCopies the second operand (source operand) to the first operand (destination operand).

Página 609 - Vol. 2A 3-563

Vol. 2A 3-601INSTRUCTION SET REFERENCE, A-MMOV—Movebelow). The segment descriptor data is obtained from the GDT or LDT entry for the specified segment

Página 610

3-602 Vol. 2A MOV—MoveINSTRUCTION SET REFERENCE, A-MLoading a segment register while in protected mode results in special checks and actions, as descr

Página 611

Vol. 2A 3-603INSTRUCTION SET REFERENCE, A-MMOV—MoveProtected Mode Exceptions#GP(0) If attempt is made to load SS register with NULL segment selector.I

Página 612

Vol. 2A 3-19INSTRUCTION SET REFERENCE, A-MAAA—ASCII Adjust After AdditionAAA—ASCII Adjust After AdditionDescriptionAdjusts the sum of two unpacked BCD

Página 613

3-604 Vol. 2A MOV—MoveINSTRUCTION SET REFERENCE, A-M#SS(0) If a memory operand effective address is outside the SS segment limit.#PF(fault-code) If a

Página 614

Vol. 2A 3-605INSTRUCTION SET REFERENCE, A-MMOV—Move to/from Control RegistersMOV—Move to/from Control RegistersDescriptionMoves the contents of a cont

Página 615 - Vol. 2A 3-569

3-606 Vol. 2A MOV—Move to/from Control RegistersINSTRUCTION SET REFERENCE, A-Mand CR3 remain clear after any load of those registers; attempts to set

Página 616

Vol. 2A 3-607INSTRUCTION SET REFERENCE, A-MMOV—Move to/from Control RegistersIf an attempt is made to write invalid bit combinations in CR0 (such as s

Página 617

3-608 Vol. 2A MOV—Move to/from Debug RegistersINSTRUCTION SET REFERENCE, A-MMOV—Move to/from Debug RegistersDescriptionMoves the contents of a debug r

Página 618

Vol. 2A 3-609INSTRUCTION SET REFERENCE, A-MMOV—Move to/from Debug RegistersFlags AffectedThe OF, SF, ZF, AF, PF, and CF flags are undefined.Protected

Página 619

3-610 Vol. 2A MOVAPD—Move Aligned Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MMOVAPD—Move Aligned Packed Double-Precisi

Página 620 - > SRC[127:96])

Vol. 2A 3-611INSTRUCTION SET REFERENCE, A-MMOVAPD—Move Aligned Packed Double-Precision Floating-Point ValuesProtected Mode Exceptions#GP(0) For an ill

Página 621

3-612 Vol. 2A MOVAPD—Move Aligned Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#UD If CR0.EM[bit 2] = 1.If CR4.OSFXSR[b

Página 622

Vol. 2A 3-613INSTRUCTION SET REFERENCE, A-MMOVAPS—Move Aligned Packed Single-Precision Floating-Point ValuesMOVAPS—Move Aligned Packed Single-Precisio

Página 623 - = SNaN)

3-20 Vol. 2A AAA—ASCII Adjust After AdditionINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#UD If the LOCK prefix is used.Real-Address Mode Ex

Página 624

3-614 Vol. 2A MOVAPS—Move Aligned Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#GP(0) For an il

Página 625

Vol. 2A 3-615INSTRUCTION SET REFERENCE, A-MMOVAPS—Move Aligned Packed Single-Precision Floating-Point Values#UD If CR0.EM[bit 2] = 1.If CR4.OSFXSR[bi

Página 626 - = SNaN) THEN SRC[31:0]; FI;

3-616 Vol. 2A MOVD/MOVQ—Move Doubleword/Move QuadwordINSTRUCTION SET REFERENCE, A-MMOVD/MOVQ—Move Doubleword/Move QuadwordDescriptionCopies a doublewo

Página 627

Vol. 2A 3-617INSTRUCTION SET REFERENCE, A-MMOVD/MOVQ—Move Doubleword/Move QuadwordOperationMOVD instruction when destination operand is MMX technology

Página 628

3-618 Vol. 2A MOVD/MOVQ—Move Doubleword/Move QuadwordINSTRUCTION SET REFERENCE, A-M#UD If CR0.EM[bit 2] = 1.128-bit operations will generate #UD only

Página 629 - MFENCE—Memory Fence

Vol. 2A 3-619INSTRUCTION SET REFERENCE, A-MMOVD/MOVQ—Move Doubleword/Move Quadword#UD If CR0.EM[bit 2] = 1.(XMM register operations only) if CR4.OSFXS

Página 630 - < SRC[63:0])

3-620 Vol. 2A MOVDDUP—Move One Double-FP and DuplicateINSTRUCTION SET REFERENCE, A-MMOVDDUP—Move One Double-FP and DuplicateDescriptionThe linear addr

Página 631

Vol. 2A 3-621INSTRUCTION SET REFERENCE, A-MMOVDDUP—Move One Double-FP and Duplicatexmm1[127:64] = m64; ELSE (* Move instruction *)xmm1[63:0] = xmm2[63

Página 632

3-622 Vol. 2A MOVDDUP—Move One Double-FP and DuplicateINSTRUCTION SET REFERENCE, A-MVirtual 8086 Mode ExceptionsGP(0) If any part of the operand woul

Página 633 - < SRC[127:96])

Vol. 2A 3-623INSTRUCTION SET REFERENCE, A-MMOVDQA—Move Aligned Double QuadwordMOVDQA—Move Aligned Double QuadwordDescriptionMoves a double quadword fr

Página 634

Vol. 2A 3-21INSTRUCTION SET REFERENCE, A-MAAD—ASCII Adjust AX Before DivisionAAD—ASCII Adjust AX Before DivisionDescriptionAdjusts two unpacked BCD di

Página 635

3-624 Vol. 2A MOVDQA—Move Aligned Double QuadwordINSTRUCTION SET REFERENCE, A-M#SS(0) If a memory operand effective address is outside the SS segment

Página 636 - = SNaN) THEN SRC[63:0]; FI;

Vol. 2A 3-625INSTRUCTION SET REFERENCE, A-MMOVDQU—Move Unaligned Double QuadwordMOVDQU—Move Unaligned Double QuadwordDescriptionMoves a double quadwor

Página 637

3-626 Vol. 2A MOVDQU—Move Unaligned Double QuadwordINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#AC(0) If alignment checking is enabled and

Página 638

Vol. 2A 3-627INSTRUCTION SET REFERENCE, A-MMOVDQU—Move Unaligned Double Quadword#UD If CR0.EM[bit 2] = 1.If CR4.OSFXSR[bit 9] = 0.If CPUID.01H:EDX.SS

Página 639

3-628 Vol. 2A MOVDQ2Q—Move Quadword from XMM to MMX Technology RegisterINSTRUCTION SET REFERENCE, A-MMOVDQ2Q—Move Quadword from XMM to MMX Technology

Página 640

Vol. 2A 3-629INSTRUCTION SET REFERENCE, A-MMOVDQ2Q—Move Quadword from XMM to MMX Technology RegisterVirtual-8086 Mode ExceptionsSame exceptions as in

Página 641

3-630 Vol. 2A MOVHLPS— Move Packed Single-Precision Floating-Point Values High to LowINSTRUCTION SET REFERENCE, A-MMOVHLPS— Move Packed Single-Precisi

Página 642

Vol. 2A 3-631INSTRUCTION SET REFERENCE, A-MMOVHLPS— Move Packed Single-Precision Floating-Point Values High to LowVirtual 8086 Mode ExceptionsSame exc

Página 643 - Vol. 2A 3-597

3-632 Vol. 2A MOVHPD—Move High Packed Double-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MMOVHPD—Move High Packed Double-Precision Floa

Página 644

Vol. 2A 3-633INSTRUCTION SET REFERENCE, A-MMOVHPD—Move High Packed Double-Precision Floating-Point ValueProtected Mode Exceptions#GP(0) For an illegal

Página 645 - MOV—Move

3-22 Vol. 2A AAD—ASCII Adjust AX Before DivisionINSTRUCTION SET REFERENCE, A-MFlags AffectedThe SF, ZF, and PF flags are set according to the resultin

Página 646

3-634 Vol. 2A MOVHPD—Move High Packed Double-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MIf CPUID.01H:EDX.SSE2[bit 26] = 0.If the LOCK

Página 647

Vol. 2A 3-635INSTRUCTION SET REFERENCE, A-MMOVHPS—Move High Packed Single-Precision Floating-Point ValuesMOVHPS—Move High Packed Single-Precision Floa

Página 648

3-636 Vol. 2A MOVHPS—Move High Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#SS(0) For an illegal address in the SS seg

Página 649

Vol. 2A 3-637INSTRUCTION SET REFERENCE, A-MMOVHPS—Move High Packed Single-Precision Floating-Point Values#AC(0) If alignment checking is enabled and a

Página 650

3-638 Vol. 2A MOVLHPS—Move Packed Single-Precision Floating-Point Values Low to HighINSTRUCTION SET REFERENCE, A-MMOVLHPS—Move Packed Single-Precision

Página 651

Vol. 2A 3-639INSTRUCTION SET REFERENCE, A-MMOVLHPS—Move Packed Single-Precision Floating-Point Values Low to HighCompatibility Mode ExceptionsSame exc

Página 652

3-640 Vol. 2A MOVLPD—Move Low Packed Double-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MMOVLPD—Move Low Packed Double-Precision Floati

Página 653

Vol. 2A 3-641INSTRUCTION SET REFERENCE, A-MMOVLPD—Move Low Packed Double-Precision Floating-Point Value#SS(0) For an illegal address in the SS segmen

Página 654

3-642 Vol. 2A MOVLPS—Move Low Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MMOVLPS—Move Low Packed Single-Precision Float

Página 655 - Vol. 2A 3-609

Vol. 2A 3-643INSTRUCTION SET REFERENCE, A-MMOVLPS—Move Low Packed Single-Precision Floating-Point Values#SS(0) For an illegal address in the SS segme

Página 656

Vol. 2A 3-23INSTRUCTION SET REFERENCE, A-MAAM—ASCII Adjust AX After MultiplyAAM—ASCII Adjust AX After MultiplyDescriptionAdjusts the result of the mul

Página 657

3-644 Vol. 2A MOVLPS—Move Low Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#AC(0) If alignment checking is enabled and a

Página 658 - If CR4.OSFXSR[bit 9] = 0

Vol. 2A 3-645INSTRUCTION SET REFERENCE, A-MMOVMSKPD—Extract Packed Double-Precision Floating-Point Sign MaskMOVMSKPD—Extract Packed Double-Precision F

Página 659

3-646 Vol. 2A MOVMSKPD—Extract Packed Double-Precision Floating-Point Sign MaskINSTRUCTION SET REFERENCE, A-M#UD If CR0.EM[bit 2] = 1.If CR4.OSFXSR[b

Página 660

Vol. 2A 3-647INSTRUCTION SET REFERENCE, A-MMOVMSKPS—Extract Packed Single-Precision Floating-Point Sign MaskMOVMSKPS—Extract Packed Single-Precision F

Página 661

3-648 Vol. 2A MOVMSKPS—Extract Packed Single-Precision Floating-Point Sign MaskINSTRUCTION SET REFERENCE, A-M#UD If CR0.EM[bit 2] = 1.If CR4.OSFXSR[b

Página 662

Vol. 2A 3-649INSTRUCTION SET REFERENCE, A-MMOVNTDQ—Store Double Quadword Using Non-Temporal HintMOVNTDQ—Store Double Quadword Using Non-Temporal HintD

Página 663

3-650 Vol. 2A MOVNTDQ—Store Double Quadword Using Non-Temporal HintINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#GP(0) For an illegal memory

Página 664

Vol. 2A 3-651INSTRUCTION SET REFERENCE, A-MMOVNTDQ—Store Double Quadword Using Non-Temporal Hint#UD If CR0.EM[bit 2] = 1.If CR4.OSFXSR[bit 9] = 0.If C

Página 665 - Vol. 2A 3-619

3-652 Vol. 2A MOVNTI—Store Doubleword Using Non-Temporal HintINSTRUCTION SET REFERENCE, A-MMOVNTI—Store Doubleword Using Non-Temporal HintDescriptionM

Página 666

Vol. 2A 3-653INSTRUCTION SET REFERENCE, A-MMOVNTI—Store Doubleword Using Non-Temporal HintProtected Mode Exceptions#GP(0) For an illegal memory operan

Página 667

Vol. 2A viiCONTENTSPAGEFLD—Load Floating Point Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3

Página 668

3-24 Vol. 2A AAM—ASCII Adjust AX After MultiplyINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#DE If an immediate value of 0 is used.#UD If t

Página 669

3-654 Vol. 2A MOVNTPD—Store Packed Double-Precision Floating-Point Values Using Non-TemporalHintINSTRUCTION SET REFERENCE, A-MMOVNTPD—Store Packed Dou

Página 670

Vol. 2A 3-655INSTRUCTION SET REFERENCE, A-MMOVNTPD—Store Packed Double-Precision Floating-Point Values Using Non-Temporal HintProtected Mode Exception

Página 671

3-656 Vol. 2A MOVNTPD—Store Packed Double-Precision Floating-Point Values Using Non-TemporalHintINSTRUCTION SET REFERENCE, A-M#UD If CR0.EM[bit 2] = 1

Página 672

Vol. 2A 3-657INSTRUCTION SET REFERENCE, A-MMOVNTPS—Store Packed Single-Precision Floating-Point Values Using Non-Temporal HintMOVNTPS—Store Packed Sin

Página 673

3-658 Vol. 2A MOVNTPS—Store Packed Single-Precision Floating-Point Values Using Non-TemporalHintINSTRUCTION SET REFERENCE, A-MProtected Mode Exception

Página 674

Vol. 2A 3-659INSTRUCTION SET REFERENCE, A-MMOVNTPS—Store Packed Single-Precision Floating-Point Values Using Non-Temporal Hint#UD If CR0.EM[bit 2] = 1

Página 675

3-660 Vol. 2A MOVNTQ—Store of Quadword Using Non-Temporal HintINSTRUCTION SET REFERENCE, A-MMOVNTQ—Store of Quadword Using Non-Temporal HintDescriptio

Página 676

Vol. 2A 3-661INSTRUCTION SET REFERENCE, A-MMOVNTQ—Store of Quadword Using Non-Temporal Hint#SS(0) For an illegal address in the SS segment. #PF(fault

Página 677

3-662 Vol. 2A MOVNTQ—Store of Quadword Using Non-Temporal HintINSTRUCTION SET REFERENCE, A-M#UD If CR0.EM[bit 2] = 1.If CPUID.01H:EDX.SSE[bit 25] = 0.

Página 678

Vol. 2A 3-663INSTRUCTION SET REFERENCE, A-MMOVQ—Move QuadwordMOVQ—Move QuadwordDescriptionCopies a quadword from the source operand (second operand) t

Página 679

Vol. 2A 3-25INSTRUCTION SET REFERENCE, A-MAAS—ASCII Adjust AL After SubtractionAAS—ASCII Adjust AL After SubtractionDescriptionAdjusts the result of t

Página 680

3-664 Vol. 2A MOVQ—Move QuadwordINSTRUCTION SET REFERENCE, A-MDEST[127:64] ← 0000000000000000H;Flags AffectedNone.SIMD Floating-Point ExceptionsNone.P

Página 681

Vol. 2A 3-665INSTRUCTION SET REFERENCE, A-MMOVQ—Move QuadwordVirtual-8086 Mode ExceptionsSame exceptions as in real address mode.#PF(fault-code) If a

Página 682

3-666 Vol. 2A MOVQ2DQ—Move Quadword from MMX Technology to XMM RegisterINSTRUCTION SET REFERENCE, A-MMOVQ2DQ—Move Quadword from MMX Technology to XMM

Página 683 - Vol. 2A 3-637

Vol. 2A 3-667INSTRUCTION SET REFERENCE, A-MMOVQ2DQ—Move Quadword from MMX Technology to XMM RegisterVirtual-8086 Mode ExceptionsSame exceptions as in

Página 684

3-668 Vol. 2A MOVS/MOVSB/MOVSW/MOVSD/MOVSQ—Move Data from String to StringINSTRUCTION SET REFERENCE, A-MMOVS/MOVSB/MOVSW/MOVSD/MOVSQ—Move Data from St

Página 685

Vol. 2A 3-669INSTRUCTION SET REFERENCE, A-MMOVS/MOVSB/MOVSW/MOVSD/MOVSQ—Move Data from String to StringAt the assembly-code level, two forms of this i

Página 686

3-670 Vol. 2A MOVS/MOVSB/MOVSW/MOVSD/MOVSQ—Move Data from String to StringINSTRUCTION SET REFERENCE, A-M(E)SI ← (E)SI – 1; (E)DI ← (E)DI – 1; FI;ELSE

Página 687

Vol. 2A 3-671INSTRUCTION SET REFERENCE, A-MMOVS/MOVSB/MOVSW/MOVSD/MOVSQ—Move Data from String to String(R|E)SI ← (R|E)SI + 4; (R|E)DI ← (R|E)DI + 4; F

Página 688

3-672 Vol. 2A MOVS/MOVSB/MOVSW/MOVSD/MOVSQ—Move Data from String to StringINSTRUCTION SET REFERENCE, A-MVirtual-8086 Mode Exceptions#GP(0) If a memory

Página 689

Vol. 2A 3-673INSTRUCTION SET REFERENCE, A-MMOVSD—Move Scalar Double-Precision Floating-Point ValueMOVSD—Move Scalar Double-Precision Floating-Point Va

Página 690

3-26 Vol. 2A AAS—ASCII Adjust AL After SubtractionINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#UD If the LOCK prefix is used.Real-Address

Página 691

3-674 Vol. 2A MOVSD—Move Scalar Double-Precision Floating-Point ValueINSTRUCTION SET REFERENCE, A-MMOVSD void _mm_store_sd (double *p, __m128d a)MOVSD

Página 692

Vol. 2A 3-675INSTRUCTION SET REFERENCE, A-MMOVSD—Move Scalar Double-Precision Floating-Point Value64-Bit Mode Exceptions#SS(0) If a memory address ref

Página 693

3-676 Vol. 2A MOVSHDUP—Move Packed Single-FP High and DuplicateINSTRUCTION SET REFERENCE, A-MMOVSHDUP—Move Packed Single-FP High and DuplicateDescript

Página 694

Vol. 2A 3-677INSTRUCTION SET REFERENCE, A-MMOVSHDUP—Move Packed Single-FP High and DuplicateOperationIF (Source == m128) THEN (* Load instruction *)x

Página 695

3-678 Vol. 2A MOVSHDUP—Move Packed Single-FP High and DuplicateINSTRUCTION SET REFERENCE, A-MReal Address Mode ExceptionsGP(0) If any part of the ope

Página 696

Vol. 2A 3-679INSTRUCTION SET REFERENCE, A-MMOVSLDUP—Move Packed Single-FP Low and DuplicateMOVSLDUP—Move Packed Single-FP Low and DuplicateDescription

Página 697 - #UD If CR0.EM[bit 2] = 1

3-680 Vol. 2A MOVSLDUP—Move Packed Single-FP Low and DuplicateINSTRUCTION SET REFERENCE, A-MOperationIF (Source == m128) THEN (* Load instruction *)x

Página 698

Vol. 2A 3-681INSTRUCTION SET REFERENCE, A-MMOVSLDUP—Move Packed Single-FP Low and DuplicateReal Address Mode ExceptionsGP(0) If any part of the opera

Página 699

3-682 Vol. 2A MOVSS—Move Scalar Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MMOVSS—Move Scalar Single-Precision Floating-Point

Página 700 - Non-Temporal Hint

Vol. 2A 3-683INSTRUCTION SET REFERENCE, A-MMOVSS—Move Scalar Single-Precision Floating-Point ValuesMOVSS void _mm_store_ss(float * p, __m128 a)MOVSS _

Página 701

Vol. 2A 3-27INSTRUCTION SET REFERENCE, A-MADC—Add with CarryADC—Add with CarryOpcode Instruction 64-Bit ModeCompat/Leg ModeDescription14 ib ADC AL, im

Página 702

3-684 Vol. 2A MOVSS—Move Scalar Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M64-Bit Mode Exceptions#SS(0) If a memory address r

Página 703

Vol. 2A 3-685INSTRUCTION SET REFERENCE, A-MMOVSX/MOVSXD—Move with Sign-ExtensionMOVSX/MOVSXD—Move with Sign-ExtensionDescriptionCopies the contents of

Página 704

3-686 Vol. 2A MOVSX/MOVSXD—Move with Sign-ExtensionINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#GP(0) If a memory operand effective address

Página 705

Vol. 2A 3-687INSTRUCTION SET REFERENCE, A-MMOVUPD—Move Unaligned Packed Double-Precision Floating-Point ValuesMOVUPD—Move Unaligned Packed Double-Prec

Página 706

3-688 Vol. 2A MOVUPD—Move Unaligned Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MProtected Mode Exceptions#AC(0) If alig

Página 707

Vol. 2A 3-689INSTRUCTION SET REFERENCE, A-MMOVUPD—Move Unaligned Packed Double-Precision Floating-Point Values#UD If CR0.EM[bit 2] = 1.If CR4.OSFXSR[

Página 708

3-690 Vol. 2A MOVUPS—Move Unaligned Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MMOVUPS—Move Unaligned Packed Single-Pre

Página 709 - MOVQ—Move Quadword

Vol. 2A 3-691INSTRUCTION SET REFERENCE, A-MMOVUPS—Move Unaligned Packed Single-Precision Floating-Point ValuesProtected Mode Exceptions#AC(0) If align

Página 710

3-692 Vol. 2A MOVUPS—Move Unaligned Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#UD If CR0.EM[bit 2] = 1.If CR4.OSFXSR

Página 711

Vol. 2A 3-693INSTRUCTION SET REFERENCE, A-MMOVZX—Move with Zero-ExtendMOVZX—Move with Zero-ExtendDescriptionCopies the contents of the source operand

Página 712

3-28 Vol. 2A ADC—Add with CarryINSTRUCTION SET REFERENCE, A-MDescriptionAdds the destination operand (first operand), the source operand (second opera

Página 713

3-694 Vol. 2A MOVZX—Move with Zero-ExtendINSTRUCTION SET REFERENCE, A-M#SS(0) If a memory operand effective address is outside the SS segment limit.#P

Página 714 - String to String

Vol. 2A 3-695INSTRUCTION SET REFERENCE, A-MMUL—Unsigned MultiplyMUL—Unsigned MultiplyDescriptionPerforms an unsigned multiplication of the first opera

Página 715

3-696 Vol. 2A MUL—Unsigned MultiplyINSTRUCTION SET REFERENCE, A-MOperationIF (Byte operation)THEN AX ← AL ∗ SRC;ELSE (* Word or doubleword operation *

Página 716

Vol. 2A 3-697INSTRUCTION SET REFERENCE, A-MMUL—Unsigned Multiply#SS(0) If a memory operand effective address is outside the SS segment limit.#PF(fault

Página 717

3-698 Vol. 2A MULPD—Multiply Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MMULPD—Multiply Packed Double-Precision Floatin

Página 718

Vol. 2A 3-699INSTRUCTION SET REFERENCE, A-MMULPD—Multiply Packed Double-Precision Floating-Point Values#UD If an unmasked SIMD floating-point excepti

Página 719

3-700 Vol. 2A MULPD—Multiply Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#UD If an unmasked SIMD floating-point except

Página 720

Vol. 2A 3-701INSTRUCTION SET REFERENCE, A-MMULPS—Multiply Packed Single-Precision Floating-Point ValuesMULPS—Multiply Packed Single-Precision Floating

Página 721

3-702 Vol. 2A MULPS—Multiply Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#XM If an unmasked SIMD floating-point except

Página 722

Vol. 2A 3-703INSTRUCTION SET REFERENCE, A-MMULPS—Multiply Packed Single-Precision Floating-Point Values#XM If an unmasked SIMD floating-point excepti

Página 723

Vol. 2A 3-29INSTRUCTION SET REFERENCE, A-MADC—Add with CarryIf the DS, ES, FS, or GS register is used to access memory and it contains a NULL segment

Página 724

3-704 Vol. 2A MULSD—Multiply Scalar Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MMULSD—Multiply Scalar Double-Precision Floatin

Página 725

Vol. 2A 3-705INSTRUCTION SET REFERENCE, A-MMULSD—Multiply Scalar Double-Precision Floating-Point Values#UD If an unmasked SIMD floating-point excepti

Página 726

3-706 Vol. 2A MULSD—Multiply Scalar Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#UD If an unmasked SIMD floating-point except

Página 727

Vol. 2A 3-707INSTRUCTION SET REFERENCE, A-MMULSS—Multiply Scalar Single-Precision Floating-Point ValuesMULSS—Multiply Scalar Single-Precision Floating

Página 728

3-708 Vol. 2A MULSS—Multiply Scalar Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#UD If an unmasked SIMD floating-point except

Página 729

Vol. 2A 3-709INSTRUCTION SET REFERENCE, A-MMULSS—Multiply Scalar Single-Precision Floating-Point Values#UD If an unmasked SIMD floating-point excepti

Página 730

3-710 Vol. 2A MWAIT—Monitor WaitINSTRUCTION SET REFERENCE, A-MMWAIT—Monitor WaitDescriptionMWAIT instruction provides hints to allow the processor to

Página 731

Vol. 2A 3-711INSTRUCTION SET REFERENCE, A-MMWAIT—Monitor Waitprocessor will exit the state and handle the interrupt. If an SMI caused the processor to

Página 732

3-712 Vol. 2A MWAIT—Monitor WaitINSTRUCTION SET REFERENCE, A-MNote that if MWAIT is used to enter any of the C-states that are numerically higher than

Página 733

Vol. 2A 3-713INSTRUCTION SET REFERENCE, A-MMWAIT—Monitor WaitEDX = 0 (* Hints *)IF ( !trigger_store_happened) {MONITOR EAX, ECX, EDXIF ( !trigger_stor

Página 734

3-30 Vol. 2A ADD—AddINSTRUCTION SET REFERENCE, A-MADD—AddOpcode Instruction 64-Bit Mode Compat/Leg ModeDescription04 ib ADD AL, imm8 Valid Valid Add i

Página 735

3-714 Vol. 2A MWAIT—Monitor WaitINSTRUCTION SET REFERENCE, A-MCompatibility Mode ExceptionsSame exceptions as in protected mode.64-Bit Mode Exceptions

Página 736

Vol. 2A 3-31INSTRUCTION SET REFERENCE, A-MADD—AddDescriptionAdds the destination operand (first operand) and the source operand (second operand) and t

Página 737

3-32 Vol. 2A ADD—AddINSTRUCTION SET REFERENCE, A-M#SS If a memory operand effective address is outside the SS segment limit.#UD If the LOCK prefix is

Página 738

Vol. 2A 3-33INSTRUCTION SET REFERENCE, A-MADDPD—Add Packed Double-Precision Floating-Point ValuesADDPD—Add Packed Double-Precision Floating-Point Valu

Página 739 - MOVZX—Move with Zero-Extend

CONTENTSviiiVol. 2APAGEJMP—Jump . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Página 740

3-34 Vol. 2A ADDPD—Add Packed Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#UD If an unmasked SIMD floating-point exception an

Página 741 - MUL—Unsigned Multiply

Vol. 2A 3-35INSTRUCTION SET REFERENCE, A-MADDPD—Add Packed Double-Precision Floating-Point Values#UD If an unmasked SIMD floating-point exception and

Página 742

3-36 Vol. 2A ADDPS—Add Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MADDPS—Add Packed Single-Precision Floating-Point Val

Página 743

Vol. 2A 3-37INSTRUCTION SET REFERENCE, A-MADDPS—Add Packed Single-Precision Floating-Point Values#XM If an unmasked SIMD floating-point exception and

Página 744

3-38 Vol. 2A ADDPS—Add Packed Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#XM If an unmasked SIMD floating-point exception an

Página 745

Vol. 2A 3-39INSTRUCTION SET REFERENCE, A-MADDSD—Add Scalar Double-Precision Floating-Point ValuesADDSD—Add Scalar Double-Precision Floating-Point Valu

Página 746

3-40 Vol. 2A ADDSD—Add Scalar Double-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#UD If an unmasked SIMD floating-point exception an

Página 747 - Vol. 2A 3-701

Vol. 2A 3-41INSTRUCTION SET REFERENCE, A-MADDSD—Add Scalar Double-Precision Floating-Point Values#UD If an unmasked SIMD floating-point exception and

Página 748

3-42 Vol. 2A ADDSS—Add Scalar Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-MADDSS—Add Scalar Single-Precision Floating-Point Val

Página 749 - Vol. 2A 3-703

Vol. 2A 3-43INSTRUCTION SET REFERENCE, A-MADDSS—Add Scalar Single-Precision Floating-Point Values#UD If an unmasked SIMD floating-point exception and

Página 750

Vol. 2A ixCONTENTSPAGEMOVNTDQ—Store Double Quadword Using Non-Temporal Hint . . . . . . . . . . . . . . . . . 3-649MOVNTI—Store Doubleword Using Non-

Página 751

3-44 Vol. 2A ADDSS—Add Scalar Single-Precision Floating-Point ValuesINSTRUCTION SET REFERENCE, A-M#UD If an unmasked SIMD floating-point exception an

Página 752

Vol. 2A 3-45INSTRUCTION SET REFERENCE, A-MADDSUBPD—Packed Double-FP Add/SubtractADDSUBPD—Packed Double-FP Add/SubtractDescriptionAdds the double-preci

Página 753 - Vol. 2A 3-707

3-46 Vol. 2A ADDSUBPD—Packed Double-FP Add/SubtractINSTRUCTION SET REFERENCE, A-MOperationxmm1[63:0] = xmm1[63:0] − xmm2/m128[63:0];xmm1[127:64] = xmm

Página 754

Vol. 2A 3-47INSTRUCTION SET REFERENCE, A-MADDSUBPD—Packed Double-FP Add/Subtract#UD If CR0.EM[bit 2] = 1.For an unmasked Streaming SIMD Extensions num

Página 755 - Vol. 2A 3-709

3-48 Vol. 2A ADDSUBPD—Packed Double-FP Add/SubtractINSTRUCTION SET REFERENCE, A-M#UD If an unmasked SIMD floating-point exception and CR4.OSXM-MEXCPT

Página 756 - MWAIT—Monitor Wait

Vol. 2A 3-49INSTRUCTION SET REFERENCE, A-MADDSUBPS—Packed Single-FP Add/SubtractADDSUBPS—Packed Single-FP Add/SubtractDescriptionAdds odd-numbered sin

Página 757 - MWAIT for Power Management

3-50 Vol. 2A ADDSUBPS—Packed Single-FP Add/SubtractINSTRUCTION SET REFERENCE, A-MOperationxmm1[31:0] = xmm1[31:0] − xmm2/m128[31:0];xmm1[63:32] = xmm1

Página 758

Vol. 2A 3-51INSTRUCTION SET REFERENCE, A-MADDSUBPS—Packed Single-FP Add/Subtract#XM For an unmasked Streaming SIMD Extensions numeric excep-tion, CR4

Página 759

3-52 Vol. 2A ADDSUBPS—Packed Single-FP Add/SubtractINSTRUCTION SET REFERENCE, A-M#UD If an unmasked SIMD floating-point exception and CR4.OSXM-MEXCPT

Página 760

Vol. 2A 3-53INSTRUCTION SET REFERENCE, A-MAND—Logical ANDAND—Logical ANDOpcode Instruction 64-Bit ModeComp/Leg ModeDescription24 ib AND AL, imm8 Valid

Comentários a estes Manuais

Sem comentários