INTEL汇编指令集(6)

2019-01-26 19:06

mem64 - 11 11 11 5

LIDT - Load Interrupt Descriptor Table (286+ privileged) Usage: LIDT src Modifies flags: None

Loads a value from an operand into the Interrupt Descriptor Table (IDT) register.

Clocks Size Operands 808x 286 386 486 Bytes mem64 - 12 11 11 5

LGS - Load Pointer Using GS (386+) Usage: LGS dest,src Modifies flags: None

Loads 32-bit pointer from memory source to destination register and GS. The offset is placed in the destination register and the segment is placed in GS. To use this instruction the word at the lower memory address must contain the offset and the word at the higher address must contain the segment. This simplifies the loading of far pointers from the stack and the interrupt vector table. Clocks Size Operands 808x 286 386 486 Bytes reg,mem - - 7 6 5-7 reg,mem (PM) - - 22 12 5-7

LLDT - Load Local Descriptor Table (286+ privileged) Usage: LLDT src Modifies flags: None

Loads a value from an operand into the Local Descriptor Table Register (LDTR).

Clocks Size Operands 808x 286 386 486 Bytes reg16 - 17 20 11 3 mem16 - 19 24 11 5

LMSW - Load Machine Status Word (286+ privileged) Usage: LMSW src Modifies flags: None

Loads the Machine Status Word (MSW) from data found at \ Clocks Size Operands 808x 286 386 486 Bytes reg16 - 3 10 13 3 mem16 - 6 13 13 5

LOCK - Lock Bus

Usage: LOCK

LOCK: (386+ prefix) Modifies flags: None

This instruction is a prefix that causes the CPU assert bus lock signal during the execution of the next instruction. Used to

avoid two processors from updating the same data location. The

286 always asserts lock during an XCHG with memory operands. This should only be used to lock the bus prior to XCHG, MOV, IN and OUT instructions.

Clocks Size Operands 808x 286 386 486 Bytes none 2 0 0 1 1

LODS - Load String (Byte, Word or Double) Usage: LODS src LODSB LODSW

LODSD (386+) Modifies flags: None

Transfers string element addressed by DS:SI (even if an operand is supplied) to the accumulator. SI is incremented based on the size of the operand or based on the instruction used. If the Direction Flag is set SI is decremented, if the Direction Flag is clear SI is incremented. Use with REP prefixes.

Clocks Size Operands 808x 286 386 486 Bytes src 12/16 5 5 5 1

LOOP - Decrement CX and Loop if CX Not Zero Usage: LOOP label Modifies flags: None

Decrements CX by 1 and transfers control to \ Zero. The \ instruction following the loop instruction

Clocks Size Operands 808x 286 386 486 Bytes label: jump 18 8+m 11+m 6 2 no jump 5 4 ? 2

LOOPE/LOOPZ - Loop While Equal / Loop While Zero Usage: LOOPE label LOOPZ label Modifies flags: None

Decrements CX by 1 (without modifying the flags) and transfers control to \ The

\ following the loop instruction.

Clocks Size Operands 808x 286 386 486 Bytes label: jump 18 8+m 11+m 9 2 no jump 5 4 ? 6

LOOPNZ/LOOPNE - Loop While Not Zero / Loop While Not Equal Usage: LOOPNZ label LOOPNE label Modifies flags: None

Decrements CX by 1 (without modifying the flags) and transfers control to \ The

\ following the loop instruction.

Clocks Size Operands 808x 286 386 486 Bytes label: jump 19 8+m 11+m 9 2 no jump 5 4 ? 6

LSL - Load Segment Limit (286+ protected) Usage: LSL dest,src Modifies flags: ZF

Loads the segment limit of a selector into the destination register if the selector is valid and visible at the current privilege level. If loading is successful the Zero Flag is set, otherwise it is cleared.

