⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 intel奔腾系列cpu指令全集(包含p4).htm

📁 包括了Intel公司出品的奔腾全系列CPU指令集
💻 HTM
📖 第 1 页 / 共 5 页
字号:
0F 8E cw/cd       JNG rel16/32             Jump near if not greater (ZF=1 or SF<>OF)
0F 8C cw/cd       JNGE rel16/32            Jump near if not greater or equal (SF<>OF)
0F 8D cw/cd       JNL rel16/32             Jump near if not less (SF=OF)
0F 8F cw/cd       JNLE rel16/32            Jump near if not less or equal (ZF=0 and SF=OF)
0F 81 cw/cd       JNO rel16/32             Jump near if not overflow (OF=0)
0F 8B cw/cd       JNP rel16/32             Jump near if not parity (PF=0)
0F 89 cw/cd       JNS rel16/32             Jump near if not sign (SF=0)
0F 85 cw/cd       JNZ rel16/32             Jump near if not zero (ZF=0)
0F 80 cw/cd       JO rel16/32              Jump near if overflow (OF=1)
0F 8A cw/cd       JP rel16/32              Jump near if parity (PF=1)
0F 8A cw/cd       JPE rel16/32             Jump near if parity even (PF=1)
0F 8B cw/cd       JPO rel16/32             Jump near if parity odd (PF=0)
0F 88 cw/cd       JS rel16/32              Jump near if sign (SF=1)
0F 84 cw/cd       JZ rel16/32              Jump near if 0 (ZF=1)

EB cb             JMP rel8                 Jump short, relative, displacement relative 
                                           to next instruction
E9 cw             JMP rel16                Jump near, relative, displacement relative 
                                           to next instruction
E9 cd             JMP rel32                Jump near, relative, displacement relative 
                                           to next instruction
FF /4             JMP r/m16                Jump near, absolute indirect, address given in r/m16
FF /4             JMP r/m32                Jump near, absolute indirect, address given in r/m32
EA cd             JMP ptr16:16             Jump far, absolute, address given in operand
EA cp             JMP ptr16:32             Jump far, absolute, address given in operand
FF /5             JMP m16:16               Jump far, absolute indirect, address given in m16:16
FF /5             JMP m16:32               Jump far, absolute indirect, address given in m16:32

9F                LAHF                     Load: AH ←EFLAGS(SF:ZF:0:AF:0:PF:1:CF)

0F 02 /r          LAR r16,r/m16            r16 ←r/m16 masked by FF00H
0F 02 /r          LAR r32,r/m32            r32 ←r/m32 masked by 00FxFF00H

0F,AE,/2          LDMXCSR m32              Load MXCSR register from m32.

C5 /r             LDS r16,m16:16           Load DS:r16 with far pointer from memory
C5 /r             LDS r32,m16:32           Load DS:r32 with far pointer from memory
0F B2 /r          LSS r16,m16:16           Load SS:r16 with far pointer from memory
0F B2 /r          LSS r32,m16:32           Load SS:r32 with far pointer from memory
C4 /r             LES r16,m16:16           Load ES:r16 with far pointer from memory
C4 /r             LES r32,m16:32           Load ES:r32 with far pointer from memory
0F B4 /r          LFS r16,m16:16           Load FS:r16 with far pointer from memory
0F B4 /r          LFS r32,m16:32           Load FS:r32 with far pointer from memory
0F B5 /r          LGS r16,m16:16           Load GS:r16 with far pointer from memory
0F B5 /r          LGS r32,m16:32           Load GS:r32 with far pointer from memory

8D /r             LEA r16,m                Store effective address for m in register r16
8D /r             LEA r32,m                Store effective address for m in register r32

C9                LEAVE                    SET SP to BP, then pop BP
C9                LEAVE                    SET ESP to EBP, then pop EBP

0F AE /5          LFENCE                   Serializes load operations.

0F 01 /2          LGDT m16&32              Load m into GDTR
0F 01 /3          LIDT m16&32              Load m into IDTR

0F 00 /2          LLDT r/m16               Load segment selector r/m16 into LDTR

0F 01 /6          LMSW r/m16               Loads r/m16 in machine status word of CR0

F0                LOCK                     Asserts LOCK# signal for duration of 
                                           the accompanying instruction

