| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 868 人关注过本帖
标题:为什么此程序得一次性执行才能得到AX=3
只看楼主 加入收藏
linfengye
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-7-1
收藏
 问题点数:0 回复次数:3 
为什么此程序得一次性执行才能得到AX=3
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:0
inc ax
inc ax
inc ax
code ends
end start


本人初学汇编,有好多东西都不太懂,望各位大侠帮俺一把

请问一下:1,此题中的MOV SS,AX是不是将SS的段地址值移给AX,还是说将SS的完整地址移给AX
2,为什么此题用DEBUG时,在单步调试和一次性执行完的两种情况下,AX是不同的值。
3,我尝试着在里面的MOV DS,AX前加一条INC AX的指令,为什么加上后我一用G命令把整个程序一次性执行时,DEBUG会自动跳回CMD的界面

谢谢了!

搜索更多相关主题的帖子: mov stack segment ends 
2007-07-01 17:31
菜鸟上路
Rank: 4
等 级:贵宾
威 望:14
帖 子:1120
专家分:0
注 册:2006-3-21
收藏
得分:0 
1、将段地址赋给SS
2、单步执行只是看到下一次状态的值,一次执行完是程序执行完的值
3、因为段值跟你定义的不一样

2007-07-01 18:39
zez2626
Rank: 1
等 级:新手上路
威 望:1
帖 子:40
专家分:0
注 册:2007-6-16
收藏
得分:0 

拿来的调用呀!怪了!本人看不懂

2007-07-01 19:50
linfengye
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-7-1
收藏
得分:0 
谢谢版主了!~
2007-07-03 21:55
快速回复:为什么此程序得一次性执行才能得到AX=3
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011343 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved