|
编程中国
|
业界新闻
|
技术文章
|
视频教程
|
下载频道
|
程序源码
|
个人空间
|
编程论坛
|
登录
注册
平板模式
论坛地图
帮助
编程论坛
→
开发语言
→
汇编论坛
→ [讨论]关于END,PROC伪操作的用法(新手犯难了)
我的收件箱(0)
全能ASP/PHP/ASP.NET主机,支持月付
专业
MSSQL
数据库空间,支持月付
专业
MySQL
数据库空间,支持月付
学习型 ASP/PHP/ASP.NET 主机
30
元/年
高端软件开发 = 年薪十万不是梦
赛孚耐:软件保护加密专家
身份认证令牌USB KEY
共有
502
人关注过本帖
标题:[讨论]关于END,PROC伪操作的用法(新手犯难了)
收藏
订阅
推荐
打印
notiger
等级:新手上路
帖子:29
积分:392
注册:2005-5-29
楼主
[讨论]关于END,PROC伪操作的用法(新手犯难了)
很明显,END [label]后面的标号就是程序的入口地址,程序只有找到入口才能运行.因此平时我都是按正确的方法写的.
可是有时看到这种程序,
.model small
.code
.
.
.
end
就结束了.也就是说,程序能找到入口,怎么回事啊,不明白.
还有关于过程,就是main proc far的问题与main proc near 作为主程序
中的far,near的问题,我知道写.com程序可以用near.
具体有啥说法吗?
搜索更多相关主题的帖子:
END
PROC
用法
犯难
2006-5-18 01:05
公子吕
等级:注册会员
帖子:79
积分:890
注册:2006-5-4
第
2
楼
.model small
.code
...
end
这种简写模式是可以的,汇编器能够知道入口点。但若是这样:
data segment
data ends
code segment
assume cs:code,ds:data
...
code ends
end
这时汇编器就找不到入口点,就会出错。
far 和 near 问题书上说的都很详细吧,far是段间调用,自然保存断点的时候要将段地址和偏移要同时保存, 而near 在同一个段里面,只要保存偏移地址就可以了。
2006-5-18 11:20
公子吕
等级:注册会员
帖子:79
积分:890
注册:2006-5-4
第
3
楼
另外补充一下,386的平摊模式(flat)每个任务4G内存没有分段,就只需要near了。
2006-5-18 11:22
notiger
等级:新手上路
帖子:29
积分:392
注册:2005-5-29
第
4
楼
[QUOTE]还有关于过程,就是main proc far的问题与main proc near 作为主程序
中的far,near的问题,我知道写.com程序可以用near.
[/QUOTE]
谢谢楼主.
不过经过本来的实验,MASM500,与MASM
510版本对程序的入口点没有检测,不能不说是个遗憾.
到6.0版本就可以检查出来了.
near 与 far 的调要的方法我能懂.
只是为什么程序一般都用far 类型,而且那么必须.
------------------ 不能输在起跑线上
2006-5-18 12:32
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
Archiver
|
WAP
|
TOP
编程中国
版权所有,并保留所有权利。鲁ICP备08000592号
Powered by
Discuz
, Processed in 0.055616 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved