現貨3本 程序是怎樣跑起來的+計算機是怎樣跑起來的+網絡是怎樣連接的 計算機組成原理教程書

現貨3本 程序是怎樣跑起來的+計算機是怎樣跑起來的+網絡是怎樣連接的 計算機組成原理教程書 pdf epub mobi txt 电子书 下载 2025

圖書標籤:
  • 計算機原理
  • 程序運行
  • 網絡連接
  • 計算機組成原理
  • 入門教程
  • 現貨
  • 技術
  • 科普
  • 計算機基礎
  • 學習資料
想要找书就要到 求知書站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
店铺: 经纶风图书专营店
出版社: 人民邮电出版社
ISBN:9787115392275
商品编码:27388254320
包装:平装
套装数量:3

具体描述


書名:網絡是怎樣連接的

圖書定價:49元

圖書作者:[ 日] 戶根勤

齣版社:人民郵電齣版社

齣版日期:2017/1/1 0:00:00

ISBN號:9787115441249

開本:16開

頁數:360

版次:1-1

第1章 瀏覽器生成消息 1 
——探索瀏覽器內部 
1.1 生成HTTP請求消息 5 
1.1.1 探索之旅從輸入網址開始 5 
1.1.2 瀏覽器先要解析URL 7 
1.1.3 省略文件名的情況 9 
1.1.4 HTTP的基本思路 10 
1.1.5 生成HTTP請求消息 14 
1.1.6 發送請求後會收到響應 20 
1.2 嚮DNS服務器查詢Web服務器的IP地址 24 
1.2.1 IP地址的基本知識 24 
1.2.2 域名和IP地址並用的理由 28 
1.2.3 Socket庫提供查詢IP地址的功能 30 
1.2.4 通過解析器嚮DNS服務器發齣查詢 31 
1.2.5 解析器的內部原理 32 
1.3 全DNS服務器的大接力 35 
1.3.1 DNS服務器的基本工作 35 
1.3.2 域名的層次結構 38 
1.3.3 尋找相應的DNS服務器並獲取IP地址 40 
1.3.4 通過緩存加快DNS服務器的響應 44 
1.4 委托協議棧發送消息 45 
1.4.1 數據收發操作概覽 45 
1.4.2 創建套接字階段 48 
1.4.3 連接階段:把管道接上去 50 
1.4.4 通信階段:傳遞消息 52 
1.4.5 斷開階段:收發數據結束 53 

怪傑Resolver 55 

第2章 用電信號傳輸TCP/IP數據 57 
——探索協議棧和網卡 
2.1 創建套接字 61 
2.1.1 協議棧的內部結構 61 
2.1.2 套接字的實體就是通信控製信息 63 
2.1.3 調用socket時的操作 66 
2.2 連接服務器 68 
2.2.1 連接是什麼意思 68 
2.2.2 負責保存控製信息的頭部 70 
2.2.3 連接操作的實際過程 73 
2.3 收發數據 75 
2.3.1 將HTTP請求消息交給協議棧 75 
2.3.2 對較大的數據進行拆分 78 
2.3.3 使用ACK號確認網絡包已收到 79 
2.3.4 根據網絡包平均往返時間調整ACK號等待時間 83 
2.3.5 使用窗口有效管理ACK號 84 
2.3.6 ACK與窗口的閤並 87 
2.3.7 接收HTTP響應消息 89 
2.4 從服務器斷開並刪除套接字 90 
2.4.1 數據發送完畢後斷開連接 90 
2.4.2 刪除套接字 92 
2.4.3 數據收發操作小結 93 
2.5 IP與以太網的包收發操作 95 
2.5.1 包的基本知識 95 
2.5.2 包收發操作概覽 99 
2.5.3 生成包含接收方IP地址的IP頭部 102 
2.5.4 生成以太網用的MAC頭部 106 
2.5.5 通過ARP查詢目標路由器的MAC地址 108 
2.5.6 以太網的基本知識 111 
2.5.7 將IP包轉換成電或光信號發送齣去 114 
2.5.8 給網絡包再加3個控製數據 116 
2.5.9 嚮集綫器發送網絡包 120 
2.5.10 接收返迴包 123 
2.5.11 將服務器的響應包從IP傳遞給TCP 125 
2.6 UDP協議的收發操作 128 
2.6.1 不需要重發的數據用UDP發送更 128 
2.6.2 控製用的短數據 129 
2.6.3 音頻和視頻數據 130 

插進Socket裏的是燈泡還是程序 132 

第3章 從網綫到網絡設備 135 
——探索集綫器、交換機和路由器 
3.1 信號在網綫和集綫器中傳輸 139 
3.1.1 每個包都是獨立傳輸的 139 
3.1.2 防止網綫中的信號衰減很重要 140 
3.1.3 “雙絞”是為瞭噪聲 141 
3.1.4 集綫器將信號發往所有綫路 146 
3.2 交換機的包轉發操作 149 
3.2.1 交換機根據地址錶進行轉發 149 
3.2.2 MAC地址錶的維護 153 
3.2.3 特殊操作 154 
3.2.4 全雙工模式可以同時進行發送和接收 155 
3.2.5 自動協商:確定優的傳輸速率 156 
3.2.6 交換機可同時執行多個轉發操作 159 
3.3 路由器的包轉發操作 159 
3.3.1 路由器的基本知識 159 
3.3.2 路由錶中的信息 162 
3.3.3 路由器的包接收操作 166 
3.3.4 查詢路由錶確定輸齣端口 166 
3.3.5 找不到匹配路由時選擇默認路由 168 
3.3.6 包的有效期 169 
3.3.7 通過分片功能拆分大網絡包 170 
3.3.8 路由器的發送操作和計算機相同 172 
3.3.9 路由器與交換機的關係 173 
3.4 路由器的附加功能 176 
3.4.1 通過地址轉換有效利用IP地址 176 
3.4.2 地址轉換的基本原理 178 
3.4.3 改寫端口號的原因 180 
3.4.4 從互聯網訪問公司內網 181 
3.4.5 路由器的包過濾功能 182 

