打印

44B0的一段小的启动代码求分析

[复制链接]
1631|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jordanli22|  楼主 | 2013-3-15 12:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ENTRY
        IF : DEF : |ads$version|
        ELSE
        EXPORT        __main
__main



主要是if后面部分看不懂,还有if后面的那两个::是什么意思?
再问:
export __main  的__(两个下划线)是什么意思,有时候我还看到其他情况:
import _main(一个下划线)
export main (没下划线)  
有什么区别?

相关帖子

沙发
jlass| | 2013-3-15 14:41 | 只看该作者
下划线的那个是汇编和C程序的函数相互调用时用的。汇编的要加下划线,对应到C就不用。

其他的也不懂。

使用特权

评论回复
板凳
jordanli22|  楼主 | 2013-3-15 15:35 | 只看该作者
有一个下划线和两个下划线啊?你指哪个?

使用特权

评论回复
地板
jlass| | 2013-3-15 16:08 | 只看该作者
本帖最后由 jlass 于 2013-3-15 16:10 编辑
jordanli22 发表于 2013-3-15 15:35
有一个下划线和两个下划线啊?你指哪个?

多加一个下划线,比如C是main,汇编就是_main,C是_main,汇编就是__mian
而C同时使用main和_main,估计是为了防止冲突。


虽然不是非常肯定,但应该没错。

使用特权

评论回复
5
阿南| | 2013-3-15 16:08 | 只看该作者
这些是不同编译器规定的不同的汇编符号

使用特权

评论回复
6
jordanli22|  楼主 | 2013-3-15 22:49 | 只看该作者
本帖最后由 jordanli22 于 2013-3-15 23:00 编辑

最后让大家来给我总结一下吧,估计只有这几种情况了吧:(如果还有其他情况请大家指导)

汇编定义的一个标号main要共享出去写法是:

汇编引进c文件里面定义的一个标号main写法是:

汇编引进另一个汇编里面定义的一个标号main写法是:

c文件定义的一个标号main要共享出去写法是(我假设的,不知道有没有这种情况):

c文件引进汇编里面定义的一个标号main写法是(我假设的,不知道有没有这种情况):



使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

9

帖子

0

粉丝