王爽汇编第十章检测点10.5分析~(整理)

1.

先看源程序:
assume cs:code
stack segment
dw 8 dup (0)
stack ends

code segment
start :mov ax,stack
       mov ss,ax
      mov sp,16       

      mov ds,ax      
      mov ax,0 
      call word ptr ds:[0eH]    
      inc ax
      inc ax
      inc ax
code ends
end start
分析:  
   其实,这题 它的 栈段地址SS 和 数据段地址DS  他们的值都是一样的,说白了都在同一段内
当执行到 call word ptr ds:[0eH]的时候,首先是将 inc ax的IP地址0011入栈,那么此时的(SP)=(sp)-2也就是【0eH】,此时【0eH】处得值也就是inc ax 的IP地址0011,所以执行完call word ptr ds:[0eH]以后直接转移到下面地址处继续执行。

2.

10.5(2)的原理与这个是一样的~~只是多压入了cs~

你可能感兴趣的:(汇编)