集綫器和路由器,換個名字身價翻倍? 184 

第4章 通過接入網進入互聯網內部 187 
——探索接入網和網絡運營商 
4.1 ADSL接入網的結構和工作方式 191 
4.1.1 互聯網的基本結構和傢庭、公司網絡是相同的 191 
4.1.2 連接用戶與互聯網的接入網 192 
4.1.3 ADSL Modem將包拆分成信元 193 
4.1.4 ADSL將信元“調製”成信號 197 
4.1.5 ADSL通過使用多個波來提高速率 200 
4.1.6 分離器的作用 201 
4.1.7 從用戶到電話局 203 
4.1.8 噪聲的乾擾 204 
4.1.9 通過DSLAM到達BAS 205 
4.2 光縴接入網(FTTH) 206 
4.2.1 光縴的基本知識 206 
4.2.2 單模與多模 208 
4.2.3 通過光縴分路來降低成本 213 
4.3 接入網中使用的PPP和隧道 217 
4.3.1 用戶認證和配置下發 217 
4.3.2 在以太網上傳輸PPP消息 219 
4.3.3 通過隧道將網絡包發送給運營商 223 
4.3.4 接入網的整體工作過程 225 
4.3.5 不分配IP地址的無編號端口 228 
4.3.6 互聯網接入路由器將私有地址轉換成公有地址 228 
4.3.7 除PPPoE之外的其他方式 230 
4.4 網絡運營商的內部 233 
4.4.1 POP和NOC 233 
4.4.2 室外通信綫路的連接 236 
4.5 跨越運營商的網絡包 238 
4.5.1 運營商之間的連接 238 
4.5.2 運營商之間的路由信息交換 239 
4.5.3 與公司網絡中自動更新路由錶機製的區彆 241 
4.5.4 IX的必要性 242 
4.5.5 運營商如何通過IX互相連接 243 

名字叫服務器,其實是路由器 246 

第5章 服務器端的局域網中有什麼玄機 249 
5.1 Web服務器的部署地點 253 
5.1.1 在公司裏部署Web服務器 253 
5.1.2 將Web服務器部署在數據中心 255 
5.2 防火牆的結構和原理 256 
5.2.1 主流的包過濾方式 256 
5.2.2 如何設置包過濾的規則 256 
5.2.3 通過端口號限定應用程序 260 
5.2.4 通過控製位判斷連接方嚮 260 
5.2.5 從公司內網訪問公開區域的規則 262 
5.2.6 從外部無法訪問公司內網 262 
5.2.7 通過防火牆 263 
5.2.8 防火牆無法抵禦的攻擊 264 
5.3 通過將請求平均分配給多颱服務器來平衡負載 265 
5.3.1 性能不足時需要負載均衡 265 
5.3.2 使用負載均衡器分配訪問 266 
5.4 使用緩存服務器分擔負載 270 
5.4.1 如何使用緩存服務器 270 
5.4.2 緩存服務器通過更新時間管理內容 271 
5.4.3 原始的代理——正嚮代理 276 
5.4.4 正嚮代理的改良版——反嚮代理 278 
5.4.5 透明代理 279 
5.5 內容分發服務 280 
5.5.1 利用內容分發服務分擔負載 280 
5.5.2 如何找到近的緩存服務器 282 
5.5.3 通過重定嚮服務器分配訪問目標 285 
5.5.4 緩存的更新方法會影響性能 287 

當通信綫路變成局域網 291 
第6章 請求到達Web服務器,響應返迴瀏覽器 293 
——短短幾秒的“漫長旅程”迎來終點 
6.1 服務器概覽 297 
6.1.1 客戶端與服務器的區彆 297 
6.1.2 服務器程序的結構 297 
6.1.3 服務器端的套接字和端口號 299 
6.2 服務器的接收操作 305 
6.2.1 網卡將接收到的信號轉換成數字信息 305 
6.2.2 IP模塊的接收操作 308 
6.2.3 TCP模塊如何處理連接包 309 
6.2.4 TCP模塊如何處理數據包 311 
6.2.5 TCP模塊的斷開操作 312 
6.3 Web服務器程序解釋請求消息並作齣響應 313 
6.3.1 將請求的URI轉換為實際的文件名 313 
6.3.2 運行CGI程序 316 
6.3.3 Web服務器的訪問控製 319 
6.3.4 返迴響應消息 323 
6.4 瀏覽器接收響應消息並顯示內容 323 
6.4.1 通過響應的數據類型判斷其中的內容 323 
6.4.2 瀏覽器顯示網頁內容!訪問完成! 326 

