汇编指令英文全称

       有时我们需要查看汇编代码去分析软件问题,汇编代码才能最直观地反映出软件的问题所在。为了方便大家理解并记忆汇编指令,此处列出常用汇编指令的英文全称,以供参考。

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

寄存器

AH&AL=AX(accumulator):累加寄存器

BH&BL=BX(base):基址寄存器

CH&CL=CX(count):计数寄存器

DH&DL=DX(data):数据寄存器

SP(Stack Pointer):堆栈指针寄存器

BP(Base Pointer):基址指针寄存器

SI(Source Index):源变址寄存器

DI(Destination Index):目的变址寄存器

IP(Instruction Pointer):指令指针寄存器

CS(Code Segment):代码段寄存器

DS(Data Segment):数据段寄存器

SS(Stack Segment):堆栈段寄存器

ES(Extra Segment):附加段寄存器

PSW程序状态字寄存器:

汇编指令英文全称_第1张图片

OF overflow flag 溢出标志 操作数超出机器能表示的范围表示溢出,溢出时为1。

SF sign Flag 符号标志 记录运算结果的符号,结果负时为1。

ZF zero flag 零标志 运算结果等于0时为1,否则为0。

CF carry flag 进位标志 最高有效位产生进位时为1,否则为0。

AF auxiliary carry flag 辅助进位标志运算时,第3位向第4位产生进位时为1,否则为0。

PF parity flag 奇偶标志 运算结果操作数位为1的个数为偶数个时为1,否则为0。

DF direcion flag 方向标志 用于串处理,DF=1时,每次操作后使SI和DI减小,DF=0时则增大。

IF interrupt flag 中断标志 IF=1时,允许CPU响应可屏蔽中断,否则关闭中断。

TF trap flag 陷阱标志 用于调试单步操作。

你可能感兴趣的