TOP
瀏覽紀錄
【反詐騙】接到不明來電說:升等為「高級會員」「購物滿意度調查」,這是詐騙!請絕對「不要依照指示操作ATM或網銀」
1/1
庫存:1
人民幣定價:59.8元
定  價:NT$359元
優惠價: 79284
可得紅利積點:8 點

庫存:1

商品簡介

作者簡介

名人/編輯推薦

目次

本書從電腦的內部結構開始講起,以圖配文的形式詳細講解了二進位、記憶體、資料壓縮、原始檔案和可執行檔、作業系統和應用程式的關係、組合語言、硬體控制方法等內容,目的是讓讀者瞭解從使用者按兩下程式圖示到程式開始運行之間到底發生了什麼。同時專設了“如果是你,你會怎樣介紹?”專欄,以小學生、老奶奶為物件講解程式的運行原理,頗為有趣。
  本書圖文並茂,通俗易懂,非常適合電腦愛好者及相關從業人員閱讀。

矢澤久雄(作者)
YAZAWA股份有限公司董事長兼總經理。GrapeCity信息技術集團顧問。電腦作家之友會會長。
曾在某大型電子公司從事過電腦生產,在Software House做過程序員,現主要從事軟件包的開發工作。工作之餘筆耕不綴,從電路到編程語言均有涉及。代表作有《計算機是怎樣跑起來的》《使用C語言學習程序設計的基礎》《征服C++類和繼承》等。自稱軟件藝人。

李逢俊(譯者)
北京易網聯信信息技術有限公司CEO。
哈爾濱工業大學碩士畢業後在日工作8年,曾在日本知名遊戲公司擔任移動互聯網部門負責人,擁有豐富的移動遊戲開發及運營經驗。2011年回國創業,創建易網聯信團隊,致力於精品手機遊戲的開發及運營。

日文版重印41次!
“計算機組成原理”圖解趣味版
蹲馬桶就能看懂的編程基礎知識

本書適合
1.菜鳥程序員入門進階
2.中級程序員查漏補缺
3.高手程序員向家人(女友、老媽等)普及計算機知識

如何向小學生講解CPU和二進制?
如何向中學生講解內存和磁盤?
如何向女高中生講解操作系統的原理?
如何向老奶奶說明顯示器和電視的不同?

如果你完全沒有思路,就應該讀一讀這本書。

以圖配文,深入講解編程基礎知識
語言通俗,即使是文科生也能看得懂
特設“如果是你,你會怎麼做?”專欄,生動有趣

大家還記得自己初次接觸計算機時的情形嗎?想必多數讀者使用的都是Windows系統,應該也有不少讀者使用VisualStudio和Java等集成開發環境(IDE,Integrated Development Environment,即集成了編程所需的各種工具的開發軟件)開發過程序。Windows的圖形化操作界面,大大提高了計算機操作的便利性,而利用集成開發環境開發程序,就像用繪圖軟件畫圖一樣簡單。由此可見,這是一個便利的時代。
  然而,現實卻不容樂觀,我們在享受這些方便的同時也付出了代價。雖然擁有一定的編程能力,卻無法進一步提高自身技能;知識應用能力的不足導致無法編寫源程序。越來越多的程序員正為這些問題而煩惱。個中原因在於,大家不了解程序運行的根本機制。
  “雙擊程序圖標,程序開始運行”,作為一名程序員,對程序的了解僅僅停留在這一表層是不行的。我們還應該了解更深層的機制:加載到內存中的機器語言程序,由CPU進行解析和運行,進而計算機系統整體的控制和數據運算也開始運行。了解了程序的運行機制後,就能找到編寫源程序的方法。
  本書以通俗易懂的方式來解析程序的運行機制,適合想要學習編程的讀者,迫切希望提陞技能的初級程序員,以及對計算機較為熟悉的中級用戶閱讀。為了便於說明,書中涉及了不少計算機硬件知識,不過本書的主題依然是編程,也就是軟件。
  《日經Software》雜誌上連載過名為“程序是怎樣跑起來的”的文章,而本書就是在整合以上內容的基礎上創作的。2001年10月,本書第1版出版後,受到了眾多讀者的歡迎,我們也收到了很多反饋信息。
  大部分讀者表示“了解了CPU的寄存器和內存的運行方式,也知道了自己編寫的程序的運行機制”,收穫頗豐。不過也有編程經驗較少的讀者表示“內容有點難”。
  值此第2版出版之際,我再次核對了全文,大幅增加了寄存器和棧等內容的相關說明,並作了詳細的註釋。實例程序的代碼也由原來的VisualBASIC語言,換成了更便於說明程序運行機制的C語言,並在書的末尾添加了一個輔助章節,對C語言進行了簡單的介紹。通過這樣的改動,相信即便是覺得第1版有點難的讀者,也會感到滿意。
  無論任何事情,了解其本質非常重要。只有了解了本質才能提高利用效率。這樣一來,即使有新技術出現,也能很容易地理解並掌握。接下來,就讓我們一起在本書中探索程序的奧秘,尋求程序的本質吧。
  矢沢久雄

目錄

