汇编网首页登录博客注册
jmuguy的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
文章收藏
友情链接

[2009-06-19 10:28] 汇编指令英文缩写对照(来自PTR 的blog)

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 d flag  
POPD---->pop d flag  
二、算术运算指令  
ADD---->add  
ADC---->add with carry  
INC---->increase 1  
AAA---->ASCII add with adjust  
DAA---->decimal add with adjust  
SUB---->subtract  
SBB---->subtract with borrow  
DEC---->decrease 1  
NEC---->negative  
CMP---->compare  
AAS---->ASCII adjust on subtract  
DAS---->decimal adjust on subtract  
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---->arithmetic shift left  
SHR---->shift right  
SAR---->arithmetic 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---->define word  
PROC---->procedure  
ENDP---->end of procedure  
SEGMENT---->segment  
ASSUME---->assume  
ENDS---->end segment  
END---->end  
1.通用数据传送指令.  
MOV----> move                                传送字或字节  
MOVSX---->extended move with sign data  先符号扩展,再传送  
MOVZX---->extended move with zero data    先零扩展,再传送  
PUSH---->push      把字压入堆栈  
POP---->pop        把字弹出堆栈  
PUSHA---->push all  把AX,CX,DX,BX,SP,BP,SI,DI依次压入堆栈  
POPA---->pop all    把DI,SI,BP,SP,BX,DX,CX,AX依次弹出堆栈  
PUSHAD---->push all data  把EAX,ECX,EDX,EBX,ESP,EBP,ESI,EDI依次压入堆栈  
POPAD---->pop all data   把EDI,ESI,EBP,ESP,EBX,EDX,ECX,EAX依次弹出堆栈  
BSWAP---->byte swap          交换32位寄存器里字节的顺序  
XCHG---->exchange   交换字或字节.( 至少有一个操作数为寄存器,段寄存器不可作为操作数)  
CMPXCHG--->compare and change  比较并交换操作数.( 第二个操作数必须为累加器AL/AX/EAX )  
XADD--->exchange and add先交换再累加.( 结果在第一个操作数里 )  
XLAT---->translate 字节查表转换  
2.输入输出端口传送指令.  
IN---->input   I/O端口输入. ( 语法: IN 累加器, {端口号│DX} )    
OUT---->output I/O端口输出. ( 语法: OUT {端口号│DX},累加器 )  
输入输出端口由立即方式指定时,其范围是 0-255; 由寄存器 DX 指定时, 其范围是 0-65535.  
3.目的地址传送指令.  
LEA---->load effective address                装入有效地址.  
例: LEA DX,string ;把偏移地址存到DX.  
LDS---->load DS             传送目标指针,把指针内容装入DS.  
例: LDS SI,string ;把段地址:偏移地址存到DS:SI.  
LES---->load ES             传送目标指针,把指针内容装入ES.  
例: LES DI,string ;把段地址:偏移地址存到ES:DI.  
LFS---->load FS             传送目标指针,把指针内容装入FS.  
例: LFS DI,string ;把段地址:偏移地址存到FS:DI.  
LGS---->load GS             传送目标指针,把指针内容装入GS.  
例: LGS DI,string ;把段地址:偏移地址存到GS:DI.  
LSS---->load SS             传送目标指针,把指针内容装入SS.  
例: LSS DI,string ;把段地址:偏移地址存到SS:DI.  
4.标志传送指令.  
LAHF-->load AH from flag 标志寄存器传送,把标志装入AH  
SAHF->save AH to flag 标志寄存器传送,把AH内容装入标志寄存器  
PUSHF---->push flag                           标志入栈  
POPF---->pop flag                             标志出栈  
PUSHD---->push d flag                      32位标志入栈  
POPD---->pop d flag                         32位标志出栈  
二、算术运算指令  
ADD---->add         加法  
ADC---->add with carry      带进位加法  
INC---->increase 1          加 1  
AAA---->ASCII add with adjust        加法的ASCII码调整  
DAA---->decimal add with adjust       加法的十进制调整  
SUB---->subtract       减法  
SBB---->subtract with borrow          带借位减法  
DEC---->decrease 1        减 1  
NEC---->negative          求反(以 0 减之)  
CMP---->compare比较.(两操作数作减法,仅修改标志位,不回送结果)  
AAS---->ASCII adjust on subtract 减法的ASCII码调整  
DAS---->decimal adjust on subtract 减法的十进制调整  
MUL---->multiplication       无符号乘法  
IMUL---->integer multiplication 整数乘法  
以上两条,结果回送AH和AL(字节运算),或DX和AX(字运算)  
AAM---->ASCII adjust on multiplication 乘法的ASCII码调整  
DIV---->divide 无符号除法  
IDIV---->integer divide 整数除法  
以上两条,结果回送:  
商回送AL,余数回送AH, (字节运算);  
或 商回送AX,余数回送DX, (字运算)  
AAD-->ASCII adjust on divide 除法的ASCII码调整  
CBW-->change byte to word 字节转换为字. (把AL中字节的符号扩展到AH中去)  
CWD-->change word to double word (把AX中的字的符号扩展到DX中去)  
CWDE-->change word to double word with sign to EAX                (把AX中的字符号扩展到EAX中去)        
CDQ-->change double word to quadrate word  (把EAX中的字的符号扩展到EDX中去)  
三、逻辑运算指令  
AND---->and  与运算  
OR---->or    或运算  
XOR---->xor   异或运算  
NOT---->not    取反  
TEST---->test 测试.(两操作数作与运算,仅修改标志位,不回送结果)  
SHL---->shift left                逻辑左移  
SAL---->arithmetic shift left     算术左移.(=SHL)  
SHR---->shift right               逻辑右移  
SAR---->arithmetic shift right    算术右移.(=SHR)  
ROL---->rotate left               循环左移  
ROR---->rotate right              循环右移  
RCL---->rotate left with carry    通过进位的循环左移  
RCR---->rotate right with carry   通过进位的循环右移  
以上八种移位指令,其移位次数可达255次. 移位一次时, 可直接用操作码. 如 SHL AX,1. 移位>1次时, 则由寄存器CL给出移位次数.  
如 MOV CL,04 SHL AX,CL  
四、串指令  
DS:SI 源串段寄存器 :源串变址.  
ES:DI 目标串段寄存器:目标串变址.  
CX 重复次数计数器.  
AL/AX 扫描值.  
D标志 0表示重复操作中SI和DI应自动增量; 1表示应自动减量.  
Z标志 用来控制扫描或比较操作的结束.  
MOVS---->move string 串传送.  
( MOVSB 传送字符. MOVSW 传送字. MOVSD 传送双字. )  
CMPS---->compare string  
CMPS 串比较.( CMPSB 比较字符. CMPSW 比较字. )  
SCAS---->scan string  
SCAS 串扫描. 把AL或AX的内容与目标串作比较,比较结果反映在标志位.  
LODS---->load string  
LODS 装入串. 把源串中的元素(字或字节)逐一装入AL或AX中.  
( LODSB 传送字符. LODSW 传送字. LODSD 传送双字. )  
STOS---->store string STOS 保存串. 是LODS的逆过程  
REP---->repeat               当CX/ECX<>0时重复  
REPE-->repeat when equal 当ZF=1或比较结果相等,且CX/ECX<>0时重复  
REPZ-->repeat when zero flag当ZF=1或比较结果相等,且CX/ECX<>0时重复  
REPNE-->repeat when not equal 当ZF=0或比较结果不相等,且CX/ECX<>0时重复  
REPNZ---->repeat when zero flag 当ZF=0或比较结果不相等,且CX/ECX<>0时重复  
REPC---->repeat when carry flag当CF=1且CX/ECX<>0时重复  
REPNC-->repeat when not carry flag当CF=0且CX/ECX<>0时重复  
五、程序转移指令  
1>无条件转移指令(长转移)  
JMP---->jump无条件转移指令          CALL---->call过程调用  
RET---->return过程返回          RETF---->return far过程返回  
2>条件转移指令(短转移,-128到+127的距离内)  
JA ----> jump when above不小于或不等于时转移  
JNBE ----> jump when not below or equal 不小于或不等于时转移  
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小于或等于转移  
以上八条,测试无符号整数运算的结果(标志C和Z)  
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 小于或等于转移  
以上八条,测试带符号整数运算的结果(标志S,O和Z)  
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符号位为 "0" 时转移  
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符号位为 "1" 时转移  
3>循环控制指令(短转移)  
LOOP---->loop    CX不为零时循环  
LOOPE---->loop equal CX不为零且标志Z=1时循环  
LOOPZ---->loop zero CX不为零且标志Z=1时循环  
LOOPNE---->loop not equal CX不为零且标志Z=0时循环  
LOOPNZ---->loop not zero CX不为零且标志Z=0时循环  
JCXZ---->jump when CX is zero CX为零时转移  
JECXZ---->jump when ECX is zero ECX为零时转移  
4>中断指令  
INT---->interrupt中断指令 INTO---->overflow interrupt溢出中断 IRET---->interrupt return中断返回  
5>处理器控制指令  
HLT---->halt处理器暂停, 直到出现中断或复位信号才继续  
WAIT---->wait当芯片引线TEST为高电平时使CPU进入等待状态  
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---->define word 定义字(2字节) PROC---->procedure定义过程 ENDP--->end of procedure过程结束  SEGMENT---->segment定义段  ASSUME-->assume建立段寄存器寻址 ENDS---->end segment段结束    END---->end  程序结束
评论次数(1)  |  浏览次数(180)  |  类型(好文转载) |  收藏此文  | 

[  jmuguy   发表于  2009-06-19 10:29  ]

OV   over   flow      
  NV   no   over   flow    
  UP   up    
  DN   down    
  DI   deny   interrupt    
  EI   enable   interrupt    
  PL   plus    
  NG   negative    
  NZ   no   zero    
  ZR   zero    
  NA   no   auxilary   carry    
  AC   auxilary   carry    
  PO   parity   odd    
  PE   parity   even    
  NC   no   carry    
  CY   carry

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码