Gateway是通往異的入口 328 
附錄 330 
後記 334 
緻謝 334 
作者簡介 335
《網絡是怎樣連接的》以探索之旅的形式,從在瀏覽器中輸入網址開始,一路追蹤瞭到顯示齣網頁的內容為止的整個過程,以圖配文,講解瞭網絡的全貌,並重點介紹瞭實際的網絡設備和軟件是如何工作的。目的是幫助讀者理解網絡的本質意義,理解實際的設備和軟件,進而熟練運用網絡技術。同時,專設瞭“網絡術語其實很簡單”專欄,以對話的形式介紹瞭一些網絡術語的詞源,頗為生動有趣。
戶根勤(作者)
早先從事軟件開發,後進入網絡行業。曾供職於日本網絡設備廠商(外資企業)和國內網絡集成商,從事産品開發和技術谘詢等工作。在工作之餘還進行演講、寫作等活動。1998年離開公司,開始以演講、寫作以及運營論壇為主業。
周自恒(譯者)
知名技術圖書譯者、全棧程序員、自然科學愛好者。初中時曾獲得信息學奧賽天津賽區一等奬,曾任某管理谘詢公司戰略技術總監。
譯有《圖解CIO工作指南(第4版)》《大數據的衝擊》《代碼的未來》《30天自製操作係統》《圖解密碼技術》《傢用遊戲機簡史》《有趣的二進製》等

商品名稱:  計算機是怎樣跑起來的
作 者: (日)矢澤久雄
定 價: 39.00
重 量:  
ISBN   號: 9787115392275
齣  版  社: 人民郵電齣版社
開 本: 32
頁 數: 258
字 數: 204000
裝 幀: 平裝
齣版時間/版次: 2015-5-1
印刷時間/印次: 2016-1-3
第1章 計算機的三大原則 1
1.1 計算機的三個根本性基礎 3
1.2 輸入、運算、輸齣是硬件的基礎 4
1.3 軟件是指令和數據的集閤 6
1.4 對計算機來說什麼都是數字 8
1.5 隻要理解瞭三大原則,即使遇到難懂的新技術,也能輕鬆應對 9
1.6 為瞭貼近人類,計算機在不斷地進化 10
1.7 稍微預習一下第2章 13
第2章 試著製造一颱計算機吧 15
2.1 製作微型計算機所必需的元件 17
2.2 電路圖的讀法 21
2.3 連接電源、數據和地址總綫 23
2.4 連接I/O 26
2.5 連接時鍾信號 27
2.6 連接用於區分讀寫對象是內存還是I/O的引腳 28
2.7 連接剩餘的控製引腳 29
2.8 連接外部設備,通過DMA輸入程序 34
2.9 連接用於輸入輸齣的外部設備 35
2.10 輸入測試程序並進行調試 36
第3章 體驗一次手工匯編 39
3.1 從程序員的角度看硬件 41
3.2 機器語言和匯編語言 44
3.3 Z80 CPU的寄存器結構 49
3.4 追蹤程序的運行過程 52
3.5 嘗試手工匯編 54
3.6 嘗試估算程序的執行時間 57
第4章 程序像河水一樣流動著 59
4.1 程序的流程分為三種 61
4.2 用流程圖錶示程序的流程 65
4.3 錶示循環程序塊的“帽子”和“短褲” 68
4.4 結構化程序設計 72
4.5 畫流程圖來思考算法 75
4.6 特殊的程序流程——中斷處理 77
4.7 特殊的程序流程——事件驅動 78
COLUMN 來自企業培訓現場 電阻顔色代碼的諧音助記口訣 82
第5章 與算法成為好朋友的七個要點 85
5.1 算法是程序設計的“熟語” 87
5.2 要點1:算法中解決問題的步驟是明確且有限的 88
5.3 要點2:計算機不靠直覺而是機械地解決問題 89
5.4 要點3:瞭解並應用典型算法 91
5.5 要點4:利用計算機的處理速度 92
5.6 要點5:使用編程技巧提升程序執行速度 95
5.7 要點6:找齣數字間的規律 99
5.8 要點7:先在紙上考慮算法 101
第6章 與數據結構成為好朋友的七個要點 103
6.1 要點1:瞭解內存和變量的關係 105
6.2 要點2:瞭解作為數據結構基礎的數組 108
6.3 要點3:瞭解數組的應用——作為典型算法的數據結構 109
6.4 要點4:瞭解並掌握典型數據結構的類型和概念 111
6.5 要點5:瞭解棧和隊列的實現方法 114
6.6 要點6:瞭解結構體的組成 118
6.7 要點7:瞭解鏈錶和二叉樹的實現方法 120
第7章 成為會使用麵嚮對象編程的程序員吧 125
7.1 麵嚮對象編程 127
7.2 對OOP的多種理解方法 128
7.3 觀點1:麵嚮對象編程通過把組件拼裝到一起構建程序 130
7.4 觀點2:麵嚮對象編程能夠提升程序的開發效率和可維護性 132
7.5 觀點3:麵嚮對象編程是適用於大型程序的開發方法 134
7.6 觀點4:麵嚮對象編程就是在為現實建模 134
7.7 觀點5:麵嚮對象編程可以藉助UML設計程序 135
7.8 觀點6:麵嚮對象編程通過在對象間傳遞消息驅動程序 137
7.9 觀點7:在麵嚮對象編程中使用繼承、封裝和多態 140
7.10 類和對象的區彆 141
7.11 類有三種使用方法 143
7.12 在Java和.NET中有關OOP的知識不能少 145
第8章 一用就會的數據庫 147
8.1 數據庫是數據的基地 149
8.2 數據文件、DBMS和數據庫應用程序 151
8.3 設計數據庫 154
8.4 通過拆錶和整理數據實現規範化 157
8.5 用主鍵和外鍵在錶間建立關係 159
8.6 索引能夠提升數據的檢索速度 162
8.7 設計用戶界麵 164
8.8 嚮DBMS發送CRUD操作的SQL語句 165
8.9 使用數據對象嚮DBMS發送SQL語句 167
8.10 事務控製也可以交給DBMS處理 170
COLUMN 來自企業培訓現場 培訓新人編程時推薦使用什麼編程語言? 172
第9章 通過七個簡單的實驗理解TCP/IP網絡 175
9.1 實驗環境 177
9.2 實驗1:查看網卡的MAC地址 179
9.3 實驗2:查看計算機的IP地址 182
9.4 實驗3:瞭解DHCP服務器的作用 184
9.5 實驗4:路由器是數據傳輸過程中的指路人 186
9.6 實驗5:查看路由器的路由過程 188
9.7 實驗6:DNS服務器可以把主機名解析成IP地址 190
9.8 實驗7:查看IP地址和MAC地址的對應關係 192
9.9 TCP的作用及TCP/IP網絡的層級模型 193
第10章 試著加密數據吧 197
10.1 先來明確一下什麼是加密 199
10.2 錯開字符編碼的加密方式 201
10.3 密鑰越長,解密越睏難 205
10.4 適用於互聯網的公開密鑰加密技術 208
10.5 數字簽名可以證明數據的發送者是誰 211
第11章 XML究竟是什麼 215
11.1 XML是標記語言 217
11.2 XML是可擴展的語言 219
11.3 XML是元語言 220
11.4 XML可以為信息賦予意義 224
11.5 XML是通用的數據交換格式 227
11.6 可以為XML標簽設定命名空間 230
11.7 可以嚴格地定義 XML的文檔結構 232
11.8 用於解析XML的組件 233
11.9 XML可用於各種各樣的領域 235
第12章 SE負責監管計算機係統的構建 239
12.1 SE是自始至終參與係統開發過程的工程師 241
12.2 SE未必擔任過程序員 243
12.3 係統開發過程的規範 243
12.4 各個階段的工作內容及文檔 245
12.5 所謂設計,就是拆解 247
12.6 麵嚮對象法簡化瞭係統維護工作 249
12.7 技術能力和溝通能力 250
12.8 IT不等於引進計算機 252
12.9 計算機係統的成功與失敗 253
12.10 大幅提升設備利用率的多機備份 255
《計算機是怎樣跑起來的》倡導在計算機迅速發展、技術不斷革新的,迴歸到計算機的基礎知識上。通過探究計算機的本質,提升工程師對計算機的興趣,在麵對復雜的全新技術時,能夠迅速掌握其要點並靈活運用。
《計算機是怎樣跑起來的》以圖配文,以計算機的三大原則為開端、相繼介紹瞭計算機的結構、手工匯編、程序流程、算法、數據結構、麵嚮對象編程、數據庫、TCP/IP 網絡、數據加密、XML、計算機係統開發以及SE 的相關知識。本書適閤計算機愛好者和相關從業人員閱讀。
《計算機是怎樣跑起來的》圖文並茂,通俗易懂,非常適閤計算機愛好者和相關從業人員閱讀。

 

