作品介紹

世界是數(shù)字的


作者:[美]BrianW.Kernighan     整理日期:2016-12-27 12:53:21


  家用電器、汽車(chē)、飛機(jī)、相機(jī)、手機(jī)、GPS 導(dǎo)航儀,還有游戲機(jī),雖然你看不見(jiàn),但這些設(shè)備都有計(jì)算能力。手機(jī)通信網(wǎng)絡(luò)、有線電視網(wǎng)絡(luò)、空中交通管制系統(tǒng)、電力系統(tǒng)、銀行和金融服務(wù)系統(tǒng)等基礎(chǔ)設(shè)施背后無(wú)一不是計(jì)算機(jī)在支撐。如今的世界是數(shù)字的,而計(jì)算機(jī)和計(jì)算無(wú)處不在。這本書(shū)就是要告訴大家數(shù)字世界有關(guān)計(jì)算機(jī)的一切。本書(shū)沒(méi)有高深莫測(cè)的專(zhuān)業(yè)術(shù)語(yǔ),但它全面解釋了當(dāng)今計(jì)算和通信領(lǐng)域的工作方式,包括硬件、軟件、互聯(lián)網(wǎng)、通信和數(shù)據(jù)安全,并且討論了新技術(shù)帶來(lái)的社會(huì)、政治和法律問(wèn)題。
  無(wú)論你有沒(méi)有計(jì)算機(jī)背景,無(wú)論你從事什么職業(yè),只要你認(rèn)同自己生活在數(shù)字時(shí)代,這本書(shū)就是必讀的!

作者簡(jiǎn)介
  Brian W. Kernighan
  世界頂尖計(jì)算機(jī)科學(xué)家,曾為貝爾實(shí)驗(yàn)室計(jì)算科學(xué)研究中心高級(jí)研究人員,現(xiàn)為普林斯頓大學(xué)教授。他是AWK語(yǔ)言和AMPL語(yǔ)言的發(fā)明人,還參與過(guò)UNIX和許多其他系統(tǒng)的開(kāi)發(fā),同時(shí)出版了The C Programming Language、The Practice of Programming、The Elements of Programming Style等在計(jì)算機(jī)領(lǐng)域影響深遠(yuǎn)的著作。
  Kernighan主張所有人都應(yīng)該了解計(jì)算機(jī),在他心目中,此書(shū)相當(dāng)于“寫(xiě)給未來(lái)總統(tǒng)的計(jì)算機(jī)讀物”,是新一代公民必讀之作。本書(shū)中講解的內(nèi)容甚至?xí)绊懳覀冊(cè)谖⒉┖蜕鐓^(qū)上的活動(dòng),以及使用智能手機(jī)的方式。