Clocks Size Operands 808x 286 386 486 Bytes reg16,reg16 - 14 20/25 10 3 reg32,reg32 - - 20/25 10 3 reg16,mem16 - 16 21/26 10 5 reg32,mem32 - - 21/26 10 5 - 386 times are listed \

LSS - Load Pointer Using SS (386+) Usage: LSS dest,src Modifies flags: None

Loads 32-bit pointer from memory source to destination register and SS. The offset is placed in the destination register and the segment is placed in SS. To use this instruction the word at the lower memory address must contain the offset and the word at the

higher address must contain the segment. This simplifies the loading of far pointers from the stack and the interrupt vector table. Clocks Size Operands 808x 286 386 486 Bytes reg,mem - - 7 6 5-7 reg,mem (PM) - - 22 12 5-7

LTR - Load Task Register (286+ privileged) Usage: LTR src Modifies flags: None

Loads the current task register with the value specified in \ Clocks Size Operands 808x 286 386 486 Bytes reg16 - 17 23 20 3 mem16 - 19 27 20 5

MOV - Move Byte or Word

Usage: MOV dest,src Modifies flags: None

Copies byte or word from the source operand to the destination operand. If the destination is SS interrupts are disabled except on early buggy 808x CPUs. Some CPUs disable interrupts if the destination is any of the segment registers

Clocks Size Operands 808x 286 386 486 Bytes reg,reg 2 2 2 1 2

mem,reg 9+EA 3 2 1 2-4 (W88=13+EA) reg,mem 8+EA 5 4 1 2-4 (W88=12+EA) mem,immed 10+EA 3 2 1 3-6 (W88=14+EA) reg,immed 4 2 2 1 2-3

mem,accum 10 3 2 1 3 (W88=14) accum,mem 10 5 4 1 3 (W88=14) segreg,reg16 2 2 2 3 2

segreg,mem16 8+EA 5 5 9 2-4 (W88=12+EA) reg16,segreg 2 2 2 3 2

mem16,segreg 9+EA 3 2 3 2-4 (W88=13+EA) reg32,CR0/CR2/CR3 - - 6 4 CR0,reg32 - - 10 16

CR2,reg32 - - 4 4 3 CR3,reg32 - - 5 4 3 reg32,DR0/DR1/DR2/DR3 - 22 10 3 reg32,DR6/DR7 - - 22 10 3 DR0/DR1/DR2/DR3,reg32 - 22 11 3 DR6/DR7,reg32 - - 16 11 3

reg32,TR6/TR7 - - 12 4 3 TR6/TR7,reg32 - - 12 4 3 reg32,TR3 3 TR3,reg32 6

- when the 386 special registers are used all operands are 32 bits

MOVS - Move String (Byte or Word) Usage: MOVS dest,src MOVSB MOVSW

MOVSD (386+) Modifies flags: None

Copies data from addressed by DS:SI (even if operands are given) to the location ES:DI destination and updates SI and DI based on the size of the operand or instruction used. SI and DI are incremented when the Direction Flag is cleared and decremented when the Direction Flag is Set. Use with REP prefixes.

Clocks Size Operands 808x 286 386 486 Bytes

dest,src 18 5 7 7 1 (W88=26)

MOVSX - Move with Sign Extend (386+) Usage: MOVSX dest,src Modifies flags: None

Copies the value of the source operand to the destination register with the sign extended.

Clocks Size Operands 808x 286 386 486 Bytes reg,reg - - 3 3 3 reg,mem - - 6 3 3-7

MOVZX - Move with Zero Extend (386+) Usage: MOVZX dest,src Modifies flags: None

Copies the value of the source operand to the destination register with the zeroes extended.

Clocks Size Operands 808x 286 386 486 Bytes reg,reg - - 3 3 3 reg,mem - - 6 3 3-7

MUL - Unsigned Multiply

Usage: MUL src

Modifies flags: CF OF (AF,PF,SF,ZF undefined)


INTEL汇编指令集(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:肯德基与麦当劳两大快餐帝国的连锁餐饮秘诀

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: