Assembly Instruction Set

Source: Internet
Author: User

AAA addition ASCII code or non-compressed BCD code Adjustment Command

AAD division ASCII code or non-compressed BCD code Adjustment Command

AAM multiplication ASCII code or non-compressed BCD code Adjustment Command

ASCII code or non-compressed BCD code Adjustment Command for AAS Subtraction

Add addition command

ADC incoming bit addition command

And logic and Operation

BSF forward scanning command (scan the first bit containing 1 from right to left and send the bit number to the specified operand)

BSR reverse scanning command (from left to right, scan the first bit containing 1 and send the bit number to the specified operand)

BT-bit test Command Format: Bt DST. SRC tests the bits in DST specified by Src. The bits are sent to CF

BTC bit test and get the reverse Command Format: btc dst, Src test and retrieve the bits in the DST specified by Src. The original value is sent to CF

Btr bit Test and reset command format: btr dst, Src test and clear the bits in the DST specified by Src, the in-situ value is sent to CF

Bts bit Test reset command format: bts dst, Src test reset 1 specified by the src dst bit, in-situ value sent to CF

Call subroutine call command

CBW byte conversion to word (extend the byte symbol in Al to Ah)

CDQ dual-word extension to four characters (extend the characters in eax to EDX)

CLC carry mark CF clear 0

CLD direction mark DF clear 0

CLI interruption allows flag if clear 0

CMC carry mark CF reverse

CMP comparison (two operands are used as subtraction, only the flag bit is modified, and the result is not returned)

CMPS string comparison command

Cmpsb string comparison command _ character

Cmpsd string comparison command _ dual-Character

Cmpsw string comparison command _ word

CWD words are extended into dual characters (extending the characters in ax to dx)

Conversion from cwde to dual (extending the word symbols in ax to eax)

DAA addition decimal (compressed BCD code) Adjustment Command

Decimal (compressed BCD code) Adjustment Command for DAS Subtraction

Dec minus 1 command

Div unsigned number division command and the above two, result delivery: Commercial Al, remainder AH (byte operation), or commercial ax, remainder dx (word Operation)

Hlt command to stop the CPU)

Idiv with the symbol number division command and the above two, the result is sent back: the provider returns Al, the remainder returns AH (byte operation), or the provider returns ax, the remainder returns dx (word Operation)

Imul returns the results of the symbol number multiplication command AH and Al (byte operation), or Dx and ax (word operation)

In I/O port input (for example, in Al, 61 h) the input port refers to the timing in the immediate mode, and the range is 0-255; the input port refers to the timing in the DX register, the value range is 0-65535.

INC plus 1 command

INS string input command

InSb string input directive _ character

INSD string input command _ dual-Character

Insw string input directive _ words

Int interrupt call command

Iret interrupt return command

Ja unsigned integer is higher than the Transfer Instruction (A: above)

Jae unsigned integer greater than or equal to the Transfer Instruction (A: abve E: equel)

JB unsigned integer lower than the Transfer Instruction (B: below)

The value of the jbe unsigned integer is less than or equal to the Transfer Instruction (B: Below E: equel)

JC transfer command when there is a bid

Jcxz test CX value is 0 transfer command

Je equal Transfer Instruction

Jecx test ECx value is 0 Transfer Instruction

The signed integer of JG is greater than the Transfer Instruction (G: greater)

The signed integer of jge is greater than or equal to the Transfer Instruction (G: greater E: equel)

Jl signed integer less than Transfer Instruction (L: less)

The signed integer of jle is less than or equal to the Transfer Instruction (L: less E: equel)

JMP unconditional transfer instruction

The unsigned integer of JNA is no higher than the Transfer Instruction (A: abve)

The jnae unsigned integer is not higher than or equal to the Transfer Instruction (A: abve E: equel)

Jnbe unsigned integer not less than or equal to the Transfer Instruction (B: Below E: equel)

The unsigned integer of JNB is not lower than the Transfer Instruction (B: below)

Transfer command when JNC has no carry

JNE unequal Transfer Instruction

The signed integer of jng is not greater than the Transfer Instruction (G: greater)

Jnge signed integer not greater than or equal to the Transfer Instruction (G: greater E: equel)

JNL signed integer not less than Transfer Instruction (L: less)

Jnle signed integer not less than or equal to the Transfer Instruction (L: less E: equel)

Transfer command when jno does not overflow

Jnp odd Transfer Instruction

JNS non-Negative Transfer Instruction

Jnz result is not 0 Transfer Instruction

Jo overflow transfer command

JP even Transfer Instruction

Jpe even Transfer Instruction

JPO odd transfer command

JS Negative Transfer

The result of jz is 0 transfer instruction.

Transmit the lahf flag register and load the flag into ah

LDS transfers the target pointer and loads the pointer content into Ds, for example, LDS Si and string. Saves the segment address: Offset address to DS: Si.

Lea load valid address example: Lea dx, string; Save the offset address to DX

Les transfers the target pointer and loads the pointer content into es, for example, les Di and string. Saves the segment address: Offset address to ES: Di.

