微机原理与接口技术 所有的指令

哪位好心人帮我全都总结到一起 懒得翻书了 多谢多谢~~
2024年10月31日 02:06
有1个网友回答
网友(1):

INTEL 汇编指令集
Intel Assemble Instruction Set

CONTENT[/#10]Intel 8086 Family Architecture[/url]
Instruction Clock Cycle Calculation[/url]
[/#30]8088/8086 Effective Address (EA) Calculation[/url]
[/#40]Task State Calculation[/url]
[/#50]FLAGS - Intel 8086 Family Flags Register[/url]
[/#60]MSW - Machine Status Word (286+ only)[/url]
[/#70]8086/80186/80286/80386/80486 Instruction Set[/url]
[/#80]AAA - Ascii Adjust for Addition[/url]
[/#90]AAD - Ascii Adjust for Division[/url]
[/#100]AAM - Ascii Adjust for Multiplication[/url]
[/#110]AAS - Ascii Adjust for Subtraction[/url]
[/#120]ADC - Add With Carry[/url]
[/#130]ADD - Arithmetic Addition[/url]
[/#140]AND - Logical And[/url]
[/#150]ARPL - Adjusted Requested Privilege Level of Selector (286+ PM)[/url]
[/#160]BOUND - Array Index Bound Check (80188+)[/url]
[/#170]BSF - Bit Scan Forward (386+)[/url]
[/#180]BSR - Bit Scan Reverse (386+)[/url]
[/#190]BSWAP - Byte Swap (486+)[/url]
[/#200]BT - Bit Test (386+)[/url]
[/#210]BTC - Bit Test with Compliment (386+)[/url]
[/#220]BTR - Bit Test with Reset (386+)[/url]
[/#230]BTS - Bit Test and Set (386+)[/url]
[/#240]CALL - Procedure Call[/url]
[/#250]CBW - Convert Byte to Word[/url]
[/#260]CDQ - Convert Double to Quad (386+)[/url]
[/#270]CLC - Clear Carry[/url]
[/#280]CLD - Clear Direction Flag[/url]
[/#290]CLI - Clear Interrupt Flag (disable)[/url]
[/#300]CLTS - Clear Task Switched Flag (286+ privileged)[/url]
[/#310]CMC - Complement Carry Flag[/url]
[/#320]CMP - Compare[/url]
[/#330]CMPS - Compare String (Byte, Word or Doubleword)[/url]
[/#340]CMPXCHG - Compare and Exchange[/url]
[/#350]CWD - Convert Word to Doubleword[/url]
[/#360]CWDE - Convert Word to Extended Doubleword (386+)[/url]
[/#370]DAA - Decimal Adjust for Addition[/url]
[/#380]DAS - Decimal Adjust for Subtraction[/url]
[/#390]DEC - Decrement[/url]
[/#400]DIV - Divide[/url]
[/#410]ENTER - Make Stack Frame (80188+)[/url]
[/#420]ESC - Escape[/url]
[/#430]HLT - Halt CPU[/url]
[/#440]IDIV - Signed Integer Division[/url]
[/#450]IMUL - Signed Multiply[/url]
[/#460]IN - Input Byte or Word From Port[/url]
[/#470]INC - Increment[/url]
[/#480]INS - Input String from Port (80188+)[/url]
[/#490]INT - Interrupt[/url]
[/#500]INTO - Interrupt on Overflow[/url]
[/#510]INVD - Invalidate Cache (486+)[/url]
[/#520]INVLPG - Invalidate Translation Look-Aside Buffer Entry (486+)[/url]
[/#530]IRET/IRETD - Interrupt Return[/url]
[/#540]Jxx - Jump Instructions Table[/url]
[/#550]JCXZ/JECXZ - Jump if Register (E)CX is Zero[/url]
[/#560]JMP - Unconditional Jump[/url]
[/#570]LAHF - Load Register AH From Flags[/url]
[/#580]LAR - Load Access Rights (286+ protected)[/url]
[/#590]LDS - Load Pointer Using DS[/url]
[/#600]LEA - Load Effective Address[/url]
[/#610]LEAVE - Restore Stack for Procedure Exit (80188+)[/url]
[/#620]LES - Load Pointer Using ES[/url]
[/#630]LFS - Load Pointer Using FS (386+)[/url]
[/#640]LGDT - Load Global Descriptor Table (286+ privileged)[/url]
[/#650]LIDT - Load Interrupt Descriptor Table (286+ privileged)[/url]
[/#660]LGS - Load Pointer Using GS (386+)[/url]
[/#670]LLDT - Load Local Descriptor Table (286+ privileged)[/url]
[/#680]LMSW - Load Machine Status Word (286+ privileged)[/url]
[/#690]LOCK - Lock Bus[/url]
[/#700]LODS - Load String (Byte, Word or Double)[/url]
[/#710]LOOP - Decrement CX and Loop if CX Not Zero[/url]
[/#720]LOOPE/LOOPZ - Loop While Equal / Loop While Zero[/url]
[/#730]LOOPNZ/LOOPNE - Loop While Not Zero / Loop While Not Equal[/url]
[/#740]LSL - Load Segment Limit (286+ protected)[/url]
[/#750]LSS - Load Pointer Using SS (386+)[/url]
[/#760]LTR - Load Task Register (286+ privileged)[/url]
[/#770]MOV - Move Byte or Word[/url]
[/#780]MOVS - Move String (Byte or Word)[/url]
[/#790]MOVSX - Move with Sign Extend (386+)[/url]
[/#800]MOVZX - Move with Zero Extend (386+)[/url]
[/#810]MUL - Unsigned Multiply[/url]
[/#820]NEG - Two's Complement Negation[/url]
[/#830]NOP - No Operation (90h)[/url]
[/#840]NOT - One's Compliment Negation (Logical NOT)[/url]
[/#850]OR - Inclusive Logical OR[/url]
[/#860]OUT - Output Data to Port[/url]
[/#870]OUTS - Output String to Port (80188+)[/url]
[/#880]POP - Pop Word off Stack[/url]
[/#890]POPA/POPAD - Pop All Registers onto Stack (80188+)[/url]
[/#900]POPF/POPFD - Pop Flags off Stack[/url]
[/#910]PUSH - Push Word onto Stack[/url]
[/#920]PUSHA/PUSHAD - Push All Registers onto Stack (80188+)[/url]
[/#930]PUSHF/PUSHFD - Push Flags onto Stack[/url]
[/#940]RCL - Rotate Through Carry Left[/url]
[/#950]RCR - Rotate Through Carry Right[/url]
[/#960]REP - Repeat String Operation[/url]
[/#970]REPE/REPZ - Repeat Equal / Repeat Zero[/url]
[/#980]REPNE/REPNZ - Repeat Not Equal / Repeat Not Zero[/url]
[/#990]RET/RETF - Return From Procedure[/url]
[/#1000]ROL - Rotate Left[/url]
[/#1010]ROR - Rotate Right[/url]
[/#1020]SAHF - Store AH Register into FLAGS[/url]
[/#1030]SAL/SHL - Shift Arithmetic Left / Shift Logical Left[/url]
[/#1040]SAR - Shift Arithmetic Right[/url]
[/#1050]SBB - Subtract with Borrow/Carry[/url]
[/#1060]SCAS - Scan String (Byte, Word or Doubleword)[/url]
[/#1070]SETAE/SETNB - Set if Above or Equal / Set if Not Below (386+)[/url]
[/#1080]SETB/SETNAE - Set if Below / Set if Not Above or Equal (386+)[/url]
[/#1090]SETBE/SETNA - Set if Below or Equal / Set if Not Above (386+)[/url]
[/#1100]SETE/SETZ - Set if Equal / Set if Zero (386+)[/url]
[/#1110]SETNE/SETNZ - Set if Not Equal / Set if Not Zero (386+)[/url]
[/#1120]SETL/SETNGE - Set if Less / Set if Not Greater or Equal (386+)[/url]
[/#1130]SETGE/SETNL - Set if Greater or Equal / Set if Not Less (386+)[/url]
[/#1140]SETLE/SETNG - Set if Less or Equal / Set if Not greater or Equal (386+)[/url]
[/#1150]SETG/SETNLE - Set if Greater / Set if Not Less or Equal (386+)[/url]
[/#1160]SETS - Set if Signed (386+)[/url]
[/#1170]SETNS - Set if Not Signed (386+)[/url]
[/#1180]SETC - Set if Carry (386+)[/url]
[/#1190]SETNC - Set if Not Carry (386+)[/url]
[/#1200]SETO - Set if Overflow (386+)[/url]
[/#1210]SETNO - Set if Not Overflow (386+)[/url]
[/#1220]SETP/SETPE - Set if Parity / Set if Parity Even (386+)[/url]
[/#1230]SETNP/SETPO - Set if No Parity / Set if Parity Odd (386+)[/url]
[/#1240]SGDT - Store Global Descriptor Table (286+ privileged)[/url]
[/#1250]SIDT - Store Interrupt Descriptor Table (286+ privileged)[/url]
[/#1260]SHL - Shift Logical Left[/url]
[/#1270]SHR - Shift Logical Right[/url]
[/#1280]SHLD/SHRD - Double Precision Shift (386+)[/url]
[/#1290]SLDT - Store Local Descriptor Table (286+ privileged)[/url]
[/#1300]SMSW - Store Machine Status Word (286+ privileged)[/url]
[/#1310]STC - Set Carry[/url]
[/#1320]STD - Set Direction Flag[/url]
[/#1330]STI - Set Interrupt Flag (Enable Interrupts)[/url]
[/#1340]STOS - Store String (Byte, Word or Doubleword)[/url]
[/#1350]STR - Store Task Register (286+ privileged)[/url]
[/#1360]SUB - Subtract[/url]
[/#1370]TEST - Test For Bit Pattern[/url]
[/#1380]VERR - Verify Read (286+ protected)[/url]
[/#1390]VERW - Verify Write (286+ protected)[/url]
[/#1400]WAIT/FWAIT - Event Wait[/url]
[/#1410]WBINVD - Write-Back and Invalidate Cache (486+)[/url]
[/#1420]XCHG - Exchange[/url]
[/#1430]XLAT/XLATB - Translate[/url]
[/#1440]XOR - Exclusive OR[/url]