和同類的教材相比,本書的特點(diǎn)在于以一個(gè)核心、三條綱領(lǐng)來組織教學(xué)內(nèi)容。計(jì)算機(jī)的核心功能是數(shù)據(jù)處理,計(jì)算機(jī)科學(xué)要提供數(shù)據(jù)表示和數(shù)據(jù)加工表示的理論、方法、技術(shù),并*終在計(jì)算機(jī)系統(tǒng)上實(shí)現(xiàn)。
全書共分7章,內(nèi)容包括認(rèn)識(shí)計(jì)算機(jī)和計(jì)算機(jī)科學(xué)、計(jì)算機(jī)系統(tǒng)組成、計(jì)算機(jī)軟件系統(tǒng)、計(jì)算機(jī)通信與網(wǎng)絡(luò)、數(shù)據(jù)表示方法、數(shù)據(jù)加工表示方法、計(jì)算學(xué)科的知識(shí)領(lǐng)域。
按照本書的體系,初學(xué)者容易理解在后續(xù)課程中展開的專業(yè)概念,并關(guān)注專業(yè)課程之間的內(nèi)在關(guān)聯(lián)。
本書既適合作為高等學(xué)校的教材,也適合有興趣了解計(jì)算機(jī)科學(xué)概貌的讀者閱讀。
本書是作者在多年教學(xué)實(shí)踐的基礎(chǔ)上編寫而成的。自*版出版以來,本書已被多所高校選作教材,取得了很好的教學(xué)效果。本次再版,作者增加了有關(guān)信息安全的內(nèi)容,以便更好地滿足教學(xué)需求。
出
版 說 明
我國高等學(xué)校計(jì)算機(jī)教育近年來發(fā)展迅猛,應(yīng)用所學(xué)計(jì)算機(jī)知識(shí)解決實(shí)際問題,已經(jīng)成為當(dāng)代大學(xué)生的必備能力。
時(shí)代的進(jìn)步與社會(huì)的發(fā)展對(duì)高等學(xué)校計(jì)算機(jī)教育的質(zhì)量提出了更高、更新的要求,F(xiàn)在,很多高等學(xué)校都在積極探索符合自身特點(diǎn)的教學(xué)模式,涌現(xiàn)出一大批非常優(yōu)秀的精品課程。
為了適應(yīng)社會(huì)需求,滿足計(jì)算機(jī)教育的發(fā)展需要,清華大學(xué)出版社在大量調(diào)查研究的基礎(chǔ)上,組織編寫了本套教材。本套教材從全國各高校的優(yōu)秀計(jì)算機(jī)教材中精挑細(xì)選了一批很有代表性且特色鮮明的計(jì)算機(jī)精品教材,把作者對(duì)各自所授計(jì)算機(jī)課程的獨(dú)特理解和先進(jìn)經(jīng)驗(yàn)推薦給全國師生。
本套教材特點(diǎn)如下。
(1)
編寫目的明確。本套教材主要面向普通高校的計(jì)算機(jī)專業(yè)學(xué)生,使學(xué)生通過本套教材,學(xué)習(xí)計(jì)算機(jī)科學(xué)與技術(shù)方面的基本理論和基本知識(shí),接受應(yīng)用計(jì)算機(jī)解決實(shí)際問題的基本訓(xùn)練。
(2)
注重編寫理念。本套教材的作者均為各校相應(yīng)課程的主講教師,有一定的經(jīng)驗(yàn)積累,且編寫思路清晰,有獨(dú)特的教學(xué)思路和指導(dǎo)思想,其教學(xué)經(jīng)驗(yàn)具有推廣價(jià)值。本套教材中不乏各類精品課程的配套教材,并力圖把不同學(xué)校的教學(xué)特點(diǎn)反映到每本教材中。
(3)
理論知識(shí)與實(shí)踐相結(jié)合。本套教材貫徹從實(shí)踐中來到實(shí)踐中去的原則,書中許多必須掌握的理論都將結(jié)合實(shí)例講述,同時(shí)注重培養(yǎng)學(xué)生分析、解決問題的能力。
(4)
易教易用,合理適當(dāng)。本套教材編寫時(shí)注意結(jié)合教學(xué)實(shí)際的課時(shí)數(shù),把握教材的篇幅。同時(shí),對(duì)一些知識(shí)點(diǎn)按照教育部教學(xué)指導(dǎo)委員會(huì)的最新精神進(jìn)行合理取舍與難易控制。
(5)
注重教材的立體化配套。大多數(shù)教材都將配套教學(xué)課件、習(xí)題及其解答、實(shí)驗(yàn)指導(dǎo)、教學(xué)網(wǎng)站等輔助教學(xué)資源,方便教學(xué)。
隨著本套教材的陸續(xù)出版,我們相信能夠得到廣大讀者的認(rèn)可和支持,為我國計(jì)算機(jī)教材建設(shè)和計(jì)算機(jī)教學(xué)水平的提高,以及計(jì)算機(jī)教育事業(yè)的發(fā)展作出應(yīng)有的貢獻(xiàn)。
清華大學(xué)出版社第3版前言
眾所周知,計(jì)算機(jī)技術(shù)和應(yīng)用的發(fā)展日新月異,引起人類社會(huì)變革的廣度和深度是空前的,可能也是絕后的。但是,不是所有人都了解到,計(jì)算機(jī)系統(tǒng)的核心基礎(chǔ)原理幾十年來并沒有發(fā)生根本的變化。所以,當(dāng)這本以大學(xué)一年級(jí)學(xué)生為對(duì)象的專業(yè)入門教材再版時(shí),全書框架和主要內(nèi)容并沒有改變,只是對(duì)介紹計(jì)算機(jī)技術(shù)和應(yīng)用的段落做了與時(shí)俱進(jìn)的增補(bǔ)。計(jì)算機(jī)的安全保障措施日益重要,因此增加了7.3節(jié)。
根據(jù)作者的教學(xué)經(jīng)驗(yàn),這本教材對(duì)不同程度的學(xué)生班級(jí)都適合。學(xué)生的領(lǐng)悟能力越強(qiáng),教師可以講得越具體;反之可以講得粗略一些,但課程體系仍應(yīng)該保持完整。不必期待學(xué)生對(duì)教材里出現(xiàn)的,或者老師講授到的每個(gè)專業(yè)概念都完全理解,畢竟這是以后幾十門專業(yè)課的任務(wù)。計(jì)算機(jī)科學(xué)導(dǎo)論的授課目的在于使學(xué)生大致了解今后四年要學(xué)習(xí)的專業(yè)內(nèi)容。更重要的是,希望學(xué)生能夠把握各門專業(yè)課程之間的內(nèi)在聯(lián)系。這一點(diǎn)不會(huì)在哪一門后續(xù)的專業(yè)課程里再刻意闡述了。
黃思曾2017年7月于康樂園第2版前言
第1版出版后,不時(shí)會(huì)有教師給我發(fā)郵件,覺得這本書很適合用做本科生的教材,向我要教學(xué)大綱、教學(xué)進(jìn)度表、考核大綱和電子課件以作參考,我很樂意和同行們互相交流。這本書從來就不以計(jì)算機(jī)科學(xué)導(dǎo)論作為目標(biāo)。它不過是筆者從許多年講授計(jì)算機(jī)科學(xué)導(dǎo)論課程的過程中提煉出來的一本講義而已。這是在書名中刻意加上教程二字的原因。
本課程面對(duì)一年級(jí)新生,通常只安排四五十學(xué)時(shí)。對(duì)任教教師來說,挑戰(zhàn)在于選材、組織和演繹。講得太寫意或者太工筆都不行,太專業(yè)或者太不專業(yè)也不行。
在筆者的教學(xué)生涯中,計(jì)算機(jī)科學(xué)導(dǎo)論教材經(jīng)歷了幾次變化。最早一批著眼于計(jì)算機(jī)入門操作和應(yīng)用,類似今天仍然常見的以應(yīng)用基礎(chǔ)或文化基礎(chǔ)來冠名的那些書;后來的一批有點(diǎn)全面介紹學(xué)科內(nèi)涵的味道了,多以濃縮手法把有關(guān)領(lǐng)域內(nèi)容寫成一章一節(jié);再往后,國內(nèi)外開始出現(xiàn)以敘述綱領(lǐng)統(tǒng)率內(nèi)容的著述,如以算法作為綱領(lǐng)貫穿教材,比如筆者用數(shù)據(jù)表示、數(shù)據(jù)加工表示、計(jì)算機(jī)系統(tǒng)三條線索來展開內(nèi)容。
近年來,這個(gè)題材的新作繼續(xù)出現(xiàn),董榮勝的《計(jì)算機(jī)科學(xué)導(dǎo)論思想與方法》一書站在學(xué)科思想、方法這個(gè)較高的層面來介紹學(xué)科,以此給學(xué)生提供對(duì)學(xué)科的認(rèn)知基礎(chǔ),著述自成一格。這本書值得有關(guān)專業(yè)高年級(jí)本科生或者低年級(jí)研究生,甚至計(jì)算機(jī)科學(xué)導(dǎo)論課程的任教教師一讀。
從院校總體上看,一年級(jí)大學(xué)生的邏輯思維能力和對(duì)計(jì)算機(jī)的了解程度會(huì)參差不齊。不論教師選擇什么樣的敘述角度和層次,都受制于面對(duì)的菜鳥們的平均接受能力,并非能夠天馬行空的。教師傳道、授業(yè)、解惑之際,一定要顧及受眾的感受,否則教師自我感覺講得天花亂墜,而學(xué)生的反應(yīng)卻是不知所云。
這次修訂增寫了1.4節(jié)和第7章。希望學(xué)生在導(dǎo)論性課程中對(duì)學(xué)科能夠有更加全面的認(rèn)知。大部分增加的內(nèi)容可作為學(xué)生的閱讀材料,但是建議把7.2節(jié)列入教學(xué)計(jì)劃。關(guān)于社會(huì)和職業(yè)的問題只由教師講授,效果恐怕不會(huì)太好,應(yīng)該設(shè)計(jì)更加生動(dòng)的教學(xué)環(huán)節(jié)。
黃思曾2010年8月于康樂園第1版前言
計(jì)算機(jī)科學(xué)導(dǎo)論是大多數(shù)高等院校計(jì)算機(jī)科學(xué)與技術(shù)類專業(yè)學(xué)生必修的專業(yè)課程。課程講授和計(jì)算機(jī)系統(tǒng)、計(jì)算機(jī)科學(xué)有關(guān)的基本概念,使學(xué)生對(duì)本專業(yè)的核心知識(shí)有全面的、概要的認(rèn)識(shí)。
本課程一種典型的教學(xué)安排是每周課堂講授3學(xué)時(shí),14周共42學(xué)時(shí)。在較短時(shí)間內(nèi)要完成覆蓋面很廣、內(nèi)容極為豐富的專業(yè)知識(shí)教學(xué),又要使一年級(jí)學(xué)生能夠大致理解,關(guān)鍵在于:
要建立一個(gè)課程講授的結(jié)構(gòu)體系;
要把握好內(nèi)容廣度和深度的關(guān)系;
要采用深入淺出的敘述風(fēng)格。
筆者在中山大學(xué)計(jì)算機(jī)科學(xué)系任教多年,20世紀(jì)80年代負(fù)責(zé)開設(shè)本課程之后,一直是本課程的主講教師。多年的教學(xué)實(shí)踐中,筆者設(shè)計(jì)以一個(gè)本質(zhì)核心,三條內(nèi)容綱領(lǐng)來組織本門課程,使學(xué)生能夠在短短的十幾周里對(duì)計(jì)算機(jī)系統(tǒng)和計(jì)算機(jī)科學(xué)有入門性的、較全面的認(rèn)識(shí)。
一個(gè)本質(zhì)核心是指計(jì)算機(jī)的數(shù)據(jù)處理功能。
計(jì)算機(jī)是一種數(shù)據(jù)處理機(jī)器,計(jì)算機(jī)科學(xué)是使計(jì)算機(jī)完成各行各業(yè)、形形色色數(shù)據(jù)處理任務(wù)所需要的理論、方法和技術(shù)的知識(shí)集合。
三條內(nèi)容綱領(lǐng)是:
(1) 數(shù)據(jù)的分層表示方法學(xué),其表示層次:
現(xiàn)實(shí)世界的數(shù)據(jù)對(duì)象;
數(shù)據(jù)結(jié)構(gòu)和信息結(jié)構(gòu)層;
程序設(shè)計(jì)語言層;
機(jī)器層;
物理層。
(2) 數(shù)據(jù)加工的分層表示方法學(xué),其表示層次:
數(shù)據(jù)處理問題;
解題模型;
算法層;
程序設(shè)計(jì)層;
機(jī)器程序?qū)樱?
物理層。
(3) 計(jì)算機(jī)系統(tǒng)的構(gòu)成(數(shù)據(jù)和數(shù)據(jù)加工表示方法的最終載體):
硬件系統(tǒng);
軟件系統(tǒng);
網(wǎng)絡(luò)系統(tǒng)。
本教材按照上述綱領(lǐng)展開,包含了后續(xù)各門計(jì)算機(jī)類專業(yè)課程的主要概念,從而使學(xué)生對(duì)計(jì)算機(jī)科學(xué)的內(nèi)容及其內(nèi)在的關(guān)聯(lián)有全面、清晰、概要的認(rèn)識(shí)。
教學(xué)實(shí)踐表明,本課程的學(xué)習(xí)能夠激發(fā)學(xué)生提出思考和問題。課程結(jié)束后,學(xué)生的疑問通常會(huì)比課程開始前還要多。這是好事,說明本課程為學(xué)生后續(xù)的專業(yè)學(xué)習(xí)奠定了良好的基礎(chǔ),真正起到了導(dǎo)論應(yīng)有的作用。
歷屆學(xué)生都表示,通過本課程的學(xué)習(xí)他們清晰地了解到今后幾年里要學(xué)什么,畢業(yè)之后會(huì)干什么,心里開始踏實(shí)了。說明本課程還應(yīng)該擔(dān)負(fù)起學(xué)生專業(yè)教育的作用。
由于計(jì)算機(jī)技術(shù)發(fā)展十分迅速,加上作者水平所限,書中難免有錯(cuò)誤和不足之處,期望讀者在使用過程中給予指正。
黃思曾2007年5月于康樂園
目錄
第1章認(rèn)識(shí)計(jì)算機(jī)和計(jì)算機(jī)科學(xué)1
1.1計(jì)算機(jī)是數(shù)據(jù)處理機(jī)1
1.1.1數(shù)據(jù)1
1.1.2信息2
1.1.3數(shù)據(jù)處理3
1.1.4數(shù)據(jù)處理機(jī)4
習(xí)題5
1.2計(jì)算機(jī)科學(xué)6
1.2.1理解計(jì)算機(jī)科學(xué)6
1.2.2算法8
1.2.3用計(jì)算機(jī)解決數(shù)據(jù)處理問題10
1.2.4計(jì)算機(jī)系統(tǒng)的發(fā)展歷程14
習(xí)題15
1.3機(jī)內(nèi)信息表示基礎(chǔ)二進(jìn)制數(shù)16
1.3.1位置記數(shù)法16
1.3.2P進(jìn)制數(shù)17
1.3.3數(shù)制的轉(zhuǎn)換規(guī)則17
習(xí)題19
1.4關(guān)于計(jì)算學(xué)科及其專業(yè)19
1.4.1計(jì)算學(xué)科的由來19
1.4.2計(jì)算學(xué)科下屬專業(yè)的劃分19
本章小結(jié)21
第2章計(jì)算機(jī)系統(tǒng)的組成22
2.1四大功能部件22
2.1.1內(nèi)存22
2.1.2中央處理器27
2.1.3外部設(shè)備30
2.1.4總線41
習(xí)題43
2.2計(jì)算機(jī)程序44
2.2.1機(jī)器指令45
2.2.2程序存儲(chǔ)原理47
2.2.3馮·諾依曼結(jié)構(gòu)體系50
習(xí)題52
2.3計(jì)算機(jī)系統(tǒng)52
2.3.1硬件和軟件52
2.3.2計(jì)算機(jī)系統(tǒng)的幾種應(yīng)用模式54
習(xí)題57
本章小結(jié)58
第3章計(jì)算機(jī)軟件系統(tǒng)59
3.1軟件系統(tǒng)59
3.1.1軟件系統(tǒng)的組成59
3.1.2應(yīng)用軟件示例60
3.1.3獲得軟件的途徑64
3.1.4軟件版權(quán)保護(hù)65
習(xí)題66
3.2操作系統(tǒng)66
3.2.1操作系統(tǒng)的目標(biāo)66
3.2.2進(jìn)程和中斷67
3.2.3操作系統(tǒng)的資源管理功能68
3.2.4作業(yè)的管理調(diào)度方式70
3.2.5I/O設(shè)備的輸入輸出控制73
3.2.6操作系統(tǒng)的常見種類74
3.2.7用戶界面75
3.2.8有代表性的操作系統(tǒng)產(chǎn)品76
習(xí)題79
3.3程序設(shè)計(jì)語言和語言處理軟件79
3.3.1程序設(shè)計(jì)語言79
3.3.2程序設(shè)計(jì)語言的發(fā)展80
3.3.3程序設(shè)計(jì)和軟件開發(fā)84
3.3.4程序/語言的處理過程84
3.3.5編譯程序85
3.3.6上機(jī)作業(yè)的傳統(tǒng)過程87
3.3.7程序作業(yè)工具87
習(xí)題88
本章小結(jié)88
第4章計(jì)算機(jī)通信與網(wǎng)絡(luò)89
4.1數(shù)據(jù)通信概念89
4.1.1信息、數(shù)據(jù)與信號(hào)89
4.1.2數(shù)據(jù)的傳輸90
4.1.3傳輸介質(zhì)和信道93
4.1.4信號(hào)傳輸?shù)募夹g(shù)特性94
4.1.5數(shù)據(jù)交換97
習(xí)題98
4.2計(jì)算機(jī)網(wǎng)絡(luò)99
4.2.1計(jì)算機(jī)網(wǎng)絡(luò)的組成100
4.2.2網(wǎng)絡(luò)類型101
4.2.3網(wǎng)絡(luò)協(xié)議和體系結(jié)構(gòu)模型102
習(xí)題106
4.3計(jì)算機(jī)局域網(wǎng)106
4.3.1局域網(wǎng)的拓?fù)浣Y(jié)構(gòu)106
4.3.2介質(zhì)訪問控制方法108
4.3.3局域網(wǎng)中常見的網(wǎng)絡(luò)設(shè)備109
習(xí)題111
4.4因特網(wǎng)112
4.4.1網(wǎng)絡(luò)互聯(lián)112
4.4.2因特網(wǎng)的地址編制和域名113
4.4.3因特網(wǎng)的典型應(yīng)用113
4.4.4因特網(wǎng)的接入121
習(xí)題122
本章小結(jié)123
第5章數(shù)據(jù)表示方法124
5.1數(shù)據(jù)的分層表示方法學(xué)124
5.1.1現(xiàn)實(shí)世界層124
5.1.2信息世界層125
5.1.3高級(jí)語言層126
5.1.4機(jī)器層126
5.1.5物理層127
習(xí)題127
5.2數(shù)的表示127
5.2.1無符號(hào)整數(shù)的表示127
5.2.2有符號(hào)整數(shù)的表示128
5.2.3實(shí)數(shù)的表示132
5.2.4復(fù)數(shù)的表示134
習(xí)題135
5.3字符和漢字的表示135
5.3.1字符編碼136
5.3.2漢字編碼138
5.3.3漢字處理系統(tǒng)142
習(xí)題142
5.4圖像和聲音的表示143
5.4.1圖像的表示143
5.4.2聲音的表示144
習(xí)題145
5.5高級(jí)語言的數(shù)據(jù)表示手段145
5.5.1常量和變量145
5.5.2函數(shù)和表達(dá)式147
5.5.3數(shù)據(jù)類型151
習(xí)題158
5.6動(dòng)態(tài)數(shù)據(jù)結(jié)構(gòu)158
5.6.1數(shù)據(jù)結(jié)構(gòu)的含義158
5.6.2數(shù)據(jù)結(jié)構(gòu)的基本概念159
5.6.3線性表163
5.6.4樹和二叉樹169
5.6.5圖171
習(xí)題173
5.7外存數(shù)據(jù)組織174
5.7.1文件174
5.7.2數(shù)據(jù)庫180
習(xí)題189
本章小結(jié)190
第6章數(shù)據(jù)加工表示方法191
6.1數(shù)據(jù)加工的表達(dá)層次191
習(xí)題192
6.2算法表示手段193
6.2.1算法和算法的表示193
6.2.2算法流程圖194
6.2.3類程序設(shè)計(jì)語言的偽代碼199
習(xí)題202
6.3結(jié)構(gòu)化設(shè)計(jì)202
6.3.1三種流程結(jié)構(gòu)203
6.3.2結(jié)構(gòu)化方法207
習(xí)題209
6.4算法示例209
6.4.1順序結(jié)構(gòu)的算法設(shè)計(jì)209
6.4.2分支結(jié)構(gòu)的算法設(shè)計(jì)211
6.4.3循環(huán)結(jié)構(gòu)的算法設(shè)計(jì)214
習(xí)題217
6.5軟件的工程化開發(fā)方法218
6.5.1關(guān)于軟件工程學(xué)218
6.5.2軟件生命周期概念219
6.5.3傳統(tǒng)的軟件生命周期階段220
6.5.4軟件開發(fā)規(guī)范225
6.5.5軟件開發(fā)模型226
6.5.6開發(fā)方法和工具227
習(xí)題230
本章小結(jié)231
第7章計(jì)算學(xué)科的知識(shí)領(lǐng)域232
7.1計(jì)算學(xué)科知識(shí)分類232
7.1.1數(shù)學(xué)232
7.1.2電子學(xué)233
7.1.3算法234
7.1.4計(jì)算機(jī)體系結(jié)構(gòu)和組織235
7.1.5計(jì)算機(jī)軟件系統(tǒng)236
7.1.6人機(jī)交互237
7.1.7程序設(shè)計(jì)238
7.1.8軟件工程學(xué)239
7.1.9特定的應(yīng)用系統(tǒng)240
7.1.10計(jì)算機(jī)網(wǎng)絡(luò)241
7.1.11信息技術(shù)241
7.1.12職業(yè)素養(yǎng)242
7.2計(jì)算學(xué)科的社會(huì)與職業(yè)問題243
7.2.1計(jì)算技術(shù)對(duì)社會(huì)的沖擊243
7.2.2相關(guān)法律243
7.2.3職業(yè)道德和職業(yè)素養(yǎng)244
7.3計(jì)算機(jī)安全245
7.3.1計(jì)算機(jī)安全風(fēng)險(xiǎn)245
7.3.2計(jì)算機(jī)安全措施246
習(xí)題249
本章小結(jié)249
參考文獻(xiàn)250