汇编网首页登录博客注册
a_qiu_a的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
好友圈
文章收藏
友情链接

[2009-08-14 16:24] 我的监测点3.1和疑惑

(1): AX=2662
     BX=E626
     AX=E626
     AX=2662
     BX=D6E6
     AX=FD48
     AX=2C14
     AX=0000
     AX=00E6
     BX=0000
     BX=0026
     AX=000c
(2):1) mov ax,6622h
     这个时候cs=2000h,ip=3,ds=1000h,ax=6622h,bx=0
    2) jmp off0:0100
     这个时候cs=0ff0h,ip=0100h,ds=1000h,ax=6622h,bx=0
    3) mov ax,2000h
     这个时候cs=0ff0h,ip=0103h,ds=1000h,ax=2000h,bx=0
    4) mov ds,ax
     这个时候cs=0ff0h,ip=0105h,ds=2000h,ax=2000h,bx=0
    5) mov ax,[0008]
     这个时候cs=0ff0h,ip=0108h,ds=2000h,ax=c389h,bx=0
    6) mov ax,[0002]
     这个时候cs=0ff0h,ip=010bh,ds=2000h,ax=ea66h,bx=0
评论次数(1)  |  浏览次数(591)  |  类型(汇编作业) |  收藏此文  | 

[  younggay   发表于  2009-08-18 10:02  ]

你的疑惑是什么呢?是第(2)题吧。呵呵
第二提可以看到,你在执行指令过程中,你的栈空间有一些不是你操作放入的数据,那是中断过程在使用你的当前栈空间。在debug下使用T等中断指令,会引发中断过程,终端过程再调用中断例程之前会使用当前栈空间来存放cs,ip和标志寄存器这些记录cpu运行现场的数据。这个内容的讲解在以后的学习中会学到。不过,对于debug下调试程序或跟踪程序的时候,要留意这个东西哟。

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码