由於微型計算機上的CPU是Z80 CPU,所以就要使用適用於Z80 CPU的機器語言。顧名思義,機器語言就是處理器可以直接理解(與生俱來就能理解)的編程語言。機器語言有時也叫作原生代碼(Native Code)。 所謂時鍾信號的頻率,就是由時鍾發生器發送給CPU的電信號的頻率。錶示時鍾信號頻率的單位是MHz(兆赫茲=100萬迴/秒)。微型計算機使用的是2.5MHz的時鍾信號。時鍾信號是在0和1兩個數之間反復變換的電信號,就像滴答滴答左右擺動的鍾擺一樣。通常把發齣一次滴答的時間稱作一個時鍾周期。 在機器語言當中,指令執行時所需要的時鍾周期數取決於指令的類型。程序員不但可以通過纍加時鍾周期數估算程序執行的時間,還可以僅在特定的時間執行點亮LED(發光二極管)等操作。 每個地址都標示著一個內存中的數據存儲單元,而這些地址所構成的範圍就是內存的地址空間。在我們的微型計算機中,地址空間為0~255,每一個地址中可以存儲8比特(1字節)的指令或數據。 連接著的I/O的種類,就是指連接著微型計算機和周邊設備的I/O的種類。在微型計算機中,隻安裝瞭一個I/O,即上麵帶有4個8比特寄存器的Z80 PIO。隻要用CPU控製I/O的寄存器,就可以設定I/O的功能,與周邊設備進行數據的輸入輸齣。 …… 矢澤久雄,YAZAWA股份有限公司董事長兼總經理。GrapeCity信息技術集團顧問。電腦作傢之友會會長。
曾在某大型電子公司從事過電腦生産,在Software House做過程序員,現主要從事軟件開發工作。工作之餘筆耕不輟,從電路到編程語言均有涉及。代錶作有《程序是怎樣跑起來的》《使用C語言學習程序設計的基礎》《徵服C++類和繼承》等。自稱軟件藝人。

鬍屹,多年從事Web開發工作。熱愛編程,關注設計模式,緻力於提升軟件開發的質量。曾獲得SCJP和PHP ZCE證書。

書名:程序是怎樣跑起來的

定價:39.00元

作者:[日]矢澤久雄 著,李逢俊 譯

齣版社:人民郵電齣版社

齣版日期:2015-04-01

ISBN:9787115385130

頁碼:259

版次:1

裝幀:平裝

開本:32開

商品重量:0.3kg

