• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 46  文章 - 39  trackbacks - 0
            <2012年6月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            1234567

            常用鏈接

            留言簿(2)

            隨筆分類(lèi)

            隨筆檔案

            友情鏈接

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            例子:

            環(huán)境:linux
            編譯器:gcc
            源碼:hello.c

            1 #include <stdio.h>
            2 
            3 int main()
            4 {
            5       printf("hello, world\n");
            6 }


            :~$ gcc -o hello hello.c

            1、 源碼文件hello.c           通過(guò)預(yù)處理器->修改過(guò)的源碼文件hello.i
            2、                     hello.i   通過(guò)編譯器->匯編代碼hello.s
            3、                    hello.s   通過(guò)匯編器->浮動(dòng)文件hello.o
            4、        hello.o+printf.o   通過(guò)連接器->可執(zhí)行文件hello。



            1、預(yù)處理階段    預(yù)處理器(cpp)根據(jù)#后面的指令修改源代碼。例:hello.c中的#include <stdio.h> 命令告訴預(yù)處理器把系統(tǒng)頭文件stdio.h插入到程序中生產(chǎn)另外一個(gè)C程序,一般后綴名為.i。

            2、編譯階段       編譯器(cc1)把hello.i文件轉(zhuǎn)化成匯編代碼hello.s文件。

            3、匯編階段       匯編器(as)把hello.s轉(zhuǎn)化成機(jī)器語(yǔ)言指令浮動(dòng)文件程序hello.o。

            4、連接階段       hello程序調(diào)用了標(biāo)準(zhǔn)C庫(kù)printf函數(shù)。連接器(ld)把printf.o和hello.o連接成hello可執(zhí)行文件。
            posted on 2012-05-24 14:10 canaan 閱讀(2344) 評(píng)論(2)  編輯 收藏 引用 所屬分類(lèi): 讀書(shū)筆記

            FeedBack:
            # re: 編譯器編譯原理四部曲 2012-06-20 10:09 ZRJ
            請(qǐng)問(wèn)一下,連接階段之后,是不是說(shuō)生成的hello可執(zhí)行文件就包括了printf.o的全部?jī)?nèi)容呢,就是說(shuō),可執(zhí)行文件到了一個(gè)沒(méi)有printf.o的地方也可以正常執(zhí)行?  回復(fù)  更多評(píng)論
              
            # re: 編譯器編譯原理四部曲 2013-05-07 21:48 canaan
            @ZRJ
            是的,printf.o已經(jīng)被合并到執(zhí)行文件當(dāng)中了  回復(fù)  更多評(píng)論
              
            日韩亚洲国产综合久久久| 国产精品久久久久久久久久影院| 亚洲午夜久久久久妓女影院| 亚洲精品第一综合99久久| 老色鬼久久亚洲AV综合| 日本免费久久久久久久网站| 欧美精品九九99久久在观看| 日本强好片久久久久久AAA | 国产精品18久久久久久vr | 久久狠狠色狠狠色综合| 久久影院午夜理论片无码| 亚洲国产一成人久久精品| 久久久WWW成人免费毛片| 国内精品久久久久久久久电影网| 久久综合久久久| 亚洲精品乱码久久久久66| 久久久久国色AV免费观看| 99久久综合狠狠综合久久止| 日产精品久久久久久久| 国产巨作麻豆欧美亚洲综合久久| 欧美午夜精品久久久久免费视| 久久人人超碰精品CAOPOREN| 久久久久国产一级毛片高清版| 99久久精品免费看国产一区二区三区 | 无码人妻久久一区二区三区蜜桃| 99国产精品久久久久久久成人热| 日韩va亚洲va欧美va久久| 国产精品久久久亚洲| 一本色道久久88精品综合| 无码任你躁久久久久久久| 久久91精品综合国产首页| 久久夜色精品国产亚洲| 青青青青久久精品国产| 久久精品国产亚洲综合色| 久久成人影院精品777| 久久亚洲精品人成综合网| 日韩久久久久久中文人妻| 996久久国产精品线观看| 久久国产高清字幕中文| 亚洲国产成人久久精品影视| 99久久国产热无码精品免费久久久久|