計算機科學導論——以Python為舟(第3版)

《計算機科學導論——以Python為舟(第3版)》是清華大學出版社2020年出版圖書,作者沙行勉

基本介紹

  • 書名:計算機科學導論——以Python為舟(第3版)
  • 作者:沙行勉
  • 出版社:清華大學出版
內容簡介,目錄,

內容簡介

本書用深入淺出的語言講解了計算機科學的基礎知識。主要內容包括計算機學什麼、神奇的0與1、程式是如何執行的、學習Python語言與資料庫知識、計算思維的核心——算法、作業系統、並行計算、計算機網路與物聯網、信息安全、機器學習等。本書不僅讓讀者能夠清楚、完整地了解如何用計算機解決問題,而且通過Python程式的巧妙演繹與動手實踐,讓讀者切實體會到計算機科學的廣博與趣味,帶領讀者體會計算機科學請棄之美。 本書可作為計算機科學入門課程的教科書,也可作為廣大讀者理解計算機科學基本知識的科普讀物及學習Python語言的參考書。

目錄

第1章計算機學什麼
1.1探索黑匣子——從一個程式談起
1.1.1探索黑匣子之計算機硬體
1.1.2探索黑匣子之計算機軟體
1.1.3探索黑匣子之作業系統
1.1.4計算機系統的層次
1.2計算機編程的基本概念
1.2.1初窺高級語言
1.2.2乘Python之舟進入計算機語言的世界
1.2.3活學活用——運用Python的基本功能解決數學問題
小結
1.3計算機核心知識——算法
1.3.1算法的重要性
1.3.2解平方根算法一
1.3.3解平方根算法二
1.3.4解平方根算法三
小結
1.4什麼是計算機
1.4.1歷史上的計算機
1.4.2嵌入式系統
1.4.3未來的計算機
小結
1.5計算機前沿知識——大數據
1.5.1數據
1.5.2大數據
1.5.3大數據的套用
小結
1.5.4對數據和邏輯的蒸詢再槳正確態度——沙老師的話
1.6計算機科學之美
1.6.1無處不在的計算機
1.6.2計算機學科本身包含的知識面之廣
本章總結
習題1
第2章神奇的0與1
2.1進位制的概念
小結
2.2不同進制間的轉換
2.2.1二進制數轉換為十進制數
2.2.2十進制數轉換為二進制數
2.2.3二、八、十六進制的巧妙轉換
小結
2.3計算中的二進制四則運算
2.3.1無符號整數與加法
2.3.2乘法與除法
2.3.3帶符號整數的減法
2.3.4浮雄熱勸點數
小結
2.4一榆設她切都是邏輯
2.4.1什麼是邏輯運算
2.4.2電路實現邏輯(課時不足時,可不講本節)
2.4.3用邏輯做加法
2.4.4加法與控制語句
小結
2.5計算機中的存儲
2.5.1數據的存儲形式
2.5.2存儲設備
小結
2.6談0與1的美
2.6.1簡單開關的無限大用
2.6.2二進制邏輯的神奇妙用
2.6.3“亢龍有悔”和“否極泰來”
2.6.4“若見諸相非相,即見如來”
習題2
第3章程式是如何執行的
3.1引例
3.2a=a+1的執行過程
3.2.1分解a=a+1的執行步驟
3.2.2CPU中的核心部件
3.2.3彙編指令的概念
3.2.4a=a+1的完整執行過程
小承棵諒燥結
3.3控制結構的執行
3.3.1ifelse選擇語句
3.3.2分支跳轉指令
3.3.3ifelse選擇語句的執行
3.3.4while循環語句的執行
3.3.5for循環語句的執行
小結
3.4關於Python的函式調用
3.4.1函式的基本概念
3.4.2Python函式入門
3.4.3局部變數與全局變數
小結
3.5函式調用過程的分析
3.5.1返回地址的存儲
3.5.2函式調用時棧的管理
3.5.3SEAL中函式調用棧幀的建立
小結
3.6幾種通用的程式語言
小結
3.7對電腦程式的領悟
3.7.1清晰的語義
3.7.2嚴謹的邏輯
3.7.3巧妙的結構
3.7.4智慧型是程式計算出來的
小奔定墓結
習題3
第4章學習Python語言
4.1簡潔的Python
4.2Python內置數據結構
4.2.1Python基本數據類型
4.2.2列表
4.2.3再談字元串
4.2.4字典——類似資料庫的結構
4.3Python賦值語句
4.3.1基本賦值語句
4.3.2序列賦值
4.3.3擴展序列賦值
4.3.4多目標賦值
4.3.5增強賦值求悼影語句
4.4Python控制結構
4.4.1if語句
4.4.2while循環語句
4.4.3for循環語句
4.5Python函式調用
4.6Python自定義數據結構
4.6.1面向過程與面向對象
4.6.2面向對象基本概念——類與對象
4.7基於Python面向對象編程實現資料庫功能
4.7.1Python面向對象方式實現資料庫的學生類
4.7.2Python面向對象方式實現資料庫的課程類
4.7.3Python創建資料庫的學生與課程類組
4.7.4Python實例功能模擬
4.8有趣的小烏龜——Python之繪圖
4.8.1初識小烏龜
4.8.2小烏龜繪製基礎圖形
4.8.3小烏龜繪製迷宮
習題4
第5章計算思維的核心——算法
5.1計算思維是什麼
小結
5.2遞歸的基本概念
小結
5.3分治法
小結
5.4貪心算法
小結
5.5動態規劃
小結
5.6以老鼠走迷宮為例
小結
5.7談計算思維的美
5.7.1遞歸思想的美
5.7.2計算思維求解問題的基本方式的美
5.7.3問題複雜度的研究之美
習題5
第6章作業系統簡介
6.1計算機的啟動
6.1.1啟動自檢階段
6.1.2初始化啟動階段
6.1.3啟動載入階段
6.1.4核心裝載階段
6.1.5登錄階段
6.2認識作業系統
6.3作業系統對硬體資源的管理——硬體中斷與異常
6.3.1作業系統對I/O設備的管理——硬體中斷
6.3.2作業系統對CPU的管理——硬體中斷
6.3.3作業系統對記憶體的管理——“異常”中斷
6.4作業系統對應用程式提供較安全可靠的服務——軟體中斷
6.4.1核心態與用戶態
6.4.2系統調用——軟體中斷
6.4.3常用系統調用
6.4.4系統調用實例: read系統調用
6.5作業系統對多運行環境的管理
6.5.1進程
6.5.2進程狀態
6.5.3進程調度
6.6檔案系統
6.6.1檔案基本概念
6.6.2目錄樹結構
6.6.3Python中的檔案操作
6.6.4學生實例的擴展
習題6
第7章並行計算
7.1並行計算簡介
7.1.1並行計算能加速程式執行
7.1.2並行計算的基本概念
7.1.3並行計算的難點——進程間通信
7.1.4並行計算能模擬現實中的複雜情況
7.2多進程編程
7.2.1多進程編程在Python中的實現
7.2.2牛刀小試——使用多進程加快求解問題的速度
7.3進程通信
7.3.1共享記憶體的基本概念
7.3.2共享記憶體的Python實現
7.4多進程編程實例
7.4.1方差計算的多進程實現
7.4.2N階矩陣與N維向量相乘的多進程實現
7.4.3基於價格波動的生產者決策模擬
7.4.4電梯運行與調度模擬
7.5利用多核進行並行計算的思考
7.5.1沒有智慧的計算就是浪費
7.5.2能自己做就自己做,不要總是請示協調
7.5.3讓大家共享多核,有福同享就是雲計算
7.5.4分散式計算也是多核計算
習題7
第8章計算機網路與物聯網
8.1無遠弗屆的網路
小結
8.1.1物理層(Physical Layer)
小結
8.1.2數據鏈路層(Data Link Layer)
小結
8.1.3網路層(Network Layer)
小結
8.1.4傳輸層(Transport Layer)
小結
8.1.5套用層(Application Layer)
小結
8.2Web=?
8.2.1一個簡單網頁的代碼
小結
8.2.2網頁訪問流程
小結
8.2.3網頁的動靜之分
8.2.4網站用什麼說話
小結
8.2.5關於本地計算機上的一個小網頁
8.3對計算機網路的領悟
8.4初窺物聯網
8.4.1未來生活中的物聯網
8.4.2智慧型家居
8.4.3智慧型交通
8.4.4醫療物聯網
8.4.5物聯網相關技術
小結
習題8
第9章信息安全
9.1引言
9.2常見威脅
9.2.1網路的威脅
9.2.2惡意軟體
小結
9.2.3拒絕服務
9.3措施和技術
9.3.1密碼學
小結
9.3.2防火牆
9.3.3入侵檢測
9.3.4網路安全
9.3.5系統安全
9.3.6防毒軟體
9.4手機病毒
9.5硬體安全: 木馬電路與旁道攻擊
9.5.1硬體木馬
9.5.2旁道攻擊
9.6談信息安全之美
習題9
第10章機器學習概論
10.1人工智慧與機器學習簡介
10.1.1人工智慧簡介
10.1.2AlphaBeta剪枝搜尋
10.1.3機器學習簡介
10.2最小二乘分類器
10.3Logistic分類器
10.4樸素貝葉斯分類器
10.5人工神經網路
10.6深度學習
習題10
參考文獻
2.5.2存儲設備
小結
2.6談0與1的美
2.6.1簡單開關的無限大用
2.6.2二進制邏輯的神奇妙用
2.6.3“亢龍有悔”和“否極泰來”
2.6.4“若見諸相非相,即見如來”
習題2
第3章程式是如何執行的
3.1引例
3.2a=a+1的執行過程
3.2.1分解a=a+1的執行步驟
3.2.2CPU中的核心部件
3.2.3彙編指令的概念
3.2.4a=a+1的完整執行過程
小結
3.3控制結構的執行
3.3.1ifelse選擇語句
3.3.2分支跳轉指令
3.3.3ifelse選擇語句的執行
3.3.4while循環語句的執行
3.3.5for循環語句的執行
小結
3.4關於Python的函式調用
3.4.1函式的基本概念
3.4.2Python函式入門
3.4.3局部變數與全局變數
小結
3.5函式調用過程的分析
3.5.1返回地址的存儲
3.5.2函式調用時棧的管理
3.5.3SEAL中函式調用棧幀的建立
小結
3.6幾種通用的程式語言
小結
3.7對電腦程式的領悟
3.7.1清晰的語義
3.7.2嚴謹的邏輯
3.7.3巧妙的結構
3.7.4智慧型是程式計算出來的
小結
習題3
第4章學習Python語言
4.1簡潔的Python
4.2Python內置數據結構
4.2.1Python基本數據類型
4.2.2列表
4.2.3再談字元串
4.2.4字典——類似資料庫的結構
4.3Python賦值語句
4.3.1基本賦值語句
4.3.2序列賦值
4.3.3擴展序列賦值
4.3.4多目標賦值
4.3.5增強賦值語句
4.4Python控制結構
4.4.1if語句
4.4.2while循環語句
4.4.3for循環語句
4.5Python函式調用
4.6Python自定義數據結構
4.6.1面向過程與面向對象
4.6.2面向對象基本概念——類與對象
4.7基於Python面向對象編程實現資料庫功能
4.7.1Python面向對象方式實現資料庫的學生類
4.7.2Python面向對象方式實現資料庫的課程類
4.7.3Python創建資料庫的學生與課程類組
4.7.4Python實例功能模擬
4.8有趣的小烏龜——Python之繪圖
4.8.1初識小烏龜
4.8.2小烏龜繪製基礎圖形
4.8.3小烏龜繪製迷宮
習題4
第5章計算思維的核心——算法
5.1計算思維是什麼
小結
5.2遞歸的基本概念
小結
5.3分治法
小結
5.4貪心算法
小結
5.5動態規劃
小結
5.6以老鼠走迷宮為例
小結
5.7談計算思維的美
5.7.1遞歸思想的美
5.7.2計算思維求解問題的基本方式的美
5.7.3問題複雜度的研究之美
習題5
第6章作業系統簡介
6.1計算機的啟動
6.1.1啟動自檢階段
6.1.2初始化啟動階段
6.1.3啟動載入階段
6.1.4核心裝載階段
6.1.5登錄階段
6.2認識作業系統
6.3作業系統對硬體資源的管理——硬體中斷與異常
6.3.1作業系統對I/O設備的管理——硬體中斷
6.3.2作業系統對CPU的管理——硬體中斷
6.3.3作業系統對記憶體的管理——“異常”中斷
6.4作業系統對應用程式提供較安全可靠的服務——軟體中斷
6.4.1核心態與用戶態
6.4.2系統調用——軟體中斷
6.4.3常用系統調用
6.4.4系統調用實例: read系統調用
6.5作業系統對多運行環境的管理
6.5.1進程
6.5.2進程狀態
6.5.3進程調度
6.6檔案系統
6.6.1檔案基本概念
6.6.2目錄樹結構
6.6.3Python中的檔案操作
6.6.4學生實例的擴展
習題6
第7章並行計算
7.1並行計算簡介
7.1.1並行計算能加速程式執行
7.1.2並行計算的基本概念
7.1.3並行計算的難點——進程間通信
7.1.4並行計算能模擬現實中的複雜情況
7.2多進程編程
7.2.1多進程編程在Python中的實現
7.2.2牛刀小試——使用多進程加快求解問題的速度
7.3進程通信
7.3.1共享記憶體的基本概念
7.3.2共享記憶體的Python實現
7.4多進程編程實例
7.4.1方差計算的多進程實現
7.4.2N階矩陣與N維向量相乘的多進程實現
7.4.3基於價格波動的生產者決策模擬
7.4.4電梯運行與調度模擬
7.5利用多核進行並行計算的思考
7.5.1沒有智慧的計算就是浪費
7.5.2能自己做就自己做,不要總是請示協調
7.5.3讓大家共享多核,有福同享就是雲計算
7.5.4分散式計算也是多核計算
習題7
第8章計算機網路與物聯網
8.1無遠弗屆的網路
小結
8.1.1物理層(Physical Layer)
小結
8.1.2數據鏈路層(Data Link Layer)
小結
8.1.3網路層(Network Layer)
小結
8.1.4傳輸層(Transport Layer)
小結
8.1.5套用層(Application Layer)
小結
8.2Web=?
8.2.1一個簡單網頁的代碼
小結
8.2.2網頁訪問流程
小結
8.2.3網頁的動靜之分
8.2.4網站用什麼說話
小結
8.2.5關於本地計算機上的一個小網頁
8.3對計算機網路的領悟
8.4初窺物聯網
8.4.1未來生活中的物聯網
8.4.2智慧型家居
8.4.3智慧型交通
8.4.4醫療物聯網
8.4.5物聯網相關技術
小結
習題8
第9章信息安全
9.1引言
9.2常見威脅
9.2.1網路的威脅
9.2.2惡意軟體
小結
9.2.3拒絕服務
9.3措施和技術
9.3.1密碼學
小結
9.3.2防火牆
9.3.3入侵檢測
9.3.4網路安全
9.3.5系統安全
9.3.6防毒軟體
9.4手機病毒
9.5硬體安全: 木馬電路與旁道攻擊
9.5.1硬體木馬
9.5.2旁道攻擊
9.6談信息安全之美
習題9
第10章機器學習概論
10.1人工智慧與機器學習簡介
10.1.1人工智慧簡介
10.1.2AlphaBeta剪枝搜尋
10.1.3機器學習簡介
10.2最小二乘分類器
10.3Logistic分類器
10.4樸素貝葉斯分類器
10.5人工神經網路
10.6深度學習
習題10
參考文獻

相關詞條

熱門詞條

聯絡我們