第1章 對程序員來說CPU是什麼
1.1 CPU的內部結構解析
1.2 CPU是寄存器的集閤體
1.3 決定程序流程的程序計數器
1.4 條件分支和循環機製
1.5 函數的調用機製
1.6 通過地址和索引實現數組
1.7 CPU的處理其實很簡單
第2章 數據是用二進製數錶示的
2.1 用二進製數錶示計算機信息的原因
2.2 什麼是二進製數
2.3 移位運算和乘除運算的關係
2.4 便於計算機處理的“補數”
2.5 邏輯右移和算術右移的區彆
2.6 掌握邏輯運算的竅門
COLUMN 如果是你,你會怎樣介紹?——嚮小學生講解CPU和二進製
第3章 計算機進行小數運算時齣錯的原因
3.1 將0.1纍加100次也得不到10
3.2 用二進製數錶示小數
3.3 計算機運算齣錯的原因
3.4 什麼是浮點數
3.5 正則錶達式和 EXCESS係統
3.6 在實際的程序中進行確認
3.7 如何避免計算機計算齣錯
3.8 二進製數和十六進製數
第4章 熟練使用有棱有角的內存
4.1 內存的物理機製很簡單
4.2 內存的邏輯模型是樓房
4.3 簡單的指針
4.4 數組是使用內存的基礎
4.5 棧、隊列以及環形緩衝區
4.6 鏈錶使元素的追加和刪除更容易
4.7 二叉查找樹使數據搜索更有效
第5章 內存和磁盤的密關係
5.1 不讀入內存就無法運行
5.2 磁盤緩存加快瞭磁盤訪問速度
5.3 虛擬內存把磁盤作為部分內存來使用
5.4 節約內存的編程方法
5.5 磁盤的物理結構
第6章 自嘗試壓縮數據
6.1 文件以字節為單位保存
6.2 RLE 算法的機製
6.3 RLE 算法的缺點
6.4 通過莫爾斯編碼來看哈夫曼算法的基礎
6.5 用二叉樹實現哈夫曼編碼
6.6 哈夫曼算法能夠大幅提升壓縮比率
6.7 可逆壓縮和非可逆壓縮
COLUMN 如果是你,你會怎樣介紹?——嚮沉迷遊戲的中學生講解內存和磁盤
第7章 程序是在何種環境中運行的
7.1 運行環境 = 操作係統 + 硬件
7.2 Windows剋服瞭CPU以外的硬件差異
7.3 不同操作係統的 API不同
7.4 FreeBSD Port 幫你輕鬆使用源代碼
7.5 利用虛擬機獲得其他操作係統環境
7.6 提供相同運行環境的 Java虛擬機
7.7 BIOS 和引導
第8章 從源文件到可執行文件
8.1 計算機隻能運行本地代碼
8.2 本地代碼的內容
8.3 編譯器負責轉換源代碼
8.4 僅靠編譯是無法得到可執行文件的
8.5 啓動及庫文件
8.6 DLL 文件及導入庫
8.7 可執行文件運行時的必要條件
8.8 程序加載時會生成棧和堆
8.9 有點難度的Q&A;
第9章 操作係統和應用的關係
9.1 操作係統功能的曆史
9.2 要意識到操作係統的存在
9.3 係統調用和編程語言的移植性
9.4 操作係統和編程語言使硬件抽象化
9.5 Windows操作係統的特徵
COLUMN 如果是你,你會怎樣介紹?——嚮超喜歡手機的女高中生講解操作係統的作用
第10章 通過匯編語言瞭解程序的實際構成
10.1 匯編語言和本地代碼是一一對應的
10.2 通過編譯器輸齣匯編語言的源代碼
10.3 不會轉換成本地代碼的僞指令
10.4 匯編語言語法是“操作碼 操作數”
10.5 常用的mov指令
10.6 對棧進行push和pop
10.7 函數調用機製
10.8 函數內部的處理
10.9 始終確保全局變量用的內存空間
10.10 臨時確保局部變量用的內存空間
10.11 循環處理的實現方法
10.12 條件分支的實現方法
10.13 瞭解程序運行方式的必要性
第11章 硬件控製方法
11.1 應用和硬件無關?
11.2 支撐硬件輸入輸齣的 IN指令和OUT指令
11.3 編寫測的輸入輸齣程序
11.4 外圍設備的中斷請求
11.5 用中斷來實現實時處理
11.6 DMA 可以實現短時間內傳送大量數據
11.7 文字及圖片的顯示機製
COLUMN 如果是你,你會怎樣介紹?——嚮鄰居老奶奶說明顯示器和電視機的不同
第12章 讓計算機“思考”
12.1 作為“工具”的程序和為瞭“思考”的程序
12.2 用程序來錶示人類的思考方式
12.3 用程序來錶示人類的思考習慣
12.4 程序生成隨機數的方法
12.5 活用記憶功能以達到更接近人類的判斷
12.6 用程序來錶示人類的思考方式
COLUMN 如果是你,你會怎樣介紹?——嚮常光臨的酒館老闆講解計算機的思考機製
附錄 讓我們開始C語言之旅
C語言的特點
變量和函數
數據類型
標準函數庫
函數調用
局部變量和全局變量
數組和循環
其他語法結構
《程序是怎樣跑起來的》一書從計算機的內部結構開始講起,以圖配文的形式詳細講解瞭二進製、內存、數據壓縮、源文件和可執行文件、操作係統和應用程序的關係、匯編語言、硬件控製方法等內容,目的是讓讀者瞭解從用戶雙擊程序圖標到程序開始運行之間到底發生瞭什麼。同時專設瞭“如果是你,你會怎樣介紹?”專欄,以小學生、老奶奶為對象講解程序的運行原理,頗為有趣。本書圖文並茂,通俗易懂,非常適閤計算機愛好者及相關從業人員閱讀。

 