第1章對程序員來說CPU是什麼1
1.1 CPU的內部結構解析3
1.2 CPU是寄存器的集合體6
1.3決定程序流程的程序計數器9
1.4條件分支和循環機制10
1.5函數的調用機制13
1.6通過地址和索引實現數組16
1.7 CPU的處理其實很簡單17
第2章數據是用二進制數表示的19
2.1用二進制數表示計算機信息的原因21
2.2什麼是二進制數23
2.3移位運算和乘除運算的關係25
2.4便於計算機處理的“補數” 27
2.5邏輯右移和算術右移的區別31
2.6掌握邏輯運算的竅門34
COLUMN如果是你,你會怎樣介紹?——向小學生講解CPU和二進制38
第3章計算機進行小數運算時出錯的原因41
3.1將0.1累加100次也得不到10 43
3.2用二進制數表示小數44
3.3計算機運算出錯的原因46
3.4什麼是浮點數47
3.5正則表達式和EXCESS系統50
3.6在實際的程序中進行確認52
3.7如何避免計算機計算出錯55
3.8二進制數和十六進制數56
第4章熟練使用有棱有角的內存59
4.1內存的物理機制很簡單61
4.2內存的邏輯模型是樓房65
4.3簡單的指針67
4.4數組是高效使用內存的基礎69
4.5棧、隊列以及環形緩衝區71
4.6鍊錶使元素的追加和刪除更容易75
4.7二叉查找樹使數據搜索更有效79
第5章內存和磁盤的親密關係81
5.1不讀入內存就無法運行83
5.2磁盤緩存加快了磁盤訪問速度84
5.3虛擬內存把磁盤作為部分內存來使用85
5.4節約內存的編程方法88
5.5磁盤的物理結構93
第6章親自嘗試壓縮數據97
6.1文件以字節為單位保存99
6.2 RLE算法的機制100
6.3 RLE算法的缺點101
6.4通過莫爾斯編碼來看哈夫曼算法的基礎103
6.5用二叉樹實現哈夫曼編碼105
6.6哈夫曼算法能夠大幅提升壓縮比率109
6.7可逆壓縮和非可逆壓縮110
COLUMN如果是你,你會怎樣介紹?——向沉迷遊戲的中學生講解內存和磁盤114
第7章程序是在何種環境中運行的117
7.1運行環境=操作系統+硬件119
7.2 Windows克服了CPU以外的硬件差異122
7.3不同操作系統的API不同124
7.4 FreeBSD Port幫你輕鬆使用源代碼125
7.5利用虛擬機獲得其他操作系統環境127
7.6提供相同運行環境的Java虛擬機128
7.7 BIOS和引導130
第8章從源文件到可執行文件133
8.1計算機只能運行本地代碼135
8.2本地代碼的內容137
8.3編譯器負責轉換源代碼139
8.4僅靠編譯是無法得到可執行文件的141
8.5啟動及庫文件143
8.6 DLL文件及導入庫145
8.7可執行文件運行時的必要條件146
8.8程序加載時會生成棧和堆148
8.9有點難度的Q&A 150
第9章操作系統和應用的關係153
9.1操作系統功能的歷史155
9.2要意識到操作系統的存在157
9.3系統調用和高級編程語言的移植性160
9.4操作系統和高級編程語言使硬件抽象化161
9.5 Windows操作系統的特徵163
COLUMN如果是你,你會怎樣介紹?——向超喜歡手機的女高中生講解操作系統的作用170
第10章通過彙編語言了解程序的實際構成173
10.1彙編語言和本地代碼是一一對應的175
10.2通過編譯器輸出彙編語言的源代碼177
10.3不會轉換成本地代碼的偽指令180
10.4彙編語言語法是“操作碼+操作數” 182
10.5 **常用的mov指令185
10.6對棧進行push和pop 185
10.7函數調用機制187
10.8函數內部的處理189
10.9始終確保全局變量用的內存空間191
10.10臨時確保局部變量用的內存空間196
10.11循環處理的實現方法199
10.12條件分支的實現方法202
10.13了解程序運行方式的必要性204
第11章硬件控制方法209
11.1應用和硬件無關?211
11.2支撐硬件輸入輸出的IN指令和OUT指令212
11.3編寫測試用的輸入輸出程序215
11.4外圍設備的中斷請求218
11.5用中斷來實現實時處理221
11.6 DMA可以實現短時間內傳送大量數據222
11.7文字及圖片的顯示機制224
COLUMN如果是你,你會怎樣介紹?——向鄰居老奶奶說明顯示器和電視機的不同226
第12章讓計算機“思考” 229
12.1作為“工具”的程序和為了“思考”的程序231
12.2用程序來表示人類的思考方式232
12.3用程序來表示人類的思考習慣235
12.4程序生成隨機數的方法237
12.5活用記憶功能以達到更接近人類的判斷239
12.6用程序來表示人類的思考方式242
COLUMN如果是你,你會怎樣介紹?——向常光臨的酒館老闆講解計算機的思考機制245
附錄讓我們開始C語言之旅247
C語言的特點247
變量和函數248
數據類型249
標準函數庫250
函數調用251
局部變量和全局變量254
數組和循環255
其他語法結構256

購物須知

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約20個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。