Volume 1 Basic Architecture (794100), страница 11
Текст из файла (страница 11)
. . . . . . . . . . . . . . . . . . . . . 11-13Example Masked Response for Packed Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-24Asymmetric Processing in ADDSUBPD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . 12-2Horizontal Data Movement in HADDPD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3CONTENTSPAGEFigure 12-3.Figure 13-1.Figure 13-2.Figure D-1.Figure D-2.Figure D-3.Figure D-4.Figure D-5.Figure D-6.Figure E-1.Horizontal Data Movement in PHADDD . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-10Memory-Mapped I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13-3I/O Permission Bit Map . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13-6Recommended Circuit for MS-DOS Compatibility x87 FPUException Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . D-7Behavior of Signals During x87 FPU Exception Handling . . . . . . . . . . . . . . . . . . . . . . . . D-8Timing of Receipt of External Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-9Arithmetic Example Using Infinity .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .D-13General Program Flow for DNA Exception Handler . . . . . . . . . . . . . . . . . . . . . . . . . . . .D-26Program Flow for a Numeric Exception Dispatch Routine . . . . . . . . . . . . . . . . . .
. . . .D-27Control Flow for Handling Unmasked Floating-Point Exceptions . . . . . . . . . . . . . . . . . E-6Vol. 1 xixCONTENTSPAGETABLESTable 2-1.Table 2-2.Table 2-3.Table 3-1.Table 3-2.Table 3-3.Table 3-4.Table 3-5.Table 4-1.Table 4-2.Table 4-3.Table 4-4.Table 4-5.Table 4-6.Table 4-7.Table 4-8.Table 4-10.Table 4-9.Table 4-11.Table 5-1.Table 6-1.Table 7-1.Table 7-2.Table 7-3.Table 7-4.Table 8-1.Table 8-2.Table 8-3.Table 8-4.Table 8-5.Table 8-6.Table 8-7.Table 8-8.Table 8-9.Table 8-10.Table 8-11.Table 9-1.Table 9-2.Table 9-3.Table 10-1.Table 11-1.Table 11-2.xx Vol. 1Key Features of Most Recent IA-32 Processors. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . 2-23Key Features of Most Recent Intel 64 Processors . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-24Key Features of Previous Generations of IA-32 Processors . . . . . . . . . . . .
. . . . . . . 2-26Instruction Pointer Sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12Addressable General Purpose Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-17Effective Operand- and Address-Size Attributes . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . 3-25Effective Operand- and Address-Size Attributes in 64-Bit Mode . . . . . . . . . . . . . . . 3-26Default Segment Selection Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-29Signed Integer Encodings. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5Length, Precision, and Range of Floating-Point Data Types . . . . . . . . . . . . . . . . . . . . . 4-6Floating-Point Number and NaN Encodings . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . 4-6Packed Decimal Integer Encodings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13Real and Floating-Point Number Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-15Denormalization Process . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-19Rules for Handling NaNs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-21Rounding Modes and Encoding of Rounding Control (RC) Field . . . . . . . . . . .
. . . . . . 4-23Masked Responses to Numeric Overflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28Numeric Overflow Thresholds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28Numeric Underflow (Normalized) Thresholds . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . 4-29Instruction Groups and IA-32 Processors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1Exceptions and Interrupts . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14Move Instruction Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4Conditional Move Instructions . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . 7-6Bit Test and Modify Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-20Conditional Jump Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-23Condition Code Interpretation . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8Precision Control Field (PC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-12Unsupported Double Extended-Precision Floating-Point Encodings andPseudo-Denormals . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-21Data Transfer Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 8-23Floating-Point Conditional Move Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-23Setting of x87 FPU Condition Code Flags for Floating-Point NumberComparisons . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-27Setting of EFLAGS Status Flags for Floating-Point Number Comparisons . . . . . . . 8-28TEST Instruction Constants for Conditional Branching . . . . . . . . . . . . . . . . . . . . . . . . . 8-29Arithmetic and Non-arithmetic Instructions. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . 8-35Invalid Arithmetic Operations and the Masked Responses to Them . . . . . . . . . . . . 8-38Divide-By-Zero Conditions and the Masked Responses to Them . . . . . . . . . . . . . . . 8-40Data Range Limits for Saturation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . 9-6MMX Instruction Set Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7Effect of Prefixes on MMX Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-15PREFETCHh Instructions Caching Hints . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-20Masked Responses of SSE/SSE2/SSE3 Instructions to Invalid ArithmeticOperations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-20SSE and SSE2 State Following a Power-up/Reset or INIT . . . . . . . . .
. . . . . . . . . . . . 11-30CONTENTSPAGETable 11-3.Table 13-1.Table A-1.Table A-2.Table B-1.Table C-1.Table C-2.Table C-3.Table C-4.Table C-5.Table E-1.Table E-2.Table E-3.Table E-4.Table E-5.Table E-6.Table E-7.Table E-8.Table E-9.Table E-10.Table E-11.Table E-12.Table E-13.Table E-14.Table E-15.Table E-16.Table E-17.Table E-18.Effect of Prefixes on SSE, SSE2, and SSE3 Instructions . . .
. . . . . . . . . . . . . . . . . . . 11-37I/O Instruction Serialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13-8Codes Describing Flags. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . A-1EFLAGS Cross-Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1EFLAGS Condition Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . B-1x87 FPU and SIMD Floating-Point Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1Exceptions Generated with x87 FPU Floating-Point Instructions . . . . . . . . . . . . . . . . C-2Exceptions Generated with SSE Instructions . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-4Exceptions Generated with SSE2 Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-7Exceptions Generated with SSE3 Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .C-11ADDPS, ADDSS, SUBPS, SUBSS, MULPS, MULSS, DIVPS, DIVSS, ADDPD, ADDSD,SUBPD, SUBSD, MULPD, MULSD, DIVPD, DIVSD, ADDSUBPS, ADDSUBPD,HADDPS, HADDPD, HSUBPS, HSUBPD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-8CMPPS.EQ, CMPSS.EQ, CMPPS.ORD, CMPSS.ORD, CMPPD.EQ, CMPSD.EQ,CMPPD.ORD, CMPSD.ORD . .