探秘數字世界的基石:從底層邏輯到宏大架構 本書集結瞭三本關於計算機科學核心知識的經典讀物:《程序是怎樣跑起來的》、《計算機是怎樣跑起來的》以及《網絡是怎樣連接的》。它們如同三把鑰匙,分彆開啓瞭通往程序執行的微觀世界、計算機硬件的內在機製以及全球信息互聯的宏大圖景的大門。對於任何渴望深入理解數字時代運作原理、構建紮實計算機科學基礎的讀者來說,這套書將是您不可或缺的嚮導。 第一部分:程序是怎樣跑起來的——代碼的生命周期與執行奧秘 在我們的日常生活中,應用程序如潮水般湧現,我們用它們來工作、娛樂、學習和社交。然而,有多少人真正思考過,當我們點擊一個應用程序的圖標時,背後到底發生瞭什麼?《程序是怎樣跑起來的》這本書將帶您深入探究這個問題的本質。 本書的開篇,將引導您認識程序從誕生到執行的完整生命周期。我們將從源代碼的編寫開始,理解不同編程語言的語法規則和抽象概念。隨後,您將瞭解到編譯器和解釋器如何將我們可讀的源代碼轉化為機器能夠理解的機器碼。這個過程並非一蹴而就,其中涉及到詞法分析、語法分析、語義分析等一係列復雜而精妙的步驟。我們將詳細闡述這些步驟的工作原理,幫助您理解代碼是如何被“翻譯”成計算機的語言的。 接下來,本書的重點將聚焦於程序執行的核心——CPU。您將瞭解到,CPU並非一個神秘的黑箱,它擁有指令集,能夠執行一係列基本的算術、邏輯和控製操作。我們將剖析CPU的內部結構,包括寄存器、算術邏輯單元(ALU)以及控製單元。您將理解指令是如何被CPU讀取、解碼並執行的,程序計數器(PC)如何指示下一條指令的地址,以及時鍾信號在協調CPU工作中的關鍵作用。 內存的作用也是本書不可忽視的篇章。我們將解釋內存(RAM)是如何存儲程序指令和數據的,以及CPU如何通過內存地址來訪問這些信息。您將理解堆棧(Stack)和堆(Heap)的概念,瞭解它們在函數調用、變量存儲以及動態內存分配中的不同用途。對於內存管理,本書也將進行深入的探討,包括內存的分配、釋放以及垃圾迴收機製,這些都是保證程序高效穩定運行的關鍵。 更進一步,本書還將觸及操作係統在程序執行中的核心作用。您將瞭解到,操作係統是如何管理CPU時間片,實現多任務並發執行的。進程和綫程的概念將被清晰地闡述,幫助您理解它們之間的區彆以及操作係統如何調度它們。此外,文件I/O(輸入/輸齣)操作,即程序如何與外部存儲設備進行交互,也將被詳細講解,包括文件係統的基本原理和常見的I/O模型。 通過《程序是怎樣跑起來的》,您將不再僅僅是應用程序的使用者,而是能夠洞察其內在運行機製的理解者。您將能夠更準確地診斷程序錯誤,優化代碼性能,甚至為自己開發應用程序打下堅實的基礎。 第二部分:計算機是怎樣跑起來的——硬件的智慧與協同 如果說《程序是怎樣跑起來的》是關於軟件的靈魂,那麼《計算機是怎樣跑起來的》則是在揭示硬件的軀體。在理解瞭程序如何被執行後,我們自然會好奇,是什麼樣的硬件組閤,纔能支撐起如此復雜的程序世界? 本書將帶您走進計算機的內部,從最基礎的部件開始,逐一拆解其工作原理。首先,我們將深入剖析中央處理器(CPU)的構成,不僅僅是指令執行,更會探討其微架構,如流水綫(Pipeline)技術如何提高執行效率,緩存(Cache)機製如何縮短CPU訪問內存的延遲,以及多核(Multi-core)處理器如何實現並行計算。您將瞭解到,CPU的設計是一門精妙的藝術,平衡著性能、功耗和成本。 主闆,作為計算機的“骨架”,也將是本書的重點。我們將介紹主闆上各種關鍵組件的連接方式,包括芯片組(Chipset)在數據傳輸中的橋梁作用,BIOS/UEFI在計算機啓動過程中的角色,以及各種接口(如PCIe、SATA)如何連接外部設備。您將理解,主闆的設計決定瞭計算機的擴展性和性能上限。 內存(RAM)不僅僅是程序的運行空間,其物理層麵的構成和工作原理也將被揭示。我們將介紹DRAM(動態隨機存取存儲器)的基本原理,以及內存控製器如何管理內存的讀寫操作。對於內存的速度和容量,您將從更底層的角度理解其對計算機整體性能的影響。 存儲設備,包括硬盤驅動器(HDD)和固態驅動器(SSD),將是本書另一大看點。我們將闡述HDD的磁頭讀寫原理,以及SSD基於閃存技術的優勢。文件係統(如FAT、NTFS、ext4)作為組織和管理存儲設備上數據的關鍵,其設計理念和工作方式也將被詳細講解。您將明白,文件是如何被存儲、讀取和刪除的,以及文件係統的碎片化問題。 顯卡(GPU)在現代計算機中的作用日益重要,本書也將對其進行深入的介紹。我們將探討GPU的並行處理能力,以及它在圖形渲染、科學計算等領域的應用。您將瞭解到,GPU的架構與CPU有顯著的區彆,其設計目標是為瞭處理海量數據的並行運算。 此外,本書還會涉及計算機的輸入/輸齣係統。鍵盤、鼠標、顯示器等外設如何通過I/O控製器與CPU進行數據交換,USB、HDMI等接口的標準和工作原理,以及中斷(Interrupt)機製在處理外部事件中的關鍵作用,都將一一呈現。 通過《計算機是怎樣跑起來的》,您將能夠構建一個完整的計算機硬件知識體係。您將不再對那些閃爍的指示燈和風扇的轟鳴感到陌生,而是能夠理解它們背後的邏輯和協同工作。這對於硬件選購、故障排查,乃至未來從事硬件設計和研發都將大有裨益。 第三部分:網絡是怎樣連接的——信息洪流的匯聚與流動 在現代社會,信息無處不在,我們通過網絡與世界緊密相連。從電子郵件到社交媒體,從在綫購物到視頻會議,網絡的觸角幾乎滲透到瞭生活的方方麵麵。《網絡是怎樣連接的》將帶領您穿越數字世界的脈絡,揭示信息是如何在全球範圍內自由流動的。 本書的起點將是網絡通信的基本概念。您將瞭解什麼是網絡、什麼是節點、什麼是鏈路。IP地址和MAC地址這兩個至關重要的標識符將被清晰地定義和區分,您將理解它們在網絡通信中的各自 역할。本書還將介紹不同的網絡拓撲結構,如星型、總綫型、環型等,以及它們各自的優缺點。 TCP/IP協議族,作為互聯網的基石,將是本書的核心內容。我們將逐層剖析TCP/IP協議棧的模型,包括應用層、傳輸層、網絡層和鏈路層。在應用層,您將瞭解HTTP、FTP、SMTP、DNS等常用協議的工作原理,例如,當您在瀏覽器中輸入一個網址時,DNS是如何解析域名的,HTTP請求又是如何發送和響應的。 傳輸層將聚焦於TCP和UDP這兩個核心協議。您將深入理解TCP的可靠性是如何通過三次握手、四次揮閤、確認應答和重傳機製來實現的,以及它在保證數據傳輸的順序性和完整性方麵的作用。同時,您也將瞭解到UDP的無連接、不可靠但高效的特性,以及它在流媒體、在綫遊戲等場景下的應用。 網絡層將是IP協議的主場。您將理解IP數據包是如何在網絡中路由的,路由器在其中扮演的關鍵角色,以及NAT(網絡地址轉換)技術如何解決IP地址枯竭的問題。本書還會探討IPv4和IPv6的區彆與演進。 鏈路層則關注數據如何在局域網內傳輸。以太網(Ethernet)作為最常見的局域網技術,其幀格式、CSMA/CD協議等都將得到詳細的講解。您還將瞭解到交換機(Switch)和集綫器(Hub)在局域網中的工作原理。 除瞭核心協議,本書還將觸及更廣泛的網絡主題。Wi-Fi(無綫局域網)的原理和安全技術,廣域網(WAN)的概念和技術,以及網絡安全的基礎知識,如防火牆、加密等,都將為您的網絡知識體係增添色彩。 通過《網絡是怎樣連接的》,您將能夠深刻理解互聯網的運作機製。您將不再被復雜的網絡術語所睏擾,而是能夠清晰地描繪齣信息流動的軌跡。這對於理解網絡故障、進行網絡配置、甚至安全地進行網絡活動都至關重要。 總結 這三本書相互補充,相互印證,共同構築瞭一個全麵而深入的計算機科學知識體係。從微觀的程序執行細節,到宏觀的全球網絡互聯,本書將帶領您一步步揭開數字世界的神秘麵紗。無論您是計算機科學專業的學生,還是渴望深入瞭解數字時代運作原理的愛好者,亦或是希望在技術領域有所建樹的從業者,這套書都將為您提供最堅實的基礎和最寶貴的啓發。它將幫助您: 理解代碼如何轉化為機器指令並被高效執行,從而寫齣更優化的程序。 洞悉計算機硬件的內部結構與工作原理,從而更好地理解和使用計算機。 掌握網絡通信的基本規則與協議,從而理解信息在全球範圍內是如何傳遞的。 建立嚴謹的邏輯思維和係統性的知識框架,為進一步的學習和研究打下堅實基礎。 這不僅僅是一套關於技術的書籍,更是一次關於探索和發現的旅程,一次對我們所處數字世界的深度認知。準備好迎接這場智慧的洗禮,踏上探尋數字世界基石的精彩徵程吧!

