| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2551 人关注过本帖
标题:[讨论]关于END,PROC伪操作的用法(新手犯难了)
只看楼主 加入收藏
notiger
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2005-5-29
收藏
 问题点数:0 回复次数:3 
[讨论]关于END,PROC伪操作的用法(新手犯难了)
很明显,END [label]后面的标号就是程序的入口地址,程序只有找到入口才能运行.因此平时我都是按正确的方法写的.
可是有时看到这种程序,
.model small
.code
.
.
.
end
就结束了.也就是说,程序能找到入口,怎么回事啊,不明白.

还有关于过程,就是main proc far的问题与main proc near 作为主程序
中的far,near的问题,我知道写.com程序可以用near.
具体有啥说法吗?
搜索更多相关主题的帖子: END PROC 用法 犯难 
2006-05-18 01:05
公子吕
Rank: 1
等 级:新手上路
帖 子:79
专家分:0
注 册:2006-5-4
收藏
得分:0 
.model small
.code
...
end
这种简写模式是可以的,汇编器能够知道入口点。但若是这样:
data segment
data ends
code segment
assume cs:code,ds:data
...
code ends
end
这时汇编器就找不到入口点,就会出错。

far 和 near 问题书上说的都很详细吧,far是段间调用,自然保存断点的时候要将段地址和偏移要同时保存, 而near 在同一个段里面,只要保存偏移地址就可以了。


2006-05-18 11:20
公子吕
Rank: 1
等 级:新手上路
帖 子:79
专家分:0
注 册:2006-5-4
收藏
得分:0 
另外补充一下,386的平摊模式(flat)每个任务4G内存没有分段,就只需要near了。
2006-05-18 11:22
notiger
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2005-5-29
收藏
得分:0 
[QUOTE]还有关于过程,就是main proc far的问题与main proc near 作为主程序
中的far,near的问题,我知道写.com程序可以用near.
[/QUOTE]
谢谢楼主.
不过经过本来的实验,MASM500,与MASM
510版本对程序的入口点没有检测,不能不说是个遗憾.
到6.0版本就可以检查出来了.
near 与 far 的调要的方法我能懂.
只是为什么程序一般都用far 类型,而且那么必须.

------------------ 不能输在起跑线上
2006-05-18 12:32
快速回复:[讨论]关于END,PROC伪操作的用法(新手犯难了)
数据加载中...
 
   



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

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