编译和链接,编译型语言和解释型语言

编译型语言通过编译和链接生成可执行文件,执行效率高但跨平台需要重新编译。解释型语言运行时逐行翻译,灵活但性能稍逊。
摘要由CSDN通过智能技术生成

在多道程序环境中,要想将用户源代码变成一个可以内存中执行的程序,通常分为三个步骤:编译、链接、载入。

1)编译:将预处理生成的文件,经过语法分析、词法分析、语义分析以及优化后编译成若干个目标模块。可以理解为高级语言翻译为计算机可以理解的二进制代码,即机器语言。

2)链接:由链接程序将编译后形成的一组目标模块以及它们需要的库函数链接在一起,形成一个完整的载入模型。链接主要解决模块间的相互引用的问题,分为地址和空间分配,符号解析和重定位几个步骤。在编译阶段生成目标文件时,会暂时搁置那些外部引用,而这些外部引用就是在链接时确定的,链接器在链接时会根据符号名称去相应模块中寻找对应符号。

3)载入:由载入程序将载入模块载入内存。


以C/C++语言为例,把源文件编译成代码文件,在windows下面为.obj文件,在unix、Linux下面就是.o文件,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值