用户评价

评分

我是一個已經工作瞭幾年的程序員,平時主要從事Web開發,雖然工作離不開計算機和網絡,但我一直覺得自己對底層的理解不夠深入。很多時候遇到一些性能問題或者疑難雜癥,都隻能憑藉經驗或者搜索引擎來解決,總覺得少瞭點“根基”。這套書簡直就是給我“打通任督二脈”的神器!《程序是怎樣跑起來的》讓我清晰地看到瞭代碼從文本到機器指令,再到CPU執行的整個生命周期,特彆是關於內存管理和並發的一些講解,讓我對程序運行效率有瞭更深的理解,也為我優化代碼提供瞭理論指導。《計算機是怎樣跑起來的》則讓我認識到,CPU、內存、I/O設備之間的配閤遠比我想象的要復雜和精妙,理解這些硬件的限製和優勢,對於我設計係統架構和選擇技術棧非常有幫助。《網絡是怎樣連接的》更是讓我徹底告彆瞭“黑盒子”式的網絡認知,我明白瞭TCP如何保證可靠傳輸,UDP如何實現高效通信,HTTP如何支持Web服務,這些知識對於我排查網絡故障、理解分布式係統至關重要。總而言之,這套書讓我從一個“會用”的開發者,嚮一個“懂”的開發者邁進瞭一大步,為我未來的職業發展奠定瞭堅實的基礎。

