• <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久久久久久人| 超级碰碰碰碰97久久久久| 久久久亚洲AV波多野结衣| 久久性精品| 久久影院午夜理论片无码 | 久久se精品一区二区影院| 久久精品视频免费| 97久久精品国产精品青草| 久久精品aⅴ无码中文字字幕不卡| 伊人久久大香线蕉av一区| 久久人人爽人人爽人人片AV东京热| 蜜桃麻豆WWW久久囤产精品| 久久久久亚洲AV片无码下载蜜桃| 久久亚洲AV无码精品色午夜| 久久人做人爽一区二区三区| 日日躁夜夜躁狠狠久久AV| 国产精品一区二区久久不卡| 久久精品国产精品国产精品污| 国产成人久久AV免费| 国产精品伦理久久久久久| 国产精品成人久久久久三级午夜电影| 久久涩综合| 无码人妻久久一区二区三区| 国内精品久久国产大陆| 久久九九久精品国产| 久久亚洲精品无码VA大香大香| 久久水蜜桃亚洲av无码精品麻豆| 久久精品成人免费网站| 热RE99久久精品国产66热| 色综合久久无码中文字幕| 99久久婷婷国产综合精品草原 | 午夜精品久久久久久影视777 | 久久99热国产这有精品| 精品国产乱码久久久久久浪潮| 国产99久久久国产精品小说| 国产欧美久久一区二区| 久久精品视频一| 国内精品久久久久久久影视麻豆| 精品久久久久久国产| 久久久久久久综合日本| 99久久免费国产精精品|