![](/c49/99/12041619.jpg)
出版社:人民郵電出版社 ISBN:9787115444271 版次:12 商品編碼:12041619 品牌:異步圖書 包裝:平裝 開本:16開 出版時間:2017-01-01 用紙:膠版紙 正文語種:中文 作者:J.格倫·布魯克希爾,丹尼斯·布裡羅,劉藝,吳英,毛倩倩
" 編輯推薦 計算機科學的全景式展現 經典的導論性教材的全新版本 全面把握全新的技術發展趨勢 《計算機科學概論》多年來一直深受世界各國高校師生的歡迎,是美國哈佛大學、麻省理工學院、普林斯頓大學、加州大學伯克利分校等知名大學的課程教材,對我國的高校教學也產生了廣泛影響。 《計算機科學概論》以歷史的眼光,從發展的角度、當前的水平以及現階段的研究方向等幾個方面,全景式描述了計算機科學各個子學科的主要領域。在內容編排上,很好地兼顧了學科廣度和主題深度,把握了全新的技術發展趨勢。《計算機科學概論》用算法、數據抽像等核心思想貫穿各個主題,並且充分體現了各個主題的歷史背景、發展歷程和新的技術趨勢,培養讀者的大局觀,為今後深入學習其他計算機專業課程打下堅實的基礎。 《計算機科學概論》深入淺出、圖文並茂、內容引人入勝,極易引發讀者的興趣,絕無一般教材的枯燥和晦澀。此外,本書的教學手段多樣、習題豐富,並且每章後都附有與本章內容相關的社會現實問題供讀者思考和討論,這些都很好地體現了作者強調培養學生分析問題能力的教學理念。 第12版主要是將Python程序設計語言方面的介紹納入了重點章節。此外,幾乎每一章都能看到對前一版對應章節的修訂。 《計算機科學概論》非常適合作為高等院校計算機以及相關專業本科生教材,也可以供有意在計算機方面發展的非計算機專業讀者作為入門參考。 內容簡介 《計算機科學概論》是計算機科學概論課程的經典教材,全書對計算機科學做了百科全書式的精彩闡述,充分展現了計算機科學的歷史背景、發展歷程和新的技術趨勢。《計算機科學概論》首先介紹的是信息編碼及計算機體繫結構的基本原理,進而講述操作繫統和組網及因特網,接著探討算法、程序設計語言及軟件工程,然後討論數據抽像和數據庫方面的問題,講述圖形學的一些主要應用以及人工智能,以計算理論的介紹結束全書。《計算機科學概論》在內容編排上由具體到抽像逐步推進,很適合教學安排,每一個主題自然而然地引導出下一個主題。此外,書中還包含大量的圖、表和示例,有助於讀者對知識的了解與把握。 第12版主要是將Python程序設計語言方面的介紹納入了重點章節,除了增加與Python相關的內容,幾乎每一章都能看到對前一版對應章節的修訂、更新以及修正。 作者簡介 J. Glenn Brookshear 世界知名的計算機科學教育家。他在1975年獲得新墨西哥州立大學博士後,創辦了Marquette大學的計算機科學學位項目,並在該校任教至今。他的主要研究方向是計算理論。除了本書之外,他還著有《Theory of Computationr: Formal Languages, Automata, and Complexity》。 目錄 緒0論緒論1 0.1算法的作用1 0.2計算機器的由來3 0.3學習大綱6 0.4計算機科學的首要主題7 0.4.1算法8 0.4.2抽像9 0.4.3創新9 0.4.4數據10 0.4.5程序設計10 0.4.6因特網10 0.4.7影響11 社會問題11 課外閱讀13 第1章數據存儲14 1.1位和位存儲14 1.1.1布爾運算14 1.1.2門和觸發器15 1.1.3十六進制記數法18 1.2主存儲器19 1.2.1存儲器結構19 1.2.2存儲器容量的度量20 1.3海量存儲器21 1.3.1磁繫統21 1.3.2光繫統22 1.3.3閃存驅動器23 1.4用位模式表示信息24 1.4.1文本的表示24 1.4.2數值的表示26 1.4.3圖像的表示27 1.4.4聲音的表示27 *1.5二進制繫統29 1.5.1二進制記數法29 1.5.2二進制加法30 1.5.3二進制中的小數31 *1.6整數的存儲32 1.6.1二進制補碼記數法33 1.6.2餘碼記數法35 *1.7小數的存儲37 1.7.1浮點記數法37 1.7.2截斷誤差38 *1.8數據與程序設計40 1.8.1Python入門41 1.8.2你好,Python41 1.8.3變量42 1.8.4運算符和表達式43 1.8.5貨幣轉換44 1.8.6調試44 *1.9數據壓縮45 1.9.1通用的數據壓縮技術45 1.9.2圖像壓縮47 1.9.3音頻和視頻壓縮48 *1.10通信差錯49 1.10.1奇偶校驗位49 1.10.2糾錯碼50 復習題52 社會問題55 課外閱讀56 第2章數據操控57 2.1計算機體繫結構57 2.1.1CPU基礎知識57 2.1.2存儲程序概念58 2.2機器語言59 2.2.1指令繫統60 2.2.2一種演示用的機器語言61 2.3程序執行64 2.3.1程序執行的一個例子65 2.3.2程序與數據67 *2.4算術/邏輯指令69 2.4.1邏輯運算69 2.4.2循環移位運算及移位運算70 2.4.3算術運算71 *2.5與其他設備通信72 2.5.1控制器的作用72 2.5.2直接存儲器存取74 2.5.3握手74 2.5.4流行的通信媒介74 2.5.5通信速率75 *2.6數據操控編程76 2.6.1邏輯運算和移位運算76 2.6.2控制結構77 2.6.3輸入和輸出79 2.6.4馬拉松訓練助手80 *2.7其他體繫結構82 2.7.1流水線82 2.7.2多處理器機器83 復習題84 社會問題89 課外閱讀90 第3章操作繫統91 3.1操作繫統的歷史91 3.2操作繫統的體繫結構94 3.2.1軟件概述94 3.2.2操作繫統組件96 3.2.3繫統啟動98 3.3協調機器的活動100 3.3.1進程的概念100 3.3.2進程管理100 *3.4處理進程間的競爭102 3.4.1信號量102 3.4.2死鎖103 3.5安全性105 3.5.1來自外部的攻擊106 3.5.2來自內部的攻擊106 復習題108 社會問題110 課外閱讀110 第4章組網及因特網112 4.1網絡基礎112 4.1.1網絡分類112 4.1.2協議113 4.1.3組合網絡115 4.1.4進程間通信的方法117 4.1.5分布式繫統118 4.2因特網118 4.2.1因特網體繫結構119 4.2.2因特網編址120 4.2.3因特網應用122 4.3萬維網126 4.3.1萬維網實現126 4.3.2HTML127 4.3.3XML129 4.3.4客戶端和服務器端的活動130 *4.4因特網協議132 4.4.1因特網軟件的分層方法132 4.4.2TCP/IP協議簇134 4.5安全性136 4.5.1入侵的形式136 4.5.2防護和對策137 4.5.3加密138 4.5.4網絡安全的法律途徑140 復習題142 社會問題143 課外閱讀144 第5章算法146 5.1算法的概念146 5.1.1非正式的回顧146 5.1.2算法的正式定義147 5.1.3算法的抽像本質148 5.2算法的表示148 5.2.1原語149 5.2.2偽代碼151 5.3算法的發現154 5.3.1問題求解的藝術155 5.3.2邁出第一步156 5.4迭代結構159 5.4.1順序搜索算法159 5.4.2循環控制160 5.4.3插入排序算法164 5.5遞歸結構167 5.5.1二分搜索算法167 5.5.2遞歸控制171 5.6效率和正確性174 5.6.1算法效率174 5.6.2軟件驗證177 復習題180 社會問題185 課外閱讀185 第6章程序設計語言186 6.1歷史回顧186 6.1.1早期程序設計語言186 6.1.2機器無關和超越機器無關188 6.1.3程序設計範型189 6.2傳統的程序設計概念192 6.2.1變量和數據類型193 6.2.2數據結構195 6.2.3常量和字面量196 6.2.4賦值語句197 6.2.5控制語句198 6.2.6注釋201 6.3202 6.3.1函數202 6.3.2參數203 6.3.3有返回值的函數205 6.4語言實現207 6.4.1翻譯過程207 6.4.2軟件開發包212 6.5面向對像程序設計213 6.5.1類和對像213 6.5.2構造器216 6.5.3附加特性217 *6.6程序設計並發活動218 *6.7說明性程序設計220 6.7.1邏輯推演220 6.7.2Prolog222 復習題224 社會問題227 課外閱讀228 第7章軟件工程229 7.1軟件工程學科229 7.2軟件生命周期231 7.2.1周期是個整體231 7.2.2傳統的開發階段232 7.3軟件工程方法學234 7.4模塊化236 7.4.1模塊式實現236 7.4.2耦合238 7.4.3內聚239 7.4.4信息隱藏239 7.4.5構件240 7.5行業工具241 7.5.1較老的工具241 7.5.2統一建模語言242 7.5.3設計模式246 7.6質量保證247 7.6.1質量保證的範圍247 7.6.2軟件測試248 7.7文檔249 7.8人機界面250 7.9軟件所有權和責任252 復習題254 社會問題256 課外閱讀257 第8章數據抽像258 8.1基本數據結構258 8.1.1數組和聚合258 8.1.2列表、棧和隊列259 8.1.3樹260 8.2相關概念261 8.2.1抽像261 8.2.2靜態結構與動態結構261 8.2.3指針262 8.3數據結構的實現263 8.3.1存儲數組263 8.3.2存儲聚合265 8.3.3存儲列表266 8.3.4存儲棧和隊列268 8.3.5存儲二叉樹270 8.3.6操控數據結構272 8.4一個簡短的案例273 8.5定制的數據類型277 8.5.1用戶定義的數據類型277 8.5.2抽像數據類型278 8.6類和對像280 *8.7機器語言中的指針282 復習題284 社會問題287 課外閱讀288 第9章數據庫繫統290 9.1數據庫基礎290 9.1.1數據庫繫統的重要性290 9.1.2模式的作用291 9.1.3數據庫管理繫統292 9.1.4數據庫模型293 9.2關繫模型294 9.2.1關繫設計中的問題294 9.2.2關繫運算297 9.2.3SQL300 *9.3面向對像數據庫302 *9.4維護數據庫的完整性304 9.4.1提交/回滾協議304 9.4.2鎖定305 *9.5傳統的文件結構307 9.5.1順序文件307 9.5.2索引文件309 9.5.3散列文件310 9.6數據挖掘313 9.7數據庫技術的社會影響314 復習題316 社會問題319 課外閱讀320 第10章計算機圖形學321 10.1計算機圖形學的範圍321 10.23D圖形概述322 10.3建模324 10.3.1單個物體的建模324 10.3.2整個場景的建模327 10.4渲染329 10.4.1光-表面交互329 10.4.2裁剪、掃描轉換和隱藏面的 消除331 10.4.3著色333 10.4.4渲染-流水線硬件334 *10.5處理全局照明335 10.5.1光線跟蹤336 10.5.2輻射度337 10.6動畫338 10.6.1動畫基礎338 10.6.2動力學和運動學339 10.6.3動畫制作過程340 復習題341 社會問題342 課外閱讀343 第11章人工智能344 11.1智能與機器344 11.1.1智能體344 11.1.2研究方法346 11.1.3圖靈測試346 11.2感知347 11.2.1理解圖像347 11.2.2語言處理349 11.3推理352 11.3.1產生式繫統352 11.3.2搜索樹354 11.3.3啟發式法356 11.4其他研究領域360 11.4.1知識的表達和處理360 11.4.2學習361 11.4.3遺傳算法362 11.5人工神經網絡363 11.5.1基本特性363 11.5.2訓練人工神經網絡365 11.5.3聯想記憶367 11.6機器人學369 11.7後果的思考371 復習題372 社會問題376 課外閱讀377 第12章計算理論378 12.1函數及其計算378 12.2圖靈機380 12.2.1圖靈機的原理380 12.2.2丘奇-圖靈論題382 12.3通用程序設計語言383 12.3.1Bare Bones語言383 12.3.2用Bare Bones語言編程385 12.3.3Bare Bones的通用性385 12.4一個不可計算的函數387 12.4.1停機問題387 12.4.2停機問題的不可解性388 12.5問題的復雜性391 12.5.1問題復雜性的度量391 12.5.2多項式問題與非多項式問題394 12.5.3NP問題395 *12.6公鑰密碼學397 12.6.1模表示法398 12.6.2RSA公鑰密碼學399 復習題400 社會問題403 課外閱讀404 附錄AASCII碼405 附錄B用於處理二進制補碼表示的電路406 附錄C一種簡單的機器語言408 附錄D高級程序設計語言410 附錄E迭代結構與遞歸結構的等價性412 索引414 內容提要
目錄 緒0論緒論1 0.1算法的作用1 0.2計算機器的由來3 0.3學習大綱6 0.4計算機科學的首要主題7 0.4.1算法8 0.4.2抽像9 0.4.3創新9 0.4.4數據10 0.4.5程序設計10 0.4.6因特網10 0.4.7影響11 社會問題11 課外閱讀13 第1章數據存儲14 1.1位和位存儲14 1.1.1布爾運算14 1.1.2門和觸發器15 1.1.3十六進制記數法18 1.2主存儲器19 1.2.1存儲器結構19 1.2.2存儲器容量的度量20 1.3海量存儲器21 1.3.1磁繫統21 1.3.2光繫統22 1.3.3閃存驅動器23 1.4用位模式表示信息24 1.4.1文本的表示24 1.4.2數值的表示26 1.4.3圖像的表示27 1.4.4聲音的表示27 *1.5二進制繫統29 1.5.1二進制記數法29 1.5.2二進制加法30 1.5.3二進制中的小數31 *1.6整數的存儲32 1.6.1二進制補碼記數法33 1.6.2餘碼記數法35 *1.7小數的存儲37 1.7.1浮點記數法37 1.7.2截斷誤差38 *1.8數據與程序設計40 1.8.1Python入門41 1.8.2你好,Python41 1.8.3變量42 1.8.4運算符和表達式43 1.8.5貨幣轉換44 1.8.6調試44 *1.9數據壓縮45 1.9.1通用的數據壓縮技術45 1.9.2圖像壓縮47 1.9.3音頻和視頻壓縮48 *1.10通信差錯49 1.10.1奇偶校驗位49 1.10.2糾錯碼50 復習題52 社會問題55 課外閱讀56 第2章數據操控57 2.1計算機體繫結構57 2.1.1CPU基礎知識57 2.1.2存儲程序概念58 2.2機器語言59 2.2.1指令繫統60 2.2.2一種演示用的機器語言61 2.3程序執行64 2.3.1程序執行的一個例子65 2.3.2程序與數據67 *2.4算術/邏輯指令69 2.4.1邏輯運算69 2.4.2循環移位運算及移位運算70 2.4.3算術運算71 *2.5與其他設備通信72 2.5.1控制器的作用72 2.5.2直接存儲器存取74 2.5.3握手74 2.5.4流行的通信媒介74 2.5.5通信速率75 *2.6數據操控編程76 2.6.1邏輯運算和移位運算76 2.6.2控制結構77 2.6.3輸入和輸出79 2.6.4馬拉松訓練助手80 *2.7其他體繫結構82 2.7.1流水線82 2.7.2多處理器機器83 復習題84 社會問題89 課外閱讀90 第3章操作繫統91 3.1操作繫統的歷史91 3.2操作繫統的體繫結構94 3.2.1軟件概述94 3.2.2操作繫統組件96 3.2.3繫統啟動98 3.3協調機器的活動100 3.3.1進程的概念100 3.3.2進程管理100 *3.4處理進程間的競爭102 3.4.1信號量102 3.4.2死鎖103 3.5安全性105 3.5.1來自外部的攻擊106 3.5.2來自內部的攻擊106 復習題108 社會問題110 課外閱讀110 第4章組網及因特網112 4.1網絡基礎112 4.1.1網絡分類112 4.1.2協議113 4.1.3組合網絡115 4.1.4進程間通信的方法117 4.1.5分布式繫統118 4.2因特網118 4.2.1因特網體繫結構119 4.2.2因特網編址120 4.2.3因特網應用122 4.3萬維網126 4.3.1萬維網實現126 4.3.2HTML127 4.3.3XML129 4.3.4客戶端和服務器端的活動130 *4.4因特網協議132 4.4.1因特網軟件的分層方法132 4.4.2TCP/IP協議簇134 4.5安全性136 4.5.1入侵的形式136 4.5.2防護和對策137 4.5.3加密138 4.5.4網絡安全的法律途徑140 復習題142 社會問題143 課外閱讀144 第5章算法146 5.1算法的概念146 5.1.1非正式的回顧146 5.1.2算法的正式定義147 5.1.3算法的抽像本質148 5.2算法的表示148 5.2.1原語149 5.2.2偽代碼151 5.3算法的發現154 5.3.1問題求解的藝術155 5.3.2邁出第一步156 5.4迭代結構159 5.4.1順序搜索算法159 5.4.2循環控制160 5.4.3插入排序算法164 5.5遞歸結構167 5.5.1二分搜索算法167 5.5.2遞歸控制171 5.6效率和正確性174 5.6.1算法效率174 5.6.2軟件驗證177 復習題180 社會問題185 課外閱讀185 第6章程序設計語言186 6.1歷史回顧186 6.1.1早期程序設計語言186 6.1.2機器無關和超越機器無關188 6.1.3程序設計範型189 6.2傳統的程序設計概念192 6.2.1變量和數據類型193 6.2.2數據結構195 6.2.3常量和字面量196 6.2.4賦值語句197 6.2.5控制語句198 6.2.6注釋201 6.3202 6.3.1函數202 6.3.2參數203 6.3.3有返回值的函數205 6.4語言實現207 6.4.1翻譯過程207 6.4.2軟件開發包212 6.5面向對像程序設計213 6.5.1類和對像213 6.5.2構造器216 6.5.3附加特性217 *6.6程序設計並發活動218 *6.7說明性程序設計220 6.7.1邏輯推演220 6.7.2Prolog222 復習題224 社會問題227 課外閱讀228 第7章軟件工程229 7.1軟件工程學科229 7.2軟件生命周期231 7.2.1周期是個整體231 7.2.2傳統的開發階段232 7.3軟件工程方法學234 7.4模塊化236 7.4.1模塊式實現236 7.4.2耦合238 7.4.3內聚239 7.4.4信息隱藏239 7.4.5構件240 7.5行業工具241 7.5.1較老的工具241 7.5.2統一建模語言242 7.5.3設計模式246 7.6質量保證247 7.6.1質量保證的範圍247 7.6.2軟件測試248 7.7文檔249 7.8人機界面250 7.9軟件所有權和責任252 復習題254 社會問題256 課外閱讀257 第8章數據抽像258 8.1基本數據結構258 8.1.1數組和聚合258 8.1.2列表、棧和隊列259 8.1.3樹260 8.2相關概念261 8.2.1抽像261 8.2.2靜態結構與動態結構261 8.2.3指針262 8.3數據結構的實現263 8.3.1存儲數組263 8.3.2存儲聚合265 8.3.3存儲列表266 8.3.4存儲棧和隊列268 8.3.5存儲二叉樹270 8.3.6操控數據結構272 8.4一個簡短的案例273 8.5定制的數據類型277 8.5.1用戶定義的數據類型277 8.5.2抽像數據類型278 8.6類和對像280 *8.7機器語言中的指針282 復習題284 社會問題287 課外閱讀288 第9章數據庫繫統290 9.1數據庫基礎290 9.1.1數據庫繫統的重要性290 9.1.2模式的作用291 9.1.3數據庫管理繫統292 9.1.4數據庫模型293 9.2關繫模型294 9.2.1關繫設計中的問題294 9.2.2關繫運算297 9.2.3SQL300 *9.3面向對像數據庫302 *9.4維護數據庫的完整性304 9.4.1提交/回滾協議304 9.4.2鎖定305 *9.5傳統的文件結構307 9.5.1順序文件307 9.5.2索引文件309 9.5.3散列文件310 9.6數據挖掘313 9.7數據庫技術的社會影響314 復習題316 社會問題319 課外閱讀320 第10章計算機圖形學321 10.1計算機圖形學的範圍321 10.23D圖形概述322 10.3建模324 10.3.1單個物體的建模324 10.3.2整個場景的建模327 10.4渲染329 10.4.1光-表面交互329 10.4.2裁剪、掃描轉換和隱藏面的 消除331 10.4.3著色333 10.4.4渲染-流水線硬件334 *10.5處理全局照明335 10.5.1光線跟蹤336 10.5.2輻射度337 10.6動畫338 10.6.1動畫基礎338 10.6.2動力學和運動學339 10.6.3動畫制作過程340 復習題341 社會問題342 課外閱讀343 第11章人工智能344 11.1智能與機器344 11.1.1智能體344 11.1.2研究方法346 11.1.3圖靈測試346 11.2感知347 11.2.1理解圖像347 11.2.2語言處理349 11.3推理352 11.3.1產生式繫統352 11.3.2搜索樹354 11.3.3啟發式法356 11.4其他研究領域360 11.4.1知識的表達和處理360 11.4.2學習361 11.4.3遺傳算法362 11.5人工神經網絡363 11.5.1基本特性363 11.5.2訓練人工神經網絡365 11.5.3聯想記憶367 11.6機器人學369 11.7後果的思考371 復習題372 社會問題376 課外閱讀377 第12章計算理論378 12.1函數及其計算378 12.2圖靈機380 12.2.1圖靈機的原理380 12.2.2丘奇-圖靈論題382 12.3通用程序設計語言383 12.3.1Bare Bones語言383 12.3.2用Bare Bones語言編程385 12.3.3Bare Bones的通用性385 12.4一個不可計算的函數387 12.4.1停機問題387 12.4.2停機問題的不可解性388 12.5問題的復雜性391 12.5.1問題復雜性的度量391 12.5.2多項式問題與非多項式問題394 12.5.3NP問題395 *12.6公鑰密碼學397 12.6.1模表示法398 12.6.2RSA公鑰密碼學399 復習題400 社會問題403 課外閱讀404 附錄AASCII碼405 附錄B用於處理二進制補碼表示的電路406 附錄C一種簡單的機器語言408 附錄D高級程序設計語言410 附錄E迭代結構與遞歸結構的等價性412 索引414 查看全部↓
" |