评分

《網絡是怎樣連接的》這本書簡直就是為我這種對網絡世界充滿睏惑的人量身定做的。我每天都在使用互聯網,但對於背後到底是如何實現的,一直是一頭霧水。這本書從最基礎的IP地址、端口號講起,然後一步步深入到TCP/IP協議棧的各個層次。作者用非常生動的比喻,比如“信封”、“郵遞員”來解釋數據包的封裝和傳輸過程,讓我這個完全沒有網絡基礎的人也能輕鬆理解。我特彆喜歡書中關於HTTP協議的講解,瞭解瞭網頁是如何通過HTTP請求和響應來加載的,這讓我在瀏覽網頁時多瞭一份“知其所以然”的樂趣。DNS解析、路由選擇、NAT技術……這些曾經讓我望而卻步的專業術語,在這本書裏都變得清晰明瞭。作者還涉及瞭一些網絡安全的基礎知識,比如防火牆的作用,這讓我對網絡世界有瞭更全麵的認識。讀完這本書,我感覺自己不再是那個被動接受網絡服務的用戶,而是能夠理解網絡世界的規則和運作方式,就像擁有瞭一張探索數字世界的地圖。

评分

這套書給我帶來的最大的感受就是“係統性”和“融會貫通”。很多時候,我們學習計算機知識都是碎片化的,比如隻知道程序是怎麼寫的,或者隻知道硬件是怎麼組裝的,但很少有人能將它們有機地聯係起來。《程序是怎樣跑起來的》打下瞭紮實的程序執行基礎,《計算機是怎樣跑起來的》則拓展到瞭硬件層麵,而《網絡是怎樣連接的》則將我們帶入瞭更加廣闊的互聯世界。這三本書的銜接非常自然,你會發現,理解瞭程序在CPU上運行的原理,纔能更好地理解硬件設計為何如此,而理解瞭硬件的通信能力,纔能明白網絡連接的奧秘。我尤其喜歡作者在不同書籍之間進行的知識呼應,比如在講網絡時可能會提到CPU的處理能力如何影響網絡傳輸效率,在講硬件時可能會提到網絡協議對硬件接口的要求。這種“知識聯動”的設計,極大地提升瞭學習效率,也讓我看到瞭一個更加完整和立體的計算機體係。這套書不僅傳授瞭知識,更重要的是,它教會瞭我如何去思考,如何去構建自己的知識體係。

评分

《計算機是怎樣跑起來的》這本書則將視角進一步放大,從更宏觀的層麵揭示瞭計算機硬件的組成奧秘。我一直以為計算機就是一堆電路闆,但讀瞭這本書我纔知道,原來一塊小小的CPU背後蘊含著如此精妙的設計,各種邏輯門、運算器、控製器等等,是如何協同工作的。作者詳細介紹瞭CPU內部的結構,包括指令集、中斷機製、緩存等重要概念,並用大量圖示和流程圖來解釋它們的工作原理。我尤其對書中關於CPU性能提升的探討印象深刻,瞭解瞭超標量、亂序執行等技術是如何讓計算機的速度越來越快的。此外,內存、硬盤、顯卡這些我們日常接觸到的硬件,在這本書裏也被拆解分析,讓你清楚地知道它們各自承擔的功能以及它們之間是如何配閤的。最讓我驚喜的是,這本書還涉及瞭操作係統的一些基本原理,比如進程管理、內存管理等等,這讓我明白瞭硬件和上層應用之間是如何建立聯係的。看完這本書,我對“計算機”這個概念不再是模糊的認知,而是有瞭一個清晰的立體模型,仿佛能看到它內部運轉的每一個齒輪和每一個細節。

评分

這套書簡直是計算機領域的“入門寶典”!我一直對計算機底層原理充滿好奇,但市麵上很多書籍要麼過於學術,要麼又過於淺顯。當我在書店看到這套書時,簡直眼前一亮。我迫不及待地翻閱起來,發現它的內容安排得極其閤理。《程序是怎樣跑起來的》就像一位循循善誘的老師,從最基礎的馮·諾依曼體係結構講起,層層剝離,深入淺齣地剖析瞭程序在內存中如何被加載、執行,CPU又是如何一步步解析指令、進行運算的。作者的講解邏輯清晰,配圖也非常生動形象,即使是初學者,也能很容易理解那些看似復雜的概念,比如寄存器、指令流水綫、內存訪問等等。我特彆喜歡作者在講解過程中穿插的一些曆史故事和現實案例,這讓原本枯燥的理論變得活潑有趣,也讓我更加深刻地體會到計算機發展的脈絡。書中的代碼示例也非常實用,能夠幫助讀者動手實踐,加深理解。讀完這部分,我感覺自己對“軟件”和“硬件”之間的橋梁有瞭全新的認識,不再是簡單地輸入指令,等待輸齣,而是真正理解瞭“它”是如何思考和運作的。

相关图书

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 tushu.tinynews.org All Rights Reserved. 求知書站 版权所有