| 408007691 |
2010-09-13 19:22 |
汇编语言指令集
1.算术运算符 W|(U}PrC ADC:带进位加法 yrG=2{I ADD:二进制数加法 PVaqKCj:6W DEC:减一 KsQn %mxS DIV:无符号数除法 V`m9+<.1 b IDIV:带符号数(整数)除法 *nSKIDw IMUL:带符号数(整数)乘法 nLY(%):(P INC:加一 |ITh2m MUL:无符号书乘法 >Xi/ p$$7u NEG:求补 IG90mpLX SBB:带借位减法 |3G;Rh9w, SUB:二进制减法 q0{ _w XADD:交换并相加 heScIe
N^` a FL;E 2.ASCII-BCD转换 b6! 7j AAA:加后ASCII调整 ^&KpvQNW_ AAD:除前ASCII调整 6h7TM?lt AAM:乘后ASCII调整 (bAw>
AAC:减后ASCII调整 AP+%T
DAA:加后十进制调整 8'M:uI DAS:减后十进制调整 TTGWOC y I} > 3.移位 et=i@PB) RCL:带进位循环左移 ;)q"X>FMZe RCR:带进位循环右移 hA1p# ROL:循环左移 -I[K IeF ROR:循环右移 oQ}K_}{> SAL:算术左移 "KgNMNep SAR:算术右移 `L%<3/hF SHL:逻辑左移 o(yyj'=( SHR:逻辑右移 $|t={s34 SHLD:双精度左移 V[0
ZNT& SHRD:双精度右移 6w~Cyu4Ov Muyi2F)j 4.比较 O9rA3qv
B BSF/BSR:位扫描 zEt!Pug BT/BTC/BR/BB:位测试 6+4SMf3 CMP:比较 B+z>$6 CMPSN:串比较 P=.~LZZ]89 CMPXCHG:比较交换 C{~O!^2G CMPXCHG8B:比较并换?lt;br>TEST:测试位 kK:U+`+ MzH'<`;BP 5.数据传送 [qU`}S2 LDS:装如数据段寄存器 fr`Q
5!0 LEA:装入有效地址 v.hQ9#: LES:装入附加段寄存器 Q/0oe()) LODS:从串取 :!JQ<kV LSS:装入堆栈段寄存器 tIS.,CEQF MOV:传送数据 2I283%xr MOVS:串传送 e,MgR \F} MOVSX:带符号扩展传送 -us:!p1T MOVZX:带零扩展传送 t N4-<6 STOS:存入串 -Jt36|O XCHG:交换 R'8S)'l XLAT:换码 yMt:L)+ TfHL'u9B 6.标志操作 *4%%^*g.I CLC:清除位标志 l,Fn_zO CLD:清除方向标志 \BX9Wn*)a CLI:清除中断标志 \/b[V3<" CMC:进位标志求反 +ViL" LAHF:标志送AH Bo\~PV[ POPF:标志出栈 YFDOp* PUSHF:标志进栈 R{ udV SAHF:AH送标志寄存器 iNc!zA4 STC:进位标志置1 USaa#s4' CTD:方向标志置1 *Q#oV}D_ STI:中断标志置1 jib pZ) w OOu/Y 7.输入/输出 0f@9y IN:输入字节或字 J*38GX+ INSN:串输入 ;NE4G;px4< OUT:输出字节或字 UD.ZnE{" OUTSN:穿输出 vK`HgRQ(C qoZ)"M 8.逻辑操作 !2>@:CKX AND:逻辑与 zszmG^W{ NOT:逻辑非
e<(6x[_ OR:逻辑或 :dNJ2&kJ XOR:异或 I@\D
tQZ H23 O]r 9.循环 wqT9m*VK LOOP:循环直到完成 #c":y5: LOOPE:相等时循环 #eX<=H] LOOPZ:为零是循环 R.DUfU"gp LOOPNE:不相等时循环 >; tE.CJH LOOPPNZ:不为零是循环 iSUu3Yv,_m LOOPPNEW:不相等时循环 f( Dtv LOOPNZW:不为零时循环 h-RhmQA=Iz c&,q`_t 10.处理器控制 9gglyoZ% HLT:进入暂停状态 z 2jC48~ LOCK:封锁总线 ,p /{!BX NOP:无操作 @WJ\W `P WAIT:置处理器于等待状态 ALcPbr 42p1P6d 11.堆栈操作 BoST?"&}' ENTER:建立堆栈帧 hgzNEx%^q LEAVE:结束堆栈帧 LAY:R{vI POP:字出栈 p&5>j\uJ1& POPF:标志出栈 jVZ<i}h0B POPA:所有通用寄存器出栈 gFrNk
Uqp PUSH:字进栈 JZ~wacDd PUSHA:所有通用积存器进栈 aEh9za PUSHF:标志进栈 Iqn
(NOq^[ 13w(Tf 12.串操作 e$2P/6k> CMPS:串比较 m(d|TwG{ LODS:从串取 (xoYYO MOVS:串传送 RgW#z-PZF REP:串重复 Y/"t! REPE:相等时重复 F#M(#!)Y" REPZ:为零时重复 %4Qs|CM)m REPNE:不相等时重复 pPag@L REPNZ:不为零时重复 1r_V$o$ SCAS:串扫描 &xhwOgI | |