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

我的博客

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

[2010-02-11 13:26] 第10章检测题

下面的程序执行完add ax,5时,ax中的数值为多少____
        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] 
        add        ax,2 
        inc        ax 
        add        ax,5 
        mov        ax,4c00H 
        int        21H 
code    ends 
        end start

1、  3 
2、  8 
3、  0 
4、  4c00H

这个题目有意思,要是答案中有死循环,或者有跑飞之类的选项,估计我就选错了。

正确答案是8。数据段和栈段重合,call指令第一步保存返回地址,保存的位置,正好就是第二步要读取目标地址的位置。
评论次数(0)  |  浏览次数(645)  |  类型(检测题) |  收藏此文  | 
 
 请输入验证码  (提示:点击验证码输入框,以获取验证码