AC                LODS m8                  Load byte at address DS:(E)SI into AL
AD                LODS m16                 Load word at address DS:(E)SI into AX
AD                LODS m32                 Load doubleword at address DS:(E)SI into EAX
AC                LODSB                    Load byte at address DS:(E)SI into AL
AD                LODSW                    Load word at address DS:(E)SI into AX
AD                LODSD                    Load doubleword at address DS:(E)SI into EAX

E2 cb             LOOP rel8                Decrement count; jump short if count ≠0
E1 cb             LOOPE rel8               Decrement count; jump short if count ≠0 and ZF=1
E1 cb             LOOPZ rel8               Decrement count; jump short if count ≠0 and ZF=1
E0 cb             LOOPNE rel8              Decrement count; jump short if count ≠0 and ZF=0
E0 cb             LOOPNZ rel8              Decrement count; jump short if count ≠0 and ZF=0

0F 03 /r          LSL r16,r/m16            Load: r16 ←segment limit, selector r/m16
0F 03 /r          LSL r32,r/m32            Load: r32 ←segment limit, selector r/m32

0F 00 /3          LTR r/m16                Load r/m16 into task register

66 0F F7 /r       MASKMOVDQU xmm1, xmm2    Selectively write bytes from xmm1 to memory
                                           location using the byte mask in xmm2.

0F F7 /r          MASKMOVQ mm1, mm2        Selectively write bytes from mm1 to memory 
                                           location using the byte mask in mm2
                                             
66 0F 5F /r       MAXPD xmm1, xmm2/m128    Return the maximum double-precision floating-point
                                           values between xmm2/m128 and xmm1.
                                             
0F 5F /r          MAXPS xmm1, xmm2/m128    Return the maximum single-precision floating-point
                                           values between xmm2/m128 and xmm1.
                                             
F2 0F 5F /r       MAXSD xmm1, xmm2/m64     Return the maximum scalar double-precision 
                                           floating-point value between xmm2/mem64 and xmm1.
                                             
F3 0F 5F /r       MAXSS xmm1, xmm2/m32     Return the maximum scalar single-precision 
                                           floating-point value between xmm2/mem32 and xmm1.
                                             
0F AE /6          MFENCE                   Serializes load and store operations.

66 0F 5D /r       MINPD xmm1, xmm2/m128    Return the minimum double-precision floating-point
                                           values between xmm2/m128 and xmm1.
                                             
0F 5D /r          MINPS xmm1, xmm2/m128    Return the minimum single-precision floating-point
                                           values between xmm2/m128 and xmm1.
                                             
F2 0F 5D /r       MINSD xmm1, xmm2/m64     Return the minimum scalar double-precision 
                                           floating-point value between xmm2/mem64 and xmm1.
                                             
F3 0F 5D /r       MINSS xmm1, xmm2/m32     Return the minimum scalar single-precision 
                                           floating-point value between xmm2/mem32 and xmm1.
                                             
88 /r             MOV r/m8,r8              Move r8 to r/m8
89 /r             MOV r/m16,r16            Move r16 to r/m16
89 /r             MOV r/m32,r32            Move r32 to r/m32
8A /r             MOV r8,r/m8              Move r/m8 to r8
8B /r             MOV r16,r/m16            Move r/m16 to r16
8B /r             MOV r32,r/m32            Move r/m32 to r32
8C /r             MOV r/m16,Sreg**         Move segment register to r/m16
8E /r             MOV Sreg,r/m16**         Move r/m16 to segment register
A0                MOV AL,moffs8*           Move byte at (seg:offset) to AL
A1                MOV AX,moffs16*          Move word at (seg:offset) to AX
A1                MOV EAX,moffs32*         Move doubleword at (seg:offset) to EAX
A2                MOV moffs8*,AL           Move AL to (seg:offset)
A3                MOV moffs16*,AX          Move AX to (seg:offset)
A3                MOV moffs32*,EAX         Move EAX to (seg:offset)
B0+ rb            MOV r8,imm8              Move imm8 to r8
B8+ rw            MOV r16,imm16            Move imm16 to r16
B8+ rd            MOV r32,imm32            Move imm32 to r32
C6 /0             MOV r/m8,imm8            Move imm8 to r/m8
C7 /0             MOV r/m16,imm16          Move imm16 to r/m16
C7 /0             MOV r/m32,imm32          Move imm32 to r/m32

