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文件,也简称可执行文件,可以在被加载到内存后由系统执行的

 

posted on 2019-07-19 18:37  小熊家  阅读(91)  评论(0)    收藏  举报