電腦科學概論(第3版)(普通高等教育“十一五”國家級規劃教材 國家精品課程 國家精品資源共享課程 配套教材)
趙歡 主編
相關主題
商品描述
本書分為基礎理論和專題兩個部分。基礎理論部分依廣度優先的原則, 用通俗易懂的語言、大量圖片和示例,全面介紹電腦發展歷史,系統地介紹電腦科學與技術的基本概念、方法和技術;內容涉及電腦組成與結構 ( 包括計算的歷史與未來、電腦組成與工作原理 )、操作系統與網絡、算法與程序設計語言和數據組織 ( 包括數據結構、文件結構和數據庫概述 ) 等。專題部分就近年出現的電腦新技術和新領域進行深入淺出的科普介紹,內容包括嵌入式計算、信息安全 / 網絡安全、物聯網、智能信息處理、大數據和雲計算。
本書旨在培養學生電腦科學與技術的知識理念和計算思維, 為他們將來的發展提供線索和發展空間。
作者簡介
赵欢,湖南长沙人,1967年9月出生,博士,教授,博士生导师,现任湖南大学信息科学与工程学院副院长,美国加州大学San Diego分校访问学者。教育部文科计算机基础教学指导委员会委员,工业和信息化人才教育与培养指导委员会委员。曾获湖南省三八红旗手称号,湖南大学第 二届“天语教师奖”及第四届“刘銮雄本科教学杰出教师奖”。精品课程和国家精品资源共享课“计算机系统组成与体系结构”负责人,省级教学团队“计算机体系结构”主要成员。研究方向为嵌入式计算机系统、语音信息处理。主持国家自然科学基金、湖南省自然科学基金重点项目、湖南省工业支撑科技计划重点项目等各类科研项目20余项,发表科研论文60篇,其中SCI/EI收录30篇,获省科技进步奖2项、专利/软件著作权7项;主持省部级以上教改项目2项,获湖南省省教学成果1项,主编出版十五/十一五规划教材4本,其他教材5本。
目錄大綱
目 錄
第 一部分 基礎理論
第 1章 計算的歷史與未來 2
1.1 電腦的史前時代 2
1.1.1 石頭計算到算盤 2
1.1.2 計算尺和計算器 3
1.2 機械式電腦 4
1.2.1 施卡德電腦 5
1.2.2 帕斯卡加法機 5
1.2.3 萊布尼茲乘法機 6
1.3 卡片時代 7
1.3.1 “編織”的程序:自動編織機 7
1.3.2 穿孔製表機 8
1.4 程式化電腦的萌芽:差分機和分析機 9
1.4.1 差分機 9
1.4.2 分析機 11
1.5 模擬電腦 12
1.6 早期的數字電腦 13
1.6.1 Z系列電腦 13
1.6.2 ABC電腦 14
1.6.3 巨人電腦 16
1.6.4 Mark系列電腦 17
1.7 現代電子電腦 18
1.7.1 電子管時代 18
1.7.2 晶體管時代 21
1.7.3 集成電路時代 23
1.7.4 大規模集成電路時代:微處理器時代 24
1.7.5 後PC時代 27
1.7.6 下一代電腦 30
1.8 奠定現代電腦理論基礎的重要人物和思想 33
1.8.1 布爾及邏輯代數 34
1.8.2 香農及電腦開關電路 34
1.8.3 圖靈及圖靈機、圖靈測試 35
1.8.4 維納及電腦設計五原則 37
1.8.5 馮·諾依曼及馮 諾依曼結構 37
1.9 電腦的發展趨勢 39
1.9.1 高性能計算 40
1.9.2 普適計算 43
1.9.3 中國信息技術未來增長點 44
小結 47
習題 47
本章參考文獻 49
第 2章 電腦組成與工作原理 51
2.1 電腦系統的組成 51
2.1.1 電腦硬件系統 52
2.1.2 電腦軟件系統 61
2.2 電腦的工作原理 63
2.2.1 馮·諾依曼結構的硬件組成 63
2.2.2 總線訪問 68
2.2.3 指令執行過程 69
2.2.4 電腦工作過程 70
2.3 電腦常用的數制及機內信息表示 71
2.3.1 數制及其轉換 71
2.3.2 電腦內信息的表示 73
小結 77
習題 78
本章參考文獻 79
第3章 操作系統 81
3.1 操作系統概述 81
3.1.1 操作系統概念 81
3.1.2 操作系統歷史 83
3.1.3 操作系統結構 84
3.2 操作系統的功能模塊 85
3.2.1 用戶界面 85
3.2.2 進程管理 86
3.2.3 存儲管理 93
3.2.4 文件管理 98
3.2.5 I/O管理 98
3.3 常見操作系統 98
小結 100
習題 101
本章參考文獻 103
第4章 電腦網絡 104
4.1 電腦網絡概述 104
4.1.1 電腦網絡起源 104
4.1.2 電腦網絡定義 106
4.1.3 數據傳輸 107
4.2 網絡分類 107
4.2.1 按距離分 107
4.2.2 按網絡交換功能分 109
4.2.3 常見局域網 110
4.3 網絡服務模型 116
4.3.1 終端網絡模型 116
4.3.2 C/S模型 117
4.3.3 P2P網絡模型 117
4.4 電腦網絡體系結構 118
4.4.1 ISO/OSI 118
4.4.2 TCP/IP 120
4.5 網絡互連和Internet 122
4.5.1 Internet概述 124
4.5.2 IP地址 124
4.5.3 Internet提供的服務 127
小結 129
習題 130
本章參考文獻 131
第5章 算法 132
5.1 算法的概念 132
5.1.1 概述 132
5.1.2 算法的定義 133
5.1.3 算法的基本性質 135
5.1.4 算法的基本結構 135
5.2 算法的表示 138
5.2.1 自然語言 138
5.2.2 流程圖 139
5.2.3 偽碼 141
5.3 基本算法 145
5.3.1 求和 145
5.3.2 求積 146
5.3.3 求**大值和**小值 146
5.3.4 排序 147
5.3.5 查找 148
5.4 算法效率 149
5.4.1 算法的規模 149
5.4.2 時間復雜度 150
5.4.3 空間復雜度 151
小結 151
習題 152
本章參考文獻 152
第6章 程序設計語言 153
6.1 程序設計語言概述 153
6.1.1 什麽是程序語言 153
6.1.2 程序語言的發展歷史 154
6.1.3 程序語言的分類 155
6.1.4 機器語言 156
6.1.5 匯編語言 157
6.1.6 語言 158
6.2 程序語言的類型 160
6.2.1 常用程序語言 160
6.2.2 過程化語言 162
6.2.3 函數式語言 162
6.2.4 邏輯式語言 163
6.2.5 面向對象語言 164
6.2.6 專用語言 165
6.3 程序設計的基本概念 166
6.3.1 標識符 167
6.3.2 變量與數據類型 167
6.3.3 常量和文字 168
6.3.4 表達式和賦值語句 169
6.3.5 控制語句 170
6.3.6 註釋 172
6.4 程序單元 173
6.4.1 過程 173
6.4.2 參數 173
6.4.3 函數 174
6.4.4 輸入與輸出 175
6.5 程序設計語言的執行 175
6.5.1 程序翻譯 176
6.5.2 鏈接程序 177
6.5.3 集成開發環境 178
6.6 話題 178
6.6.1 面向對象程序設計 178
6.6.2 程序語言的發展趨勢 181
小結 181
習題 182
本章參考文獻 184
第7章 數據結構 185
7.1 概述 185
7.1.1 數據結構與算法 185
7.1.2 數據的邏輯結構 186
7.1.3 數據的存儲結構 187
7.1.4 數據的運算 188
7.2 線性表 188
7.2.1 基於數組的實現 188
7.2.2 基於鏈表的實現 189
7.3 堆棧 190
7.3.1 堆棧的基本概念 190
7.3.2 棧的實現 191
7.3.3 棧的基本操作 191
7.3.4 棧的應用 192
7.4 隊列 192
7.4.1 隊列的基本概念 192
7.4.2 隊列的實現 193
7.4.3 隊列的基本操作 194
7.4.4 隊列的應用 194
7.5 樹 195
7.5.1 二叉樹的基本概念 195
7.5.2 二叉樹的實現 197
7.5.3 二叉樹的遍歷 197
7.5.4 二叉檢索樹 198
7.6 圖 199
7.6.1 圖的定義和術語 199
7.6.2 圖的實現 201
7.6.3 圖的遍歷 201
7.6.4 圖的**短路徑問題 203
7.7 基本算法 204
7.7.1 查找 204
7.7.2 排序 206
小結 208
習題 209
本章參考文獻 211
第8章 文件系統 212
8.1 文件系統的基本概念 212
8.1.1 文件命名 212
8.1.2 文件訪問 213
8.2 文件結構 214
8.2.1 順序文件 214
8.2.2 索引文件 215
8.2.3 散列文件 215
8.3 Windows文件系統 216
8.3.1 Windows文件系統概述 217
8.3.2 FAT32文件系統 217
8.3.3 NTFS文件系統 217
8.4 Linux文件系統 218
8.4.1 Linux文件系統概述 219
8.4.2 虛擬文件系統VFS 220
8.4.3 EXT2文件系統 221
8.5 Google文件系統 221
8.5.1 Google文件系統概述 222
8.5.2 Google文件系統的結構 222
8.5.3 主服務器Master的操作 223
小結 224
習題 225
本章參考文獻 225
第9章 數據庫系統 227
9.1 數據庫系統的基本概念 227
9.1.1 數據庫管理系統概述 228
9.1.2 數據庫模式 228
9.1.3 數據模型 229
9.2 關系數據庫系統 233
9.2.1 關系數據庫的設計 234
9.2.2 關系的操作 236
9.2.3 結構化查詢語言 237
9.3 面向對象數據庫 240
9.3.1 面向對象數據庫簡介 240
9.3.2 面向對象數據庫語言 241
9.3.3 面向對象數據庫基本技術 241
9.3.4 面向對象數據庫軟件 243
9.3.5 面向對象數據庫系統的優勢 243
9.4 非關系型數據庫NoSQL 244
9.4.1 NoSQL介紹 244
9.4.2 NoSQL數據庫的產品 245
9.4.3 NoSQL數據庫的特點 246
小結 247
習題 247
本章參考文獻 248
第 二部分 專題
第 10章 嵌入式計算專題 250
10.1 嵌入式系統的概念 251
10.2 嵌入式系統的構成 254
10.2.1 嵌入式硬件 254
10.2.2 嵌入式軟件 257
10.3 嵌入式計算的特點 260
10.4 嵌入式計算發展趨勢與新挑戰 262
10.4.1 嵌入式計算發展趨勢 262
10.4.2 嵌入式計算所面臨的挑戰 262
習題 263
本章參考文獻 264
第 11章 信息安全與網絡安全專題 265
11.1 信息安全與網絡安全簡介 265
11.1.1 信息安全與網絡安全的基本概念 265
11.1.2 信息安全與網絡安全的基本特徵 266
11.1.3 信息安全與網絡安全保護技術 267
11.2 信息安全技術 267
11.2.1 信息安全技術概述 267
11.2.2 密碼技術 268
11.2.3 信息隱藏技術 270
11.3 網絡安全技術 273
11.3.1 網絡安全技術概述 273
11.3.2 防火牆技術 274
11.3.3 惡意程序及其防治 276
11.3.4 入侵檢測技術 280
習題 284
本章參考文獻 285
第 12章 物聯網專題 286
12.1 物聯網概述 286
12.1.1 物聯網的概念 286
12.1.2 物聯網發展狀況 288
12.1.3 物聯網核心技術與特點 291
12.2 物聯網關鍵技術 293
12.2.1 自動識別技術與RFID 293
12.2.2 傳感器技術 295
12.2.3 網絡構建 296
12.2.4 物聯網中間件 298
12.2.5 物聯網中的智能決策 299
12.2.6 物聯網信息安全 300
12.3 物聯網綜合應用 301
12.3.1 應用、預測和市場 301
12.3.2 行業應用 302
習題 308
本章參考文獻 309
第 13章 智能信息處理專題 310
13.1 智能信息處理的產生及發展 310
13.2 模糊信息處理 311
13.3 神經網絡信息處理 312
13.4 粗集信息處理 313
13.5 計算智能 314
13.5.1 遺傳算法 314
13.5.2 模擬退火 315
13.5.3 蟻群算法 316
13.5.4 人工免疫算法 317
13.6 展望 318
習題 318
本章參考文獻 319
第 14章 大數據專題 320
14.1 大數據的相關概念 321
14.1.1 大數據的定義 321
14.1.2 大數據的4個特性 321
14.1.3 大數據與數據庫的差異 322
14.1.4 大數據的產生方式 322
14.2 大數據的處理與存儲 323
14.2.1 處理模式 323
14.2.2 處理流程 323
14.2.3 大數據相關技術 325
14.2.4 大數據工具 326
14.2.5 大數據的存儲管理 327
14.3 大數據與機器學習 328
14.3.1 大數據時代下機器學習的特點 329
14.3.2 評價指標 330
14.3.3 機器學習模型 330
14.3.4 面向數據流的機器學習 334
14.4 隱私保護與數據安全 335
14.4.1 大數據隱私問題 335
14.4.2 大數據安全挑戰 336
14.4.3 大數據安全應對策略 337
14.5 大數據的應用及發展趨勢 337
14.5.1 大數據的應用 337
14.5.2 大數據的發展趨勢 339
習題 339
本章參考文獻 340
第 15章 雲計算專題 341
15.1 雲計算概述 341
15.1.1 雲計算的演進 341
15.1.2 雲計算的定義 341
15.1.3 雲計算的特點 342
15.1.4 雲計算的類型和服務層次 343
15.2 雲計算主要技術 344
15.2.1 雲計算技術框架 344
15.2.2 雲計算的核心 345
15.2.3 雲計算關鍵技術 346
15.3 雲計算產業及應用情況 347
15.3.1 雲計算帶來的變革 347
15.3.2 雲計算的應用 349
15.3.3 雲計算的發展現狀 350
15.4 私有雲搭建技術 351
15.4.1 OpenStack簡介 352
15.4.2 CloudStack簡介 352
習題 353
本章參考文獻 354