0F 22 /r          MOV CR0,r32              Move r32 to CR0
0F 22 /r          MOV CR2,r32              Move r32 to CR2
0F 22 /r          MOV CR3,r32              Move r32 to CR3
0F 22 /r          MOV CR4,r32              Move r32 to CR4
0F 20 /r          MOV r32,CR0              Move CR0 to r32
0F 20 /r          MOV r32,CR2              Move CR2 to r32
0F 20 /r          MOV r32,CR3              Move CR3 to r32
0F 20 /r          MOV r32,CR4              Move CR4 to r32

0F 21 /r          MOV r32, DR0-DR7         Move debug register to r32
0F 23 /r          MOV DR0-DR7,r32          Move r32 to debug register

0F 24 /r          MOV r32, TR0-TR7         Move test register to r32
0F 26 /r          MOV TR0-TR7,r32          Move r32 to test register

66 0F 28 /r       MOVAPD xmm1, xmm2/m128   Move packed double-precision floating-point values
                                           from xmm2/m128 to xmm1.
66 0F 29 /r       MOVAPD xmm2/m128, xmm1   Move packed double-precision floating-point values
                                           from xmm1 to xmm2/m128.
                                             
0F 28 /r          MOVAPS xmm1, xmm2/m128   Move packed single-precision floating-point values 
                                           from xmm2/m128 to xmm1.
0F 29 /r          MOVAPS xmm2/m128, xmm1   Move packed single-precision floating-point values 
                                           from xmm1 to xmm2/m128.
                                             
0F 6E /r          MOVD mm, r/m32           Move doubleword from r/m32 to mm.
0F 7E /r          MOVD r/m32, mm           Move doubleword from mm to r/m32.
66 0F 6E /r       MOVD xmm, r/m32          Move doubleword from r/m32 to xmm.
66 0F 7E /r       MOVD r/m32, xmm          Move doubleword from xmm register to r/m32.

66 0F 6F /r       MOVDQA xmm1, xmm2/m128   Move aligned double quadword from xmm2/m128 to xmm1.
66 0F 7F /r       MOVDQA xmm2/m128, xmm1   Move aligned double quadword from xmm1 to xmm2/m128.

F3 0F 6F /r       MOVDQU xmm1, xmm2/m128   Move unaligned double quadword from xmm2/m128 to xmm1.
F3 0F 7F /r       MOVDQU xmm2/m128, xmm1   Move unaligned double quadword from xmm1 to xmm2/m128.

F2 0F D6          MOVDQ2Q mm, xmm          Move low quadword from xmm to mmx register .

OF 12 /r          MOVHLPS xmm1, xmm2       Move two packed single-precision floating-point values 
                                           from high quadword of xmm2 to low quadword of xmm1.
                                             
66 0F 16 /r       MOVHPD xmm, m64          Move double-precision floating-point value 
                                           from m64 to high quadword of xmm.
66 0F 17 /r       MOVHPD m64, xmm          Move double-precision floating-point value 
                                           from high quadword of xmm to m64.
                                             
0F 16 /r          MOVHPS xmm, m64          Move two packed single-precision floating-point values
                                           from m64 to high quadword of xmm.
0F 17 /r          MOVHPS m64, xmm          Move two packed single-precision floating-point values
                                           from high quadword of xmm to m64.
                                             
OF 16 /r          MOVLHPS xmm1, xmm2       Move two packed single-precision floating-point values 
                                           from low quadword of xmm2 to high quadword of xmm1.
                                             
66 0F 12 /r       MOVLPD xmm, m64          Move double-precision floating-point value from m64 to 
                                           low quadword of xmm register.
66 0F 13 /r       MOVLPD m64, xmm          Move double-precision floating-point nvalue from low 
                                           quadword of xmm register to m64.
                                             
0F 12 /r          MOVLPS xmm, m64          Move two packed single-precision floating-point values
                                           from m64 to low quadword of xmm.
0F 13 /r          MOVLPS m64, xmm          Move two packed single-precision floating-point values
                                           from low quadword of xmm to m64.
                              

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -