青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

XY

沒有任何借口
posts - 9, comments - 31, trackbacks - 0, articles - 0
  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

                                                                                       程序是如何運(yùn)行的

作為一個程序員,已不知編了多少行代碼。但若問我程序是如何在計算機(jī)中運(yùn)行的,我怕只有張口結(jié)舌。書中第一章就給了我們相關(guān)的答案。

首先,看如下最簡單的C語言Helloword的代碼

1#include <stdio.h>
2
3int main()
4{
5   printf("hello, world\n");
6}
上面的代碼我們保存在helloworld.c文件中。其本質(zhì)實際上是由0、1的比特(位)序列構(gòu)成的。8位為一個字節(jié)。每個字節(jié)對應(yīng)某個文本字符。不少系統(tǒng)用ASCII來表示文本字符。實際是由一個唯一的同字節(jié)大小的整數(shù)值來表示每個字符。下面給出helloworld.c的ASCII表示。
#      i         n        c       l       u       d      e     <sp>   <     s     t        d        i       o      .
35   105    110    99    108  117  100   101   32     60  115  116   100   105  111  46
h       >      \n       \n      i        n      t     <sp>   m      a      i       n       (       )      \n     {
104  62     10     10     105  110  116   32    109    97   105  110   40    41   10   123
\n     <sp> <sp> <sp> <sp>   p      r      i       n        t       f      (       "      h       e       l
10    32     32     32     32    112  114  105  110    116  102  40    34   104   101   108
l       o       ,        <sp>  w      o      r       l      d        \       n       "       )       ;       \n      }
108 111    44     32     119  111  114  108  100    92    110  34    41   59      10     125
以此類推,在計算機(jī)系統(tǒng)中,任何介質(zhì)中的數(shù)據(jù)都是比特序列。把他們區(qū)分成不同的數(shù)據(jù)對象,是通過數(shù)據(jù)對象的上下文來確定的。

程序編譯
程序的編譯過程如下圖所示,分為預(yù)處理、編譯、匯編、鏈接等幾個階段。

預(yù)處理:預(yù)處理相當(dāng)于根據(jù)預(yù)處理命令組裝成新的C程序,不過常以i為擴(kuò)展名。
編譯:    將得到的i文件翻譯成匯編代碼。s文件。
匯編:    將匯編文件翻譯成機(jī)器指令,并打包成可重定位目標(biāo)程序的O文件。該文件是二進(jìn)制文件,字節(jié)編碼是機(jī)器指令。
鏈接:    將引用的其他O文件并入到我們程序所在的o文件中,處理得到最終的可執(zhí)行文件。

硬件組成:
從下圖中看出一個典型的系統(tǒng)由總線、Cpu、I/O設(shè)備、主存等構(gòu)成。

CPU: Central Processing Unit,  ALU: Arithmetic/Logic Unit,  PC: Program counter,  USB: Universal Serial Bus.

程序執(zhí)行
我們已經(jīng)討論了可執(zhí)行文件產(chǎn)生的過程。接下來討論哈可執(zhí)行文件執(zhí)行的過程。從上面途中的彩色線條可以清晰的看到這個過程,我們簡單的把它分為6步。
1.shell程序執(zhí)行指令,等待用戶輸入,這里我們輸入“hello”。
2.shell程序?qū)⒆址鹨蛔x到寄存器中
3.再從寄存器取出放到主存中
4.當(dāng)我們敲入回車時,shell程序得知輸入結(jié)束,將hello目標(biāo)文件的代碼和數(shù)據(jù)拷貝到主存,從而加載hello文件數(shù)據(jù)包括最終被輸出的字符串“hello,world\n”.利用了DMA訪問技術(shù),數(shù)據(jù)可不經(jīng)CPU直接到主存
5.執(zhí)行主程序中的機(jī)器語言指令,將“hello,world\n”串的字節(jié)從主存拷貝到寄存器堆。
6.從寄存器中把文件拷貝到顯示設(shè)備。

Feedback

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2008-07-05 17:53 by passerby
頂。
是本好書,只是現(xiàn)在還沒時間去看。

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2008-07-05 23:33 by 訪客
你這個基本上就是摘抄的

前3章看著比較吃不消

特別是第三章 y86架構(gòu)的研究與實現(xiàn)

剩下的直到unix io 網(wǎng)絡(luò)編程 多線程之前 是本書的精華部分 值得通讀

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2008-07-05 23:51 by 路緣
@訪客
第一章內(nèi)容很少,也沒有其他自己的體會。就把自己認(rèn)為主要的東西羅列一下。
第二章信息表示和處理,以及第三章C的匯編表示,就肯定會用自己的理解來描述。因為我在閱讀時,確實很多地方都是反復(fù)閱讀,才明白了其中的道理。
后面我還會繼續(xù)相關(guān)的隨筆,會加入自己是如何從不明白到明白這個過程的描述。

其次感覺這本書習(xí)題也編得很好,看書看不明白,把題做了過后,感覺就明白了。

可能我以后若是歸納總結(jié)書上的內(nèi)容,注明讀書筆記可能會好些。因為就算是寫理解,也是來源書上的觀點(diǎn)。

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2008-07-06 11:19 by ZelluX
@訪客
y86是第四章
這本書是我們專業(yè)課的教材,上一年,除了第九章都講了,收獲很大

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2008-07-08 22:48 by 劉遠(yuǎn)清
這本書確實很牛逼!那天看了你的文章就去網(wǎng)上找了電子書來看,剛看完了一章,講的夠清楚,值得一看!

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2008-07-10 23:17 by 夢在天涯
看了你的第一張就知道是好書了,謝謝,以前沒有看過啊,要是有的化,給大家個地址,大家保證更高興啊!

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2008-07-10 23:23 by 夢在天涯
能不能說下,書的全名,說是chinapub的連接!謝謝先!

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2008-07-11 12:55 by 路緣
@夢在天涯
我還以為大家都知道這本書呢。全名就是我寫的啊,
英文名是《Computer Systems A Programmer’s Perspective》
不過電子版我只有英文版的。這本書覺得值得買本紙版的來珍藏。
本來說共享個電子版的鏈接,但老是出問題上傳不上去。很好找的。
http://www.programsalon.com/ 像這個網(wǎng)站上就有。

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2008-07-14 12:19 by larryliuqing
網(wǎng)上有啊!上次我看了這篇文章才到網(wǎng)上下的!

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2009-02-26 09:32 by 戈多
樓主有沒有這本書的家庭作業(yè)答案啊,我小菜一個,很多題目做的是似是而非。

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2009-10-06 01:33 by dads
一般不看這樣的書,細(xì)細(xì)松松的,還是把大學(xué)里的那些書看好吧,
比如數(shù)字電路,計算機(jī)原理,編譯原理
這些充分理解了再來看這篇文章,那簡直是高屋建瓴;

# re: 深入理解計算機(jī)系統(tǒng)1_程序是如何運(yùn)行的  回復(fù)  更多評論   

2011-09-14 09:24 by 圖—圖—
抄襲

只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲二区三区四区| 一区二区三区不卡视频在线观看 | 国产一区二区黄| 日韩亚洲精品电影| 美女91精品| 久久本道综合色狠狠五月| 欧美电影免费观看大全| 久久久久国产精品www| 日韩视频亚洲视频| 欧美极品aⅴ影院| 亚洲国产成人精品女人久久久| 西西裸体人体做爰大胆久久久| 91久久精品一区二区三区| 久久午夜国产精品| 在线观看亚洲视频啊啊啊啊| 久久九九99| 久久久激情视频| 国产一区二区三区免费在线观看 | 亚洲福利视频网| 模特精品在线| 91久久精品一区| 最近中文字幕日韩精品| 欧美成人xxx| 99国产精品99久久久久久粉嫩| 欧美激情精品| 欧美三级电影大全| 欧美在线日韩在线| 久久精品在线| 亚洲日本中文字幕| 一本色道久久加勒比精品| 欧美性天天影院| 欧美精品偷拍| 亚洲视频在线观看一区| 亚洲午夜伦理| 国产一区二区中文| 欧美大秀在线观看| 欧美日韩中文| 久久精品国产亚洲高清剧情介绍| 亚洲欧美文学| 亚洲欧洲在线视频| 亚洲精品在线免费| 国产精品视频免费观看| 久久躁日日躁aaaaxxxx| 欧美激情1区2区3区| 亚洲一区一卡| 久久精品国产第一区二区三区| 亚洲国产成人av在线| 9色国产精品| 国产视频久久久久久久| 亚洲国产一区二区三区在线播| 欧美日韩在线视频一区| 久久另类ts人妖一区二区| 欧美成年人网站| 久久激情综合网| 欧美激情网友自拍| 久久久久久久久久码影片| 欧美日本韩国在线| 久久福利资源站| 欧美激情一区二区三区蜜桃视频| 欧美一区二区免费| 欧美精品1区2区| 久久免费国产精品| 欧美视频在线免费看| 免费一级欧美片在线播放| 欧美午夜免费| 欧美激情第8页| 久久精品国产成人| 欧美精品自拍偷拍动漫精品| 久久九九热免费视频| 欧美三级乱人伦电影| 亚洲国产精品99久久久久久久久| 国产精品国色综合久久| 亚洲国产成人不卡| 黄网动漫久久久| 午夜亚洲精品| 亚洲小说春色综合另类电影| 久久麻豆一区二区| 先锋影音久久| 国产精品va在线| 亚洲精品视频啊美女在线直播| 伊人精品视频| 久久成人精品无人区| 久久国内精品视频| 国产欧美韩日| 亚洲性夜色噜噜噜7777| 亚洲欧美日韩在线观看a三区| 欧美日韩精品二区| 亚洲免费不卡| 亚洲视频第一页| 欧美日韩精品综合在线| 亚洲黄色免费| 99re8这里有精品热视频免费| 麻豆成人在线播放| 亚洲高清不卡一区| 亚洲精品欧美日韩专区| 欧美国产专区| 亚洲国产一成人久久精品| 日韩视频一区二区| 欧美激情日韩| 这里只有精品视频在线| 亚洲免费在线视频| 国产精品久久一区主播| 亚洲资源在线观看| 久久婷婷av| 亚洲日本中文字幕免费在线不卡| 蜜臀va亚洲va欧美va天堂| 亚洲大片在线| 亚洲一区二区欧美| 国产日韩在线一区| 久久伊人一区二区| 亚洲激情视频在线| 亚洲一级高清| 国产一二精品视频| 欧美1区2区视频| 亚洲靠逼com| 欧美亚洲免费电影| 亚洲电影免费| 欧美三级日本三级少妇99| 亚洲天堂成人在线视频| 久久免费的精品国产v∧| 在线观看亚洲a| 欧美日韩午夜在线视频| 欧美一区二区大片| 亚洲精美视频| 欧美伊人久久久久久午夜久久久久 | 国产精品草莓在线免费观看| 一区二区三区高清视频在线观看 | 91久久精品久久国产性色也91| 欧美黄免费看| 在线观看亚洲a| 欧美精品性视频| 亚洲欧美国产制服动漫| 欧美成人黑人xx视频免费观看| 亚洲人在线视频| 国产欧美日韩视频一区二区| 久久男人资源视频| 亚洲午夜性刺激影院| 久久在线视频| 亚洲午夜一区二区| 亚洲电影免费观看高清完整版| 欧美精品在线一区二区三区| 午夜日韩av| 91久久精品日日躁夜夜躁国产| 久久精品一区| 亚洲视频图片小说| 亚洲第一区中文99精品| 国产精品一区二区在线| 欧美另类99xxxxx| 久久视频国产精品免费视频在线| 一区二区免费在线播放| 欧美激情影院| 裸体丰满少妇做受久久99精品| 夜夜嗨av一区二区三区四区| 悠悠资源网亚洲青| 国产乱子伦一区二区三区国色天香 | 亚洲人成毛片在线播放女女| 国产乱码精品1区2区3区| 欧美人成在线| 欧美成人精品一区| 久久尤物视频| 久久久久久久高潮| 欧美一区二区三区成人| 一区二区三区四区蜜桃| 亚洲高清视频一区二区| 毛片基地黄久久久久久天堂| 久久精品一区二区| 欧美一区二区三区精品| 午夜精品一区二区三区在线| 国产精品99久久久久久www| 亚洲免费av观看| 亚洲激情欧美| 亚洲黄色天堂| 91久久精品美女| 亚洲国产另类精品专区| 在线观看福利一区| 国产一区二区精品久久99| 国产精品有限公司| 国产精品一区一区| 国产一区二区成人| 国产亚洲欧美色| 好看的av在线不卡观看| 激情欧美一区二区三区在线观看| 国产欧美日韩三级| 黄色国产精品| 亚洲国产精品日韩| 亚洲精品视频二区| 一本在线高清不卡dvd| 一本色道久久综合亚洲精品高清| 亚洲人成高清| 亚洲一区二区伦理| 销魂美女一区二区三区视频在线| 午夜精品亚洲一区二区三区嫩草| 亚洲欧美欧美一区二区三区| 欧美在线观看视频一区二区三区| 欧美在线黄色| 欧美 日韩 国产 一区| 欧美激情中文字幕在线| 99精品福利视频| 午夜欧美视频| 欧美激情视频一区二区三区免费|