文档介绍:第三章指令系统——数据传送指令xiaoxia7761@信息学院:叶晓霞《汇编语言》第3章8086指令系统8086指令系统按功能可分为六大类:(1)数据传送类指令(2)算术运算类指令(3)逻辑指令(4)串处理指令(5)控制转移指令(6)处理机控制指令数据传送类指令主要有:通用数据传送指令:MOV、PUSH、POP、XCHG累加器专用传送指令:IN、OUT地址传送指令:LEA、LDS、LES标志寄存器传送指令:LAHF、SAHF、PUSHF、POPF类型转换指令:CBW、CWD一、通用数据传送指令MOV 格式:MOV DST,SRC;可在CPU内部或;在CPU与存储器之间传送数据MOVDS,ESMOVDS,:1、SRC和DST的操作类型必须明确且一致。2、DST不能是立即数。3、DST、SRC不能同时为存储器寻址。4、DST、SRC也不能同时为段寄存器。5、立即数不能直接送段寄存器,必须通过寄存器如AX送到段寄存器。6、指令执行不影响标志位。问题引入CPUCXBXAX按名称访问内存单元按地址访问有没有方法提高CPU的访存速度?学习内容需要了解的内容栈操作机制push与pop指令的格式与功能栈段定义与栈的应用采用的教学方法教学方法实例讲解法问题解决法模拟演示法二、栈操作指令PUSH/POP1、栈操作机制栈是一种具有特殊的访问方式的存储空间。我们研究栈的角度:栈的操作规则:LIFO(LastInFirstOut,后进先出,默认对栈顶单元进行操作)栈的基本操作入栈出栈pushpop从栈顶取出一个元素将一个新的元素放到栈顶2、push/pop指令一、push和pop指令的格式pushreg/mempopreg/mem8086CPU的入栈和出栈操作都是以为单位进行的。字pushax;将ax的内容入栈popds;将栈顶元素传送给dspush[bx];将ds:[bx]字单元的内容入栈pop[2];将栈顶元素传送给ds:[2]单元判断题对于8086CPU,,[BX],,下列哪条指令是错误的()[BX][BX],[BX+100H],:适当记忆重在理解—理解万岁!!push、pop指令CS:存放指令的段地址IP:存放指令的偏移地址CPU执行push和pop的时候,如何知道哪个单元是栈顶单元?SS:存放堆栈的段地址SP:存放栈顶的偏移地址结论:任意时刻,SS:SP指向栈顶元素。CPU如何知道当前要执行的指令所在的位置?回忆