?? optab-x86.dat
字號:
# $Id: optab-x86.dat,v 1.1.1.1 2004/04/26 00:40:21 pa33 Exp $## File format:# <Instruction> <Operands> <Opcodes> [flag]## NOTE: The accompanying script "optab.pl" requires the instruction# names to be in alphabetical order.## Possible values of the [flag] are as follows:## 0 - 7 : column of modR/M table to use# r : can use any column# c : register code (Table 3.1 in Instruction Set Reference)# f : FPU stack register code## The nomenclature of this file deviates from Intel's Instruction# Set Reference in the following ways:## Intel Me# /r "r" in [flag] column# /digit "digit" in [flag] column# +rb/+rw/+rd "c" in [flag] column# +i "f" in [flag] column# cr0 r(cr0)# cr2 r(cr2)# cr3 r(cr3)# cr4 r(cr4)# ib imm8# iw imm16# id imm32# m16&16 mem16# m16&32 mem32# m32&32 mem32# m8 mem8# m16 mem16# m32 mem32# m64 mem64# m80 mem80# m16:16 rm16# m16:32 rm32# mm mmxreg# mm1 mmxreg# mm/m64 mem64# moffs{8,16,32} moffs# ptr16:16 ptr16:16# ptr16:32 ptr16:32# Sreg segreg# st(0) r(st0)# st(i) fpureg# xmm xmmreg# xmm1 xmmreg# xmm?/m* mem128# r32 (using rm field) reg32_rm## no operands void# no operands/32 bit addressing void32# numerical constant (ie: 1) const<number>## For opcodes which require specific registers (ie: al,ax etc)# I will use the syntax: r##(register). Where ## is an optional# size of the register. So, for al, it would be: r8(al)## The rest of the nomenclature of this file is mostly identical to# that of intel.AAA void 37AAD void D5,0AAAD imm8 D5AAM void D4,0AAAM imm8 D4AAS void 3FADC r8(al),imm8 14ADC r16(ax),imm16 15ADC r32(eax),imm32 15ADC rm8,imm8 80 2ADC rm16,imm16 81 2ADC rm32,imm32 81 2ADC rm16,imm8 83 2ADC rm32,imm8 83 2ADC rm8,reg8 10 rADC rm16,reg16 11 rADC rm32,reg32 11 rADC reg8,rm8 12 rADC reg16,rm16 13 rADC reg32,rm32 13 rADD r8(al),imm8 04ADD r16(ax),imm16 05ADD r32(eax),imm32 05ADD rm8,imm8 80 0ADD rm16,imm16 81 0ADD rm32,imm32 81 0ADD rm16,imm8 83 0ADD rm32,imm8 83 0ADD rm8,reg8 00 rADD rm16,reg16 01 rADD rm32,reg32 01 rADD reg8,rm8 02 rADD reg16,rm16 03 rADD reg32,rm32 03 rADDPS xmmreg,mem128 0F,58 rAND r8(al),imm8 24AND r16(ax),imm16 25AND r32(eax),imm32 25AND rm8,imm8 80 4AND rm16,imm16 81 4AND rm32,imm32 81 4AND rm16,imm8 83 4AND rm32,imm8 83 4AND rm8,reg8 20 rAND rm16,reg16 21 rAND rm32,reg32 21 rAND reg8,rm8 22 rAND reg16,rm16 23 rAND reg32,rm32 23 rARPL rm16,reg16 63 rBOUND reg16,mem16 62 rBOUND reg32,mem32 62 rBSF reg16,rm16 0F,BC rBSF reg32,rm32 0F,BC rBSR reg16,rm16 0F,BD rBSR reg32,rm32 0F,BD rBSWAP reg32 0F,C8 cBT rm16,reg16 0F,A3 rBT rm32,reg32 0F,A3 rBT rm16,imm8 0F,BA 4BT rm32,imm8 0F,BA 4BTC rm16,reg16 0F,BB rBTC rm32,reg32 0F,BB rBTC rm16,imm8 0F,BA 7BTC rm32,imm8 0F,BA 7BTR rm16,reg16 0F,B3 rBTR rm32,reg32 0F,B3 rBTR rm16,imm8 0F,BA 6BTR rm32,imm8 0F,BA 6BTS rm16,reg16 0F,AB rBTS rm32,reg32 0F,AB rBTS rm16,imm8 0F,BA 5BTS rm32,imm8 0F,BA 5CALL rel16|near E8CALL rel32|near E8CALL rm16|near FF 2CALL rm32|near FF 2CALL ptr16:16|far 9ACALL ptr16:32|far 9ACALL rm16|far FF 3CALL rm32|far FF 3CBW void 98CDQ void32 99CLC void F8CLD void FCCLI void FACLTS void 0F,06CMC void F5# CMOVA and CMOVNBE have the exact same opcode - we shall use# CMOVA for this opcode.CMOVA reg16,rm16 0F,47 rCMOVA reg32,rm32 0F,47 r# CMOVB, CMOVC, and CMOVNAE have the exact opcode - we shall use# CMOVC for this opcode.CMOVC reg16,rm16 0F,42 rCMOVC reg32,rm32 0F,42 rCMOVE reg16,rm16 0F,44 rCMOVE reg32,rm32 0F,44 rCMOVG reg16,rm16 0F,4F rCMOVG reg32,rm32 0F,4F r# CMOVL and CMOVNGE have the exact same opcode - we shall use# CMOVL for this opcode.CMOVL reg16,rm16 0F,4C rCMOVL reg32,rm32 0F,4C r# CMOVLE and CMOVNG have the exact same opcode - we shall use# CMOVLE for this opcode.CMOVLE reg16,rm16 0F,4E rCMOVLE reg32,rm32 0F,4E r# CMOVBE and CMOVNA have the exact same opcode - we shall use# CMOVNA for this opcode.CMOVNA reg16,rm16 0F,46 rCMOVNA reg32,rm32 0F,46 r# CMOVAE, CMOVNB, and CMOVNC have the exact same opcode - we shall# use CMOVNC for this opcode.CMOVNC reg16,rm16 0F,43 rCMOVNC reg32,rm32 0F,43 rCMOVNE reg16,rm16 0F,45 rCMOVNE reg32,rm32 0F,45 r# CMOVGE and CMOVNL have the exact same opcode - we shall use# CMOVNL for this opcode.CMOVNL reg16,rm16 0F,4D rCMOVNL reg32,rm32 0F,4D rCMOVNO reg16,rm32 0F,41 rCMOVNO reg32,rm32 0F,41 rCMOVNP reg16,rm16 0F,4B rCMOVNP reg32,rm32 0F,4B rCMOVNS reg16,rm16 0F,49 rCMOVNS reg32,rm32 0F,49 rCMOVO reg16,rm16 0F,40 rCMOVO reg32,rm32 0F,40 rCMOVP reg16,rm32 0F,4A rCMOVP reg32,rm32 0F,4A rCMOVS reg16,rm16 0F,48 rCMOVS reg32,rm32 0F,48 rCMP r8(al),imm8 3CCMP r16(ax),imm16 3DCMP r32(eax),imm32 3DCMP rm8,imm8 80 7CMP rm16,imm16 81 7CMP rm32,imm32 81 7CMP rm16,imm8 83 7CMP rm32,imm8 83 7CMP rm8,reg8 38 rCMP rm16,reg16 39 rCMP rm32,reg32 39 rCMP reg8,rm8 3A rCMP reg16,rm16 3B rCMP reg32,rm32 3B rCMPSB void A6CMPSD void32 A7CMPSW void A7CMPXCHG rm8,reg8 0F,B0 rCMPXCHG rm16,reg16 0F,B1 rCMPXCHG rm32,reg32 0F,B1 rCMPXCHG8B mem64 0F,C7 1CPUID void 0F,A2CWD void 99CWDE void32 98DAA void 27DAS void 2FDEC rm8 FE 1DEC rm16 FF 1DEC rm32 FF 1DEC reg16 48 cDEC reg32 48 cDIV rm8 F6 6DIV rm16 F7 6DIV rm32 F7 6EMMS void 0F,77ENTER imm16,imm8 C8F2XM1 void D9,F0FABS void D9,E1FADD r(st0),mem32 D8 0FADD r(st0),mem64 DC 0FADD r(st0),fpureg D8,C0 fFADD fpureg,r(st0) DC,C0 fFADDP fpureg,r(st0) DE,C0 fFBLD r(st0),mem80 DF 4FBSTP mem80,r(st0) DF 6FCHS r(st0) D9,E0FCLEX void 9B,DB,E2FCMOVB r(st0),fpureg DA,C0 fFCMOVBE r(st0),fpureg DA,D0 fFCMOVE r(st0),fpureg DA,C8 fFCMOVNB r(st0),fpureg DB,C0 fFCMOVNBE r(st0),fpureg DB,D0 fFCMOVNE r(st0),fpureg DB,C8 fFCMOVNU r(st0),fpureg DB,D8 fFCMOVU r(st0),fpureg DA,D8 fFCOM r(st0),mem32 D8 2FCOM r(st0),mem64 DC 2FCOM r(st0),fpureg D8,D0 fFCOMI r(st0),fpureg DB,F0 fFCOMIP r(st0),fpureg DF,F0 fFCOMP r(st0),mem32 D8 3FCOMP r(st0),mem64 DC 3FCOMP r(st0),fpureg D8,D8 fFCOMPP r(st1),r(st0) DE,D9FCOS r(st0) D9,FFFDECSTP void D9,F6FDIV r(st0),mem32 D8 6FDIV r(st0),mem64 DC 6FDIV r(st0),fpureg D8,F0 fFDIV fpureg,r(st0) DC,F8 fFDIVP fpureg,r(st0) DE,F8 fFDIVR r(st0),mem32 D8 7FDIVR r(st0),mem64 DC 7FDIVR r(st0),fpureg D8,F8 fFDIVR fpureg,r(st0) DC,F0 fFDIVRP fpureg,r(st0) DE,F0 fFFREE fpureg DD,C0 fFIADD r(st0),mem32 DA 0FIADD r(st0),mem16 DE 0FICOM r(st0),mem16 DE 2FICOM r(st0),mem32 DA 2FICOMP r(st0),mem16 DE 3FICOMP r(st0),mem32 DA 3FIDIV r(st0),mem32 DA 6FIDIV r(st0),mem16 DE 6FIDIVR r(st0),mem32 DA 7FIDIVR r(st0),mem16 DE 7FILD r(st0),mem16 DF 0FILD r(st0),mem32 DB 0FILD r(st0),mem64 DF 5FIMUL r(st0),mem32 DA 1FIMUL r(st0),mem16 DE 1FINCSTP void D9,F7FINIT void 9B,DB,E3FIST mem16,r(st0) DF 2FIST mem32,r(st0) DB 2FISTP mem16,r(st0) DF 3FISTP mem32,r(st0) DB 3FISTP mem64,r(st0) DF 7FISUB r(st0),mem32 DA 4FISUB r(st0),mem16 DE 4FISUBR r(st0),mem32 DA 5FISUBR r(st0),mem16 DE 5FLD r(st0),mem32 D9 0FLD r(st0),mem64 DD 0FLD r(st0),mem80 DB 5FLD fpureg D9,C0 fFLD1 r(st0) D9,E8FLDCW rm D9 5
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -