常见汇编命令英文缩写之含义

学习汇编中碰到的很多命令书上都没介绍怎么来的,是哪个英文单词的缩写,这样记起来很是麻烦,现总结一下,以方便记忆。

寄存器类(register):

通用寄存器:AX,BX,CX,DX——这几个没什么好写的,就是这样了。

段寄存器:代码段寄存器CS--code segment , 数据段寄存器DS--data segment , 堆栈段寄存器SS--stack segment ,附加段寄存器ES--extra segment 。

特殊功能寄存器:指令指针寄存器IP--instruction pointer ,堆栈指针SP--stack pointer ,基址指针BP--base pointer ,源变址寄存器SI--source index ,目标变址寄存器DI--destination index ,标志寄存器FR--flag register(或者叫程序状态字PSW--program status word)。

PSW常用的标志有:

标志                                     值为1时的标记                          值为0时的标记

OF(overflow flag)         OV(overflow)                  NV(not overflow)

ZF(zero flag)             ZR(zero)                      NZ(not zero)

PF(parity flag)           PE(parity eve n)              PO(parity odd)

CF(carry flag)            CY(carried)                   NC(not carried)

DF(direction flag)        DN(down)                      UP(up)   

SF(sign flag)             NG(negtive)                   PL(plus)

TF(trap flag)

IF(interrupt flag)

AF(auxiliary flag)

命令类

1.通用数据传送指令.

MOV----> move

MOVSX---->extended move with sign data

MOVZX---->extended move with zero data

PUSH---->push

POP---->pop

PUSHA---->push all

POPA---->pop all

PUSHAD---->push all data

POPAD---->pop all data

BSWAP---->byte swap

XCHG---->exchange

CMPXCHG---->compare and change

XADD---->exchange and add

XLAT---->translate

2.输入输出端口传送指令.

IN---->input

OUT---->output

3.目的地址传送指令.

LEA---->load effective address

LDS---->load DS

LES---->load ES

LFS---->load FS

LGS---->load GS

LSS---->load SS

4.标志传送指令.

LAHF---->load AH from flag

SAHF---->save AH to flag

PUSHF---->push flag

POPF---->pop flag

PUSHD---->push dflag

POPD---->pop dflag

二、算术运算指令

ADD---->add

ADC---->add with carry

INC---->increase 1

AAA---->ascii add with adjust

DAA---->decimal add with adjust

SUB---->substract

SBB---->substract with borrow

DEC---->decrease 1

NEC---->negative

CMP---->compare

AAS---->ascii adjust on substract

DAS---->decimal adjust on substract

MUL---->multiplication

IMUL---->integer multiplication

AAM---->ascii adjust on multiplication

DIV---->divide

IDIV---->integer divide

AAD---->ascii adjust on divide

CBW---->change byte to word

CWD---->change word to double word

CWDE---->change word to double word with sign to EAX

CDQ---->change double word to quadrate word

三、逻辑运算指令

———————————————————————————————————————

AND---->and

OR---->or

XOR---->xor

NOT---->not

TEST---->test

SHL---->shift left

SAL---->arithmatic shift left

SHR---->shift right

SAR---->arithmatic shift right

ROL---->rotate left

ROR---->rotate right

RCL---->rotate left with carry

RCR---->rotate right with carry

四、串指令

———————————————————————————————————————

MOVS---->move string

CMPS---->compare string

SCAS---->scan string

LODS---->load string

STOS---->store string

REP---->repeat

REPE---->repeat when equal

REPZ---->repeat when zero flag

REPNE---->repeat when not equal

REPNZ---->repeat when zero flag

REPC---->repeat when carry flag

REPNC---->repeat when not carry flag

五、程序转移指令

———————————————————————————————————————

1>无条件转移指令(长转移)

JMP---->jump

CALL---->call

RET---->return

RETF---->return far

2>条件转移指令(短转移,-128到+127的距离内)

JAE---->jump when above or equal

JNB---->jump when not below

JB---->jump when below

JNAE---->jump when not above or equal

JBE---->jump when below or equal

JNA---->jump when not above

JG---->jump when greater

JNLE---->jump when not less or equal

JGE---->jump when greater or equal

JNL---->jump when not less

JL---->jump when less

JNGE---->jump when not greater or equal

JLE---->jump when less or equal

JNG---->jump when not greater

JE---->jump when equal

JZ---->jump when has zero flag

JNE---->jump when not equal

JNZ---->jump when not has zero flag

JC---->jump when has carry flag

JNC---->jump when not has carry flag

JNO---->jump when not has overflow flag

JNP---->jump when not has parity flag

JPO---->jump when parity flag is odd

JNS---->jump when not has sign flag

JO---->jump when has overflow flag

JP---->jump when has parity flag

JPE---->jump when parity flag is even

JS---->jump when has sign flag

3>循环控制指令(短转移)

LOOP---->loop

LOOPE---->loop equal

LOOPZ---->loop zero

LOOPNE---->loop not equal

LOOPNZ---->loop not zero

JCXZ---->jump when CX is zero

JECXZ---->jump when ECX is zero

4>中断指令

INT---->interrupt

INTO---->overflow interrupt

IRET---->interrupt return

5>处理器控制指令

HLT---->halt

WAIT---->wait

ESC---->escape

LOCK---->lock

NOP---->no operation

STC---->set carry

CLC---->clear carry

CMC---->carry make change

STD---->set direction

CLD---->clear direction

STI---->set interrupt

CLI---->clear interrupt

六、伪指令

—————————————————————————————————————

DW---->definw word

PROC---->procedure

ENDP---->end of procedure

SEGMENT---->segment

ASSUME---->assume

ENDS---->end segment

END---->end

原文地址:https://www.cnblogs.com/tupx/p/2880566.html