LFS transfers the target pointer, and loads the pointer content into FS, for example, LFS Di and string; saves the segment address: Offset address to FS: Di

LGS transfers the target pointer, and loads the pointer content into Gs for example: LGS Di, string; saves the segment address: Offset address to GS: Di

Lock prefix command (to make the bus lock signal valid)

Lods takes string commands (loads the elements (words or bytes) in the source string into Al or ax one by one)

Lodsb string-based instruction _ character-based

Lodsd string-taking command _ double-Character

Lodsw string-taking command _ string-taking

Loop command (CX is not a zero-hour loop)

Loope equal loop command

Loopne unequal cyclic commands

Loopnz unequal cyclic commands

Loopz equal loop command

The LSS transfers the target pointer and loads the pointer content into the SS instance: LSS Di, string; saves the segment address: Offset address to SS: Di

MoV transfer command

SEG mov ax, SEG tab-> send the base address of the tab segment to the ax register

Offset mov Di, offset tab-> send the segment offset of the tab to the di register.

Movs serial transmission commands

Movsb string Transfer Instruction _ Transfer Character

Movsd string Transfer Instruction _ transfer dual-word

Movsw string Transfer Instruction _ transfer word

Mul unsigned number multiplication command results are returned to Ah and Al (byte operation), or Dx and ax (word Operation)

Neg inverse (that is, seeking compensation, minus 0)

NOP null operation

Not logical non-(inverse)

Or logic or operation

Out I/O port output (for example, out 61 H, Al) the output port refers to the timing in the immediate mode. The range is 0-255, and the DX indicates the timing in the register, the value range is 0-65535.

Outs string output command

Outsb string output command _ character

Outsd string output command _ dual-Character

Outsw string output directive _ words

Pop output stack command

Popa pops up the stack of DI, Si, BP, SP, BX, dx, CX, and ax in sequence.

Popad pops up the stacks of EDI, ESI, EBP, ESP, EBX, EDX, ECx, and eax in sequence.

Popf 16-bit mark out stack command

Popfd 32-Bit Flag stack command

Push into Stack command

Pusha pushes ax, CX, dx, BX, SP, BP, Si, di into the stack in sequence.

Pushad pushes eax, ECx, EDX, EBX, ESP, EBP, ESI, and EDI to the stack in sequence.

Pushf 16-bit mark into the stack command

Pushfd 32-bit mark into the stack command

RCL shifts the left of the bitwise loop.

Right Shift of RCR bit-in cycle

RET subroutine return instruction

Rol loop shifts left

Ror loop shifts right

Send the sahf mark register and load the ah content into the mark register.

Sal arithmetic left shift (= SHL)

SAR arithmetic shift right

SBB with borrow subtraction command

SCAs string scan command (compare the content of Al or ax with the target string, and the comparison result is reflected in the flag bit)

Scasb string scan instruction _ character

Scasd string scan command _ dual-Character

Scasw string scan instruction _ word

Set Seta to 1 when it is higher

Set setae to 1 if it is greater than or equal

Set SETB to 1 when it is lower

Set setbe to 1 if it is less than or equal

Set SETC to 1 when it has a bid.

Set sete to 1 when it is equal.

Set setg to 1 when it is greater

Set setge to 1 if it is greater than or equal

Set SETl to 1 when it is smaller

Set setle to 1 if it is less than or equal

Set setna to 1 when it is not higher

Set setnae to 1 if it is not greater than or equal

Set setnb to 1 if it is not lower

Set setnbe to 1 if it is not less than or equal

Set setnc to 1 when there is no carry

If setne is not equal, set it to 1.

Set setng to 1 if it is not greater

Set setnge to 1 if it is not greater than or equal

Set setnl to 1 if it is not smaller

Set setnle to 1 if it is not less than or equal

Set setno to 1 if no overflow exists

When the setnp result is 8 bits with an odd number of 1, it is set to 1.

Set setns to 1 when it is not negative

If setnz is not equal to 0, set it to 1.

Set Seto overflow to 1

When the setp result is 8 bits with an even number of 1, the value is set to 1.

When the setpe result has eight lower bits and an even number of 1 bits, it is set to 1.

When the setpo result is 8 low and there are odd numbers of 1, the value is set to 1.

When sets are negative, set them to 1.

When setz is equal to 0, it is set to 1.

SHL logic left shift

Shld Double Precision left shift command

Right Shift of SHR Logic

Shrd Double Precision right shift command

The STC carry Mark sets CF to 1.

1 For the direction sign of STD DF

STI interruption allowed flag if set 1

STOs memory string command (lods inverse process)

Stosb memory string directive _ memory characters

Stosd storage string directive _ storage dual-word

Stosw storage string directive _ storage words

Sub subtraction command

Test (two operations and operations are performed. Only the flag bit is modified and the result is not returned)

Wait command (leave the CPU in the waiting state)

Xadd swap first and then accumulate (the result is in the first operand)

Xchg exchange word or byte (at least one operand is a register, segment register cannot be used as the operand)

Xlat byte Table query Conversion

XOR logical exclusive or operation
 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.