您的位置:首页 > 移动开发 > Objective-C

从ASCII码源文件到可执行目标文件

2013-09-05 21:14 441 查看
/*main.c*/

void swap();

int buf[2]={1,2};

int main(){

swap();

return 0;

}

/*swap.c*/

extern int buf[];

int *bufp0=&buf[0];

int *bufp1;

void swap(){

int temp;

bufp1=&bufp[1];

temp=*bufp[0];

*bufp0=*bufp1;

*bufp1=temp;

}


1.C预处理器(cpp)将源程序main.c翻译成一个ASCII码的中间文件main.i

2.C编译器(ccl)将main.i翻译成一个ASCII汇编语言文件main.s

3.汇编器as将main.s翻译成一个可重定位目标文件(relocateble object file)main.o

//相同过程生成swap.o

4.连接器程序ld将main.o和swap.o以及一些必要的系统目标文件组合起来,创建一个可执行目标文件

5.当我们用类似unix>./p运行可执行文件p时,加载器拷贝p中的代码和数据到存储器,然后将转移控制转移到这个程序的开头
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  汇编语言 object 数据
相关文章推荐