请计算机汇编语言的老师详细讲解一下.docVIP

  • 5
  • 0
  • 约2.12千字
  • 约 7页
  • 2019-04-18 发布于安徽
  • 举报

请计算机汇编语言的老师详细讲解一下.doc

请计算机汇编语言的老师详细讲解一下 这是我自学王爽老师著的汇编语言一书所遇到的问题 第三章 寄存器(内存访问) 3.7 CPU提供的栈机制 图3.10描述了8086CPU对PUSH指令的执行过程。 ①图的段寄存器SS=1000H、寄存器SP=000EH,这个是假设还是从地址1000FH------10000H得来的?※从以往概念可以得出,栈顶段地址是1000H,偏移地址是000EH,是不是也可以用公式1000H·10H+000EH=1000EH呢?※栈顶的段地址为:1000∶000E=1000EH,这个除法该怎样除?AX=2266H,是不是也是假设? 如果将10000H~1000FH这段空间当作栈,初始状态栈是空的,此时,SS=1000H,SP=?思考后看分析。 在分析中,栈最底部的字单元地址为1000:000E,通过学习得知,字型数据用两个单元存放,那就是000EH与000FH,高位应是000FH,低位是000EH。虽有后进先出的规则,那栈最底部的字单元也应是000FH,所以地址为1000:000F。 为什么说,当栈中只有一个元素的时候,SS=1000H,SP=000EH,栈为空?不是有两个元素吗?000EH和000FH。 图3.12描述了8086CPU对POP指令的执行过程。 图3 CPU执行第二个POP AX,这时AX=0123H;为什么SP=SP+2,栈为空了吗?那SP岂

文档评论(0)

1亿VIP精品文档

相关文档