谢国伟吧 关注:4贴子:39
  • 0回复贴,共1

汇编语言指令集

只看楼主收藏回复


1.算术运算符
ADC:带进位加法 
ADD:二进制数加法 
DEC:减一 
DIV:无符号数除法 
IDIV:带符号数(整数)除法 
IMUL:带符号数(整数)乘法 
INC:加一 
MUL:无符号书乘法 
NEG:求补 
SBB:带借位减法 
SUB:二进制减法 
XADD:交换并相加
2.ASCII-BCD转换
AAA:加后ASCII调整 
AAD:除前ASCII调整 
AAM:乘后ASCII调整 
AAC:减后ASCII调整 
DAA:加后十进制调整 
DAS:减后十进制调整
3.移位
RCL:带进位循环左移 
RCR:带进位循环右移 
ROL:循环左移 
ROR:循环右移 
SAL:算术左移 
SAR:算术右移 
SHL:逻辑左移 
SHR:逻辑右移 
SHLD:双精度左移 
SHRD:双精度右移
4.比较
BSF/BSR:位扫描 
BT/BTC/BR/BB:位测试 
CMP:比较 
CMPSN:串比较 
CMPXCHG:比较交换 
CMPXCHG8B:比较并换?lt;br>TEST:测试位
5.数据传送
LDS:装如数据段寄存器 
LEA:装入有效地址 
LES:装入附加段寄存器 
LODS:从串取 
LSS:装入堆栈段寄存器 
MOV:传送数据 
MOVS:串传送 
MOVSX:带符号扩展传送 
MOVZX:带零扩展传送 
STOS:存入串 
XCHG:交换 
XLAT:换码
6.标志操作
CLC:清除位标志 
CLD:清除方向标志 
CLI:清除中断标志 
CMC:进位标志求反 
LAHF:标志送AH 
POPF:标志出栈 
PUSHF:标志进栈 
SAHF:AH送标志寄存器 
STC:进位标志置1 
CTD:方向标志置1 
STI:中断标志置1
7.输入/输出
IN:输入字节或字 
INSN:串输入 
OUT:输出字节或字 
OUTSN:穿输出
8.逻辑操作
AND:逻辑与 
NOT:逻辑非 
OR:逻辑或 
XOR:异或
9.循环
LOOP:循环直到完成 
LOOPE:相等时循环 
LOOPZ:为零是循环 
LOOPNE:不相等时循环 
LOOPPNZ:不为零是循环 
LOOPPNEW:不相等时循环 
LOOPNZW:不为零时循环
10.处理器控制
HLT:进入暂停状态 
LOCK:封锁总线 
NOP:无操作 
WAIT:置处理器于等待状态
11.堆栈操作
ENTER:建立堆栈帧 
LEAVE:结束堆栈帧 
POP:字出栈 
POPF:标志出栈 
POPA:所有通用寄存器出栈 
PUSH:字进栈 
PUSHA:所有通用积存器进栈 
PUSHF:标志进栈
12.串操作
CMPS:串比较 
LODS:从串取 
MOVS:串传送 
REP:串重复 
REPE:相等时重复 
REPZ:为零时重复 
REPNE:不相等时重复 
REPNZ:不为零时重复 
SCAS:串扫描 
STDS:存入串
13.转移(条件)
INT溢出中断 
JA:高于则转移 
JAE:高于或等于则转移 
JB:低于则转移 
JBE:低于或等于则转移 
JC:进位为1则转移 
JCXZ:CX为零则转移 
JE:相等则转移 
JG:大于则转移 
JGE:大于或等于则转移 
JL:小于则转移 
JLE:小于或等于 
JNC:进位为零则转移 
JNE:不相等则转移 
JNG:不大于则转移 
JNGE:不大于或等于则转移 
JNL:不小于则转移 
JNLE:不小于或等于则转移 
JNA:不高于则转移 
JNB:不低于则转移 
JNBE:不低于或等于则转移 
JNAE:不高于或等于则转移 
JN不溢出则转移 
JNP:奇偶位为0则转移 
JNZ:结果不为零则转移 
JNS:结果为正则转移 
J若溢出则转移 
JP:奇偶位为1则转移 
JPE:奇偶性为偶则转移 
JP奇偶性为奇则转移 
JS:结果为负则转移 
JZ:结果为零则转移
14.转移(无条件)
CALL:调用过程 
INT:中断 
IRET:中断返回 
JMP:无条件转移 
RET:返回 
RETN/RETF:近返回/远返回
15.类型转换
CBW:字节转换为字 
CDQ:双字转换为四字 
CWD:字转换为双字 
CWDE:字转换为扩展的双字


1楼2009-01-11 18:46回复