资源描述:
《汇编语言指令集》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、东哥单片机学习网www.picavr.com汇编语言指令集一、数据传输指令1.通用数据传送指令.MOV(MOVe)传送字或字节.MOVS(MOVeString)串传送指令MOVSX先符号扩展,再传送.MOVZX先零扩展,再传送.PUSH把字压入堆栈.POP把字弹出堆栈.PUSHA把AX,CX,DX,BX,SP,BP,SI,DI依次压入堆栈.POPA把DI,SI,BP,SP,BX,DX,CX,AX依次弹出堆栈.PUSHAD把EAX,ECX,EDX,EBX,ESP,EBP,ESI,EDI依次压入堆栈.POPAD把EDI,ESI,EBP,ES
2、P,EBX,EDX,ECX,EAX依次弹出堆栈.BSWAP交换32位寄存器里字节的顺序XCHG(eXCHanG)交换字或字节.(至少有一个操作数为寄存器,段寄存器不可作为操作数)CMPXCHG比较并交换操作数.(第二个操作数必须为累加器AL/AX/EAX)XADD先交换再累加.(结果在第一个操作数里)XLAT(TRANSLATE)字节查表转换.──BX指向一张256字节的表的起点,AL为表的索引值(0-255,即0-FFH);返回AL为查表结果.([BX+AL]->AL)2.输入输出端口传送指令.INI/O端口输入.(语法:IN累加器,
3、{端口号│DX})OUTI/O端口输出.(语法:OUT{端口号│DX},累加器)输入输出端口由立即方式指定时,其范围是0-255;由寄存器DX指定时,其范围是0-65535.3.目的地址传送指令.LEA(LoadEffectiveAddress)装入有效地址.例:LEADX,string;把偏移地址存到DX.LDS(LoadDSwithpointer)传送目标指针,把指针内容装入DS.例:LDSSI,string;把段地址:偏移地址存到DS:SI.LES(LoadESwithpointer)传送目标指针,把指针内容装入ES.例:LESD
4、I,string;把段地址:偏移地址存到ES:DI.LFS传送目标指针,把指针内容装入FS.例:LFSDI,string;把段地址:偏移地址存到FS:DI.LGS传送目标指针,把指针内容装入GS.例:LGSDI,string;把段地址:偏移地址存到GS:DI.LSS传送目标指针,把指针内容装入SS.例:LSSDI,string;把段地址:偏移地址存到SS:DI.4.标志传送指令.LAHF(LoadAHwithFlags)标志寄存器传送,把标志装入AH.东哥单片机学习网,提供单片机学习开发板,编程器,仿真器,电子元器件,承接电子产品开发。
5、汇编语言指令集东哥单片机学习网www.picavr.comSAHF(StoreAHintoFlgs)标志寄存器传送,把AH内容装入标志寄存器.PUSHF(PUSHtheFlags)标志入栈.POPF(POPtheFlags)标志出栈.PUSHD32位标志入栈.POPD32位标志出栈.二、算术运算指令───────────────────────────────────────ADD加法.ADC带进位加法.INC加1.AAA加法的ASCII码调整.非压缩的BCD码加法十进制调整指令DAA加法的十进制调整.压缩的BCD码加法十进制调整指令S
6、UB(SUBtract)减法.SBB(SuVtrachwithborrow)带借位减法.DEC(DECrement)减1.NEC(NEGate)求反(以0减之).CMP(CoMPare)比较.(两操作数作减法,仅修改标志位,不回送结果).AAS减法的ASCII码调整.非压缩的BCD码加法十进制调整指令DAS减法的十进制调整.压缩的BCD码减法十进制调整指令MUL(unsingedMULtiple)无符号乘法.IMUL(sIgnedMULtiple)整数乘法.以上两条,结果回送AH和AL(字节运算),或DX和AX(字运算),AAM乘法的A
7、SCII码调整.DIV(unsignedDIVide)无符号除法.IDIV(sIgnedDIVide)整数除法.以上两条,结果回送:商回送AL,余数回送AH,(字节运算);或商回送AX,余数回送DX,(字运算).AAD除法的ASCII码调整.CBW(CountBytetoWord)字节转换为字.(把AL中字节的符号扩展到AH中去)CWD(CountWordtoDobleword)字转换为双字.(把AX中的字的符号扩展到DX中去)CWDE字转换为双字.(把AX中的字符号扩展到EAX中去)CDQ双字扩展.(把EAX中的字的符号扩展到EDX中
8、去)三、逻辑运算指令───────────────────────────────────────AND与运算.or或运算.XOR异或运算.NOT取反.TEST测试.(两操作数作与运算,仅修改标志位,不回送