資料介紹
本書從計算機的內(nèi)部結(jié)構(gòu)開始講起,以圖配文的形式詳細講解了二進制、內(nèi)存、數(shù)據(jù)壓縮、源文件和可執(zhí)行文件、操作系統(tǒng)和應(yīng)用程序的關(guān)系、匯編語言、硬件控制方法等內(nèi)容,目的是讓讀者了解從用戶雙擊程序圖標到程序開始運行之間到底發(fā)生了什么。同時專設(shè)了“如果是你,你會怎樣介紹?”專欄,以小學(xué)生、老奶奶為對象講解程序的運行原理,頗為有趣。本書圖文并茂,通俗易懂,非常適合計算機愛好者及相關(guān)從業(yè)人員閱讀。
目錄
1.1 CPU的內(nèi)部結(jié)構(gòu)解析
1.2 CPU是寄存器的集合體
1.3 決定程序流程的程序計數(shù)器
1.4 條件分支和循環(huán)機制
1.5 函數(shù)的調(diào)用機制
1.6 通過地址和索引實現(xiàn)數(shù)組
1.7 CPU的處理其實很簡單
第2章 數(shù)據(jù)是用二進制數(shù)表示的
2.1 用二進制數(shù)表示計算機信息的原因
2.2 什么是二進制數(shù)
2.3 移位運算和乘除運算的關(guān)系
2.4 便于計算機處理的“補數(shù)”
2.5 邏輯右移和算術(shù)右移的區(qū)別
2.6 掌握邏輯運算的竅門
COLUMN 如果是你,你會怎樣介紹?——向小學(xué)生講解CPU和二進制
第3章 計算機進行小數(shù)運算時出錯的原因
3.1 將0.1累加100次也得不到10
3.2 用二進制數(shù)表示小數(shù)
3.3 計算機運算出錯的原因
3.4 什么是浮點數(shù)
3.5 正則表達式和 EXCESS系統(tǒng)
3.6 在實際的程序中進行確認
3.7 如何避免計算機計算出錯
3.8 二進制數(shù)和十六進制數(shù)
第4章 熟練使用有棱有角的內(nèi)存
4.1 內(nèi)存的物理機制很簡單
4.2 內(nèi)存的邏輯模型是樓房
4.3 簡單的指針
4.4 數(shù)組是高效使用內(nèi)存的基礎(chǔ)
4.5 棧、隊列以及環(huán)形緩沖區(qū)
4.6 鏈表使元素的追加和刪除更容易
4.7 二叉查找樹使數(shù)據(jù)搜索更有效
第5章 內(nèi)存和磁盤的親密關(guān)系
5.1 不讀入內(nèi)存就無法運行
5.2 磁盤緩存加快了磁盤訪問速度
5.3 虛擬內(nèi)存把磁盤作為部分內(nèi)存來使用
5.4 節(jié)約內(nèi)存的編程方法
5.5 磁盤的物理結(jié)構(gòu)
第6章 親自嘗試壓縮數(shù)據(jù)
6.1 文件以字節(jié)為單位保存
6.2 RLE 算法的機制
6.3 RLE 算法的缺點
6.4 通過莫爾斯編碼來看哈夫曼算法的基礎(chǔ)
6.5 用二叉樹實現(xiàn)哈夫曼編碼
6.6 哈夫曼算法能夠大幅提升壓縮比率
6.7 可逆壓縮和非可逆壓縮
COLUMN 如果是你,你會怎樣介紹?——向沉迷游戲的中學(xué)生講解內(nèi)存和磁盤
第7章 程序是在何種環(huán)境中運行的 117
7.1 運行環(huán)境=操作系統(tǒng)+硬件 119
7.2 Windows克服了CPU以外的硬件差異 122
7.3 不同操作系統(tǒng)的API不同 124
7.4 FreeBSD Port幫你輕松使用源代碼 125
7.5 利用虛擬機獲得其他操作系統(tǒng)環(huán)境 127
7.6 提供相同運行環(huán)境的 Java虛擬機 128
7.7 BIOS和引導(dǎo) 130
第8章 從源文件到可執(zhí)行文件 133
8.1 計算機只能運行本地代碼 135
8.2 本地代碼的內(nèi)容 137
8.3 編譯器負責轉(zhuǎn)換源代碼 139
8.4 僅靠編譯是無法得到可執(zhí)行文件的 141
8.5 啟動及庫文件 143
8.6 DLL文件及導(dǎo)入庫 145
8.7 可執(zhí)行文件運行時的必要條件 146
8.8 程序加載時會生成棧和堆 148
8.9 有點難度的Q&A 150
第9章 操作系統(tǒng)和應(yīng)用的關(guān)系 153
9.1 操作系統(tǒng)功能的歷史 155
9.2 要意識到操作系統(tǒng)的存在 157
9.3 系統(tǒng)調(diào)用和高級編程語言的移植性 160
9.4 操作系統(tǒng)和高級編程語言使硬件抽象化 161
9.5 Windows操作系統(tǒng)的特征 163
COLUMN 如果是你,你會怎樣介紹?——向超喜歡手機的女高中生講解操作系統(tǒng)的作用 170
第10章 通過匯編語言了解程序的實際構(gòu)成 173
10.1 匯編語言和本地代碼是一一對應(yīng)的 175
10.2 通過編譯器輸出匯編語言的源代碼 177
10.3 不會轉(zhuǎn)換成本地代碼的偽指令 180
10.4 匯編語言語法是“操作碼+操作數(shù)” 182
10.5 最常用的mov指令 185
10.6 對棧進行push和pop 185
10.7 函數(shù)調(diào)用機制 187
10.8 函數(shù)內(nèi)部的處理 189
10.9 始終確保全局變量用的內(nèi)存空間 191
10.10 臨時確保局部變量用的內(nèi)存空間 196
10.11 循環(huán)處理的實現(xiàn)方法 199
10.12 條件分支的實現(xiàn)方法 202
10.13 了解程序運行方式的必要性 204
第11章 硬件控制方法 209
11.1 應(yīng)用和硬件無關(guān)? 211
11.2 支撐硬件輸入輸出的IN指令和OUT指令 212
11.3 編寫測試用的輸入輸出程序 215
11.4 外圍設(shè)備的中斷請求 218
11.5 用中斷來實現(xiàn)實時處理 221
11.6 DMA可以實現(xiàn)短時間內(nèi)傳送大量數(shù)據(jù) 222
11.7 文字及圖片的顯示機制 224
COLUMN 如果是你,你會怎樣介紹?——向鄰居老奶奶說明顯示器和電視機的不同 226
第12章 讓計算機“思考” 229
12.1 作為“工具”的程序和為了“思考”的程序 231
12.2 用程序來表示人類的思考方式 232
12.3 用程序來表示人類的思考習(xí)慣 235
12.4 程序生成隨機數(shù)的方法 237
12.5 活用記憶功能以達到更接近人類的判斷 239
12.6 用程序來表示人類的思考方式 242
COLUMN 如果是你,你會怎樣介紹?——向常光臨的酒館老板講解計算機的思考機制 245
附錄 讓我們開始C語言之旅 247
C語言的特點 247
變量和函數(shù) 248
數(shù)據(jù)類型 249
標準函數(shù)庫 250
函數(shù)調(diào)用 251
局部變量和全局變量 254
數(shù)組和循環(huán) 255
其他語法結(jié)構(gòu) 256
- 圖解數(shù)字磁帶錄音機的PDF電子書免費下載 109次下載
- 現(xiàn)代無線電實驗的PDF電子書免費下載 285次下載
- 半導(dǎo)體收音機淺談的PDF電子書免費下載 171次下載
- 光學(xué)諧振腔的圖解分析與設(shè)計方法的PDF電子書免費下載 132次下載
- MATLAB函數(shù)速查手冊PDF電子書免費下載 150次下載
- 電子管數(shù)據(jù)手冊合集PDF電子書免費下載 82次下載
- 袁易全超聲波換能器的PDF電子書免費下載 281次下載
- 高級語言程序設(shè)計從菜鳥到大師深入C語言程序設(shè)計PDF電子書免費下載 181次下載
- 手把手教你單片機程序框架的PDF電子書免費下載 286次下載
- 8051系列單片機C程序設(shè)計完全手冊PDF電子書免費下載 285次下載
- 51單片機C語言程序100例電子書免費下載 987次下載
- 全國大學(xué)生電子設(shè)計競賽的常用電路模塊制作PDF電子書免費下載 0次下載
- 電冰箱快速維修PDF電子書免費下載 51次下載
- 家電維修1128例PDF電子書免費下載 207次下載
- 數(shù)字信號處理算法C語言實現(xiàn)PDF版電子書免費下載 0次下載
- 如何離線運行pulp代碼? 470次閱讀
- 電子書閱讀器內(nèi)置鋰電池供電自動切換電路 2022次閱讀
- 智能車淺談—手把手讓車跑起來(電磁篇) 3001次閱讀
- 你寫的代碼是如何跑起來的? 906次閱讀
- RISC-V SIG成功將Chromium等桌面軟件適配到openEuler RISC-V 2268次閱讀
- windows安裝ubuntu并讓pioneer1應(yīng)用程序跑起來的過程 2390次閱讀
- 單片機的燒寫方法總結(jié) 1w次閱讀
- 電子產(chǎn)品和設(shè)備中的EMC測試分析 3661次閱讀
- Zynq 7015 linux跑起來之構(gòu)建ARM核 3425次閱讀
- Zynq 7015 linux跑起來之導(dǎo)入SDK生成FSBL步驟教程 6223次閱讀
- Zynq 7015 linux跑起來之導(dǎo)入之BOOT.bin生成詳解 7529次閱讀
- Zynq 7015 linux跑起來之SD分區(qū)并放入對應(yīng)的文件介紹 7478次閱讀
- GPF芯片的單片機編程開發(fā)技巧案例詳細說明 3555次閱讀
- KEIL MDK簡介,如何安裝KEIL MDK下載程序 2.7w次閱讀
- 最新電子書拆解評測系列報道(一):打開你的眼界 1.2w次閱讀
下載排行
本周
- 1DC電源插座圖紙
- 0.67 MB | 2次下載 | 免費
- 2AN158 GD32VW553 Wi-Fi開發(fā)指南
- 1.51MB | 2次下載 | 免費
- 3AN148 GD32VW553射頻硬件開發(fā)指南
- 2.07MB | 1次下載 | 免費
- 4AN111-LTC3219用戶指南
- 84.32KB | 次下載 | 免費
- 5AN153-用于電源系統(tǒng)管理的Linduino
- 1.38MB | 次下載 | 免費
- 6AN-283: Σ-Δ型ADC和DAC[中文版]
- 677.86KB | 次下載 | 免費
- 7SM2018E 支持可控硅調(diào)光線性恒流控制芯片
- 402.24 KB | 次下載 | 免費
- 8AN-1308: 電流檢測放大器共模階躍響應(yīng)
- 545.42KB | 次下載 | 免費
本月
- 1ADI高性能電源管理解決方案
- 2.43 MB | 450次下載 | 免費
- 2免費開源CC3D飛控資料(電路圖&PCB源文件、BOM、
- 5.67 MB | 138次下載 | 1 積分
- 3基于STM32單片機智能手環(huán)心率計步器體溫顯示設(shè)計
- 0.10 MB | 130次下載 | 免費
- 4使用單片機實現(xiàn)七人表決器的程序和仿真資料免費下載
- 2.96 MB | 44次下載 | 免費
- 53314A函數(shù)發(fā)生器維修手冊
- 16.30 MB | 31次下載 | 免費
- 6美的電磁爐維修手冊大全
- 1.56 MB | 24次下載 | 5 積分
- 7如何正確測試電源的紋波
- 0.36 MB | 17次下載 | 免費
- 8感應(yīng)筆電路圖
- 0.06 MB | 10次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935121次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420062次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191367次下載 | 10 積分
- 5十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73810次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論
查看更多