1.信息就是位
#include <stdio.h>
int main(){
printf("hello, world\n")
return 0;
}
1.上述程序的生命周期是从一个源程序或者说源文件开始的,而源文件实际上就是由0和1组成位序列,8个位为一组,成为字节,如果int32则表示由4个字节组成
2.C语言的有点方便移植、unix密切相关、语言小、简单、面向过程编程
3.C语言的缺点不支持抽象的显示支持,例如类,对象等
2.程序被翻译成不同的格式
上边的hello.c程序被系统加载执行总共分为4个阶段
1.预处理阶段
加载#include<sdtio.h>命令并读取,跟其他命令合成一个新的c文件,通常以.i来作为文件扩展名
2.编译阶段
这个阶段就是将hello.i翻译成hello.s,这个过程就是将c语言翻译成汇编语言程序并生成新的文件hello.s
3.汇编阶段
将汇编语言翻译成机器指令,也就是二进制文件。翻译完成后得到hello.o这个二进制文件
4.链接阶段
上述程序中用到了printf函数,这是c编译器提供的标准c库的一个函数,会生成一个名为printf.o的二进制文件,而这个阶段则是合并hello.o和printf.o后生成hello文件,也简称可执行文件,可以在被加载到内存后由系统执行的
原文:https://www.cnblogs.com/xmx-yr/p/11215144.html