目錄:
  目 錄
  開(kāi)篇語(yǔ)  1
  任何足夠先進(jìn)的技術(shù)都與魔術(shù)無(wú)異。
  ——阿瑟?C.克拉克,“技術(shù)及未來(lái)前景”,
  《三號(hào)行星的報(bào)告》,1972年
  第一部分 硬件
  計(jì)算設(shè)備的歷史悠久,不過(guò)早期的計(jì)算設(shè)備大多數(shù)是專(zhuān)用的,通常用于預(yù)測(cè)天文事件及其發(fā)生方位。例如,關(guān)于巨石陣,一個(gè)尚未證實(shí)的推測(cè)就認(rèn)為它是一座天文觀測(cè)站。公元前100年制造的安提基瑟拉機(jī)器就是一臺(tái)天文計(jì)算機(jī),其機(jī)械結(jié)構(gòu)之精妙令人嘆為觀止。
  第1章  計(jì)算機(jī)里有什么  11
  PC這個(gè)名字是個(gè)人計(jì)算機(jī)(Personal Computer)的縮寫(xiě),或者說(shuō)源自于1981年IBM開(kāi)始賣(mài)的那種PC。還有些人可能有蘋(píng)果Mac機(jī),上面運(yùn)行某個(gè)版本的Mac OS X操作系統(tǒng)。更專(zhuān)用的設(shè)備,比如手機(jī)和平板電腦,也是強(qiáng)大的計(jì)算機(jī)。這些計(jì)算機(jī)看起來(lái)很不一樣,用起來(lái)也感覺(jué)不一樣,但這僅僅是表象,其實(shí)根本沒(méi)區(qū)別。
  1.1  邏輯構(gòu)造  13
  1.2  物理構(gòu)造  18
  1.3  摩爾定律  21
  第2章 比特、字節(jié)與信息表示  23
  溫度計(jì)的紅色液體(通常是染色酒精)或水銀柱是模擬的:液體會(huì)隨著溫度變化按比例膨脹或收縮,因此溫度產(chǎn)生較小的變化,液體柱高度也會(huì)相應(yīng)產(chǎn)生較小變化。但大樓外面顯示溫度的廣告牌則是數(shù)字的:顯示屏顯示的是數(shù)值,溫度介于36.5和37.4之間時(shí),它都顯示為37。
  2.1  模擬與數(shù)字  23
  2.2  模數(shù)轉(zhuǎn)換  25
  2.3  比特、字節(jié)與二進(jìn)制  30
  2.4  小結(jié)  37
  第3章 深入了解CPU  39
  今天的筆記本電腦,甚至連手機(jī)都已經(jīng)有多個(gè)CPU了。英特爾酷睿雙核處理器在一塊集成電路芯片上集成了兩個(gè)CPU(“核心”)。在一塊芯片上集成越來(lái)越多的處理器已經(jīng)成為明顯的趨勢(shì)。
  3.1  玩具計(jì)算機(jī)  40
  3.2  真正的CPU  45
  3.3  緩存  47
  3.4  其他計(jì)算機(jī)  49
  硬件部分小結(jié)  51
  第二部分 軟件
  2010年4月的美國(guó)《消費(fèi)者報(bào)告》(Consumer Reports)稱(chēng)豐田雷克薩斯GX460車(chē)型“不能買(mǎi):存在安全隱患”,因?yàn)槠潆娮臃(wěn)定控制系統(tǒng)會(huì)導(dǎo)致這款SUV在急速轉(zhuǎn)彎時(shí)車(chē)尾過(guò)分向外甩,從而可能導(dǎo)致翻車(chē)事故。一個(gè)月之內(nèi),豐田公司就升級(jí)軟件,修復(fù)了這個(gè)問(wèn)題。根本就沒(méi)有任何機(jī)械問(wèn)題,僅僅是軟件最初有些問(wèn)題。
  第4章 算法  57
  假設(shè)我們想找出誰(shuí)是房間里個(gè)子最高的人。我們可以四下里看看,然后猜一猜會(huì)是誰(shuí)。然而,算法則必須精確地列出每一個(gè)步驟,從而讓不會(huì)說(shuō)話的計(jì)算機(jī)都能遵照?qǐng)?zhí)行。最基本的做法就是依次詢(xún)問(wèn)每個(gè)人的身高,并記住到目前為止誰(shuí)最高。于是,我們可能會(huì)問(wèn)“約翰,你多高?瑪麗,你呢?”
  4.1  線性算法  58
  4.2  二分搜索  60
  4.3  排序  62
  4.4  難題與復(fù)雜性  66
  4.5  小結(jié)  68
  第5章 編程與編程語(yǔ)言  71
  程序必須考慮實(shí)際的問(wèn)題,比如內(nèi)存不足、處理器速度不快、無(wú)效或惡意的輸入、網(wǎng)絡(luò)連接中斷,以及(看不見(jiàn)摸不著,但卻經(jīng)常會(huì)導(dǎo)致其他問(wèn)題惡化的)人性弱點(diǎn)。因此,如果說(shuō)算法是理想化的菜譜,那程序就是讓烹飪機(jī)器人冒著敵人的炮火為軍隊(duì)準(zhǔn)備一個(gè)月的給養(yǎng)所需的操作說(shuō)明書(shū)。
  5.1  匯編語(yǔ)言  72
  5.2  高級(jí)語(yǔ)言  73
  5.3  軟件開(kāi)發(fā)  79
  5.4  軟件資產(chǎn)  84
  第6章 軟件系統(tǒng)  93
  你使用的電腦中會(huì)裝有各種各樣的程序,比如瀏覽器、文字處理器、音樂(lè)播放器……這些程序有一個(gè)專(zhuān)業(yè)的叫法,即應(yīng)用程序(application)。典出何處?或許出自“這個(gè)程序是計(jì)算機(jī)在完成某個(gè)任務(wù)方面的應(yīng)用”吧。
  6.1  操作系統(tǒng)  94
  6.2  操作系統(tǒng)怎么工作  98
  6.3  其他操作系統(tǒng)  101
  6.4  文件系統(tǒng)  102
  6.5  應(yīng)用程序  108
  6.6  軟件分層  111
  第7章 學(xué)習(xí)編程  115
  如果你自己折騰一天連10行代碼都調(diào)試不好,那別人要是說(shuō)能按時(shí)交付百萬(wàn)行級(jí)的程序,而且沒(méi)有任何bug,你相信嗎?換個(gè)角度說(shuō),有點(diǎn)編程常識(shí)也能讓人明白,其實(shí)也不是寫(xiě)什么程序都那么難,大不了請(qǐng)人幫你寫(xiě)唄。
  7.1  編程語(yǔ)言的基本概念  116
  7.2  第一個(gè)java script程序  117
  7.3  第二個(gè)java script程序  119
  7.4  循環(huán)  121
  7.5  條件  122
  7.6  庫(kù)和接口  124
  7.7  java script怎么工作  125
  軟件部分小結(jié)  127
  第三部分 通信
  幾千年前,人們就曾通過(guò)善于長(zhǎng)跑的人傳遞消息。公元前490年,費(fèi)迪皮迪茲從馬拉松戰(zhàn)場(chǎng)奔跑了42公里到達(dá)雅典,把打敗波斯人的勝利消息傳遞給了雅典人。不幸的是,跑到雅典之后,他上氣不接下氣地說(shuō)完“慶祝吧,我們勝利了”之后就死了(至少傳說(shuō)里是這么講的)。
  第8章 網(wǎng)絡(luò)  135
  電話網(wǎng)作為一個(gè)覆蓋全球的大型網(wǎng)絡(luò),從一開(kāi)始只傳送語(yǔ)音,到后來(lái)同時(shí)傳輸語(yǔ)音和可觀的數(shù)據(jù),為人類(lèi)做出了貢獻(xiàn)。大約有近20年的時(shí)間,人們都是通過(guò)電話網(wǎng)把家用計(jì)算機(jī)接入互聯(lián)網(wǎng)的。
  8.1  電話與調(diào)制解調(diào)器  136
  8.2  有線和DSL  136
  8.3  局域網(wǎng)和以太網(wǎng)  138
  8.4  無(wú)線網(wǎng)絡(luò)  141
  8.5  手機(jī)  144
  8.6  小結(jié)  147
  第9章 互聯(lián)網(wǎng)  149
  簡(jiǎn)單算一下就會(huì)發(fā)現(xiàn),IPv4地址只有大約43億個(gè),甚至還不夠地球上每人分一個(gè)。因此,按照人類(lèi)使用的通信服務(wù)數(shù)量的增長(zhǎng)勢(shì)頭,這些IPv4地址遲早會(huì)被耗光。實(shí)際情況比這種“危言聳聽(tīng)”更糟糕,因?yàn)镮P地址是按塊劃分的,這樣用起來(lái)就沒(méi)有理論上那么有效率。
  9.1  互聯(lián)網(wǎng)概述  150
  9.2  域名和地址  153
  9.3  路由  157
  9.4  協(xié)議  159
  9.5  高層協(xié)議  162
  9.6  帶寬  172
  9.7  壓縮  173
  9.8  錯(cuò)誤檢測(cè)和校正  176
  9.9  小結(jié)  177
  第10章 萬(wàn)維網(wǎng)  179
  萬(wàn)維網(wǎng)的誕生可以追溯到1989年。當(dāng)時(shí),在日內(nèi)瓦附近的歐洲核子研究中心工作的英國(guó)物理學(xué)家蒂姆?伯納斯?李,為便于通過(guò)互聯(lián)網(wǎng)共享科學(xué)文獻(xiàn)和研究結(jié)果而設(shè)計(jì)了一套系統(tǒng),以及一個(gè)只能用文本模式查看可用資源的客戶(hù)端。這套系統(tǒng)在1990年投入使用。說(shuō)來(lái)慚愧,我1992年10月還親眼見(jiàn)過(guò)有人使用它,可當(dāng)時(shí)并沒(méi)覺(jué)得它有那么好,也根本沒(méi)想到6個(gè)月后誕生的第一個(gè)圖形界面瀏覽器會(huì)改變世界。瞧我這眼光!
  10.1  萬(wàn)維網(wǎng)如何工作  180
  10.2  HTML  182
  10.3  表單  183
  10.4  cookie  184
  10.5  動(dòng)態(tài)網(wǎng)頁(yè)  186
  10.6  網(wǎng)頁(yè)之外的動(dòng)態(tài)內(nèi)容  189
  10.7  病毒和蠕蟲(chóng)  190
  10.8  萬(wàn)維網(wǎng)安全  192
  10.9  密碼術(shù)  201
  10.10  小結(jié)  208
  第11章 數(shù)據(jù)、信息和隱私  211
  隱私常常就是安全的同義詞。至少對(duì)每個(gè)個(gè)體而言,如果自己的生活信息被傳播得隨處可見(jiàn),那怎么會(huì)讓人感覺(jué)安全無(wú)憂呢?特別是互聯(lián)網(wǎng),它對(duì)個(gè)人安全已經(jīng)產(chǎn)生了重大影響。這種影響更多體現(xiàn)在財(cái)務(wù)風(fēng)險(xiǎn)而非人身安全方面。因?yàn)榛ヂ?lián)網(wǎng)讓人們從各種來(lái)源收集和整理信息變得異常容易,從而為電子入侵大開(kāi)方便之門(mén)。
  11.1  搜索  212
  11.2  跟蹤  216
  11.3  數(shù)據(jù)庫(kù)、信息與聚合  221
  11.4  隱私失控  224
  11.5  云計(jì)算  225
  11.6  小結(jié)  230
  第12章 結(jié)束語(yǔ)  231
  最后,讀者諸君務(wù)必牢記一點(diǎn),無(wú)論今天的技術(shù)多么千變?nèi)f化,人是不變的。無(wú)論從哪方面來(lái)看,現(xiàn)代的人類(lèi)與幾千年前的人類(lèi)并沒(méi)有太大區(qū)別。
  注解  236
  詞匯表  242
  索引  253
  版權(quán)聲明  256





上一本:Python源碼剖析 下一本:計(jì)算機(jī)系統(tǒng)概論

作家文集

下載說(shuō)明
世界是數(shù)字的的作者是[美]BrianW.Kernighan,全書(shū)語(yǔ)言?xún)?yōu)美,行文流暢,內(nèi)容豐富生動(dòng)引人入勝。為表示對(duì)作者的支持,建議在閱讀電子書(shū)的同時(shí),購(gòu)買(mǎi)紙質(zhì)書(shū)。

更多好書(shū)