IBM-PC汇编语言期末总复习资料大全.docxVIP

  • 8
  • 0
  • 约1.46万字
  • 约 21页
  • 2016-11-29 发布于广东
  • 举报
IBM-PC汇编语言期末总复习资料大全.docx

第二章 1、寄存器组(1)通用寄存器数据寄存器EAX(32位) AX(16位) AH(8位)(高位) AL(8位)(低位)累加器 EBX(32位) BX(16位) BH(8位)(高位) BL(8位)(低位)基址变址ECX(32位) CX(16位) CH(8位)(高位) CL(8位)(低位)计数器EDX(32位) DX(16位) DH(8位)(高位) DL(8位)(低位)数据指针或变址寄存器ESP(32位) SP(16位) 堆栈指针寄存器EBP(32位) BP(16位) 基址指针寄存器EDI(32位) DI(16位) 目的变址寄存器ESI(32位) SI(16位) 源变址寄存器(2)专用寄存器EIP(32位) IP(16位) 指令指针寄存器EFLAGS(32位) FLAGS(16位) 标志寄存器ESP (32位) SP(16位) 堆栈指针寄存器2、标志位的符号表示、标志位标志为1标志为0OF 溢出(是/否)OVNVDF 方向(减量/增量)DNUPIF 中断(允许/关闭)EIDISF 符号(负/正)NGPLZF 零(是/否)ZRNZAF 辅助进位(是/否)ACNAPF 奇偶(偶/奇)PEPOCF 进位(是/否)CYNC3、段寄存器CS(16位)代码段 DS(16位)数据段SS(16位)堆栈段 ES(16位)附加段4、段寄存器和相应存放偏移地址的寄存器之间的默认组合段偏移CSIPSSSP或BPDSBX、DI、SI或一个16位数ESDI(用于串指令)第三章1、七种寻址方式(举例)立即寻 MOV AX,3069H寄存器寻 MOV AL,BH在内存中的五种寻址直接寻 MOV AX,[2000H]寄存器间接寻 MOV AX,[BX]寄存器相对寻 MOV AX,COUNT[SI] 或者 MOV AX,[SI+COUNT](不推荐)基址变址寻址 MOV AX,[BP][DI]相对基址变址寻址 MOV AX,MASK[BX][SI]2、指令系统数据传送指令通用数据传送指令MOV 传送MOVSX 带符号扩展传送用源操作数的符号位来填充目的操作数的高位数据位。例:MOVSX EAX,CL把CL寄存器中的8位数,符号扩展为32位数,送到EAX寄存器中。MOVZX 带零扩展传送恒用0来填充目的操作数的高位数据位例:MOVZX DX,AL把AL寄存器中的8位数,零扩展成16位数,送到DX寄存器中。PUSH 进栈入栈时高位字节先入栈,低位字节后入栈。SP指向栈顶。POP 出栈以“先进后出”方式工作。SP指向栈顶PUSHA/PUSHAD 所有寄存器进栈PUSHA(16位):进栈次序为:AX,CX,DX,BX,SP,BP,SI,DIPUSHAD(32位):进栈次序为:EAX,ECX,EDX,EBX,ESP,EBP,ESI,EDIPOPA/POPAD 所有寄存器出栈POPA(16位):出栈次序为:DI,SI,BP,SP,BX,DX,CX,AXPOPAD(32位):出栈次序为:EDI,ESI,EBP,ESP,EBX,EDX,ECX,EAXXCHG 交换例:XCHG AX,BX 交换AX与BX中的数据累加器专用传送指令(只限于使用累加器)IN 输入例:IN AX,28HMOV DATA_WORD,AX把端口28的内容经过AX传送到存储单元DATA_WORD中。OUT 输出例:OUT 5,AL 从AL寄存器输出一个字节到端口5。XLAT 换码地址传送指令LEA 有效地址送寄存器LDS 指针送寄存器和DSLES指针送寄存器和ESLFS指针送寄存器和FSLGS指针送寄存器和GSLSS指针送寄存器和SSLEALEA REG,SRC把源操作数的有效地址送到指定的寄存器中LDS、LES、LFS、LGS、LSS指针送寄存器和段寄存器指令LDS REG,SRC把SRC的偏移地址放到REG中,又把偏移地址(SRC+2)放到DS中标志寄存器传送指令LAHF 标志送AHSAHF AH送标志寄存器PUSHF/PUSHFD 标志进栈POPF/POPFD 标志出栈类型转换指

文档评论(0)

1亿VIP精品文档

相关文档