內容簡介
本書作者認為,理解計算機工作原理的最好方法就是親自動手,從零開始構建計算機系統。
通過12個章節和項目來引領讀者從頭開始,本書逐步地構建一個基本的硬體平台和現代軟體階層體系。在這個過程中,讀者能夠獲得關於硬體體系結構、作業系統、程式語言、編譯器、數據結構、算法以及軟體工程的詳實知識。通過這種逐步構造的方法,本書揭示了計算機科學知識中的重要成分,並展示其它課程中所介紹的理論和套用技術如何融入這幅全局大圖景當中去。全書基於“先抽象再實現”的闡述模式,每一章都介紹一個關鍵的硬體或軟體抽象,一種實現方式以及一個實際的項目。完成這些項目所必要的計算機科學知識在本書中都有涵蓋,只要求讀者具備程式設計經驗。本書配套的支持網站提供了書中描述的用於構建所有硬體和軟體系統所必需的工具和資料,以及用於12個項目的200個測試程式。
編輯推薦
《計算機系統要素:從零開始構建現代計算機》通過展現簡單但功能強大的計算機系統之構建過程,為讀者呈現了一幅完整、嚴格的計算機套用科學大圖景。《計算機系統要素:從零開始構建現代計算機》作者認為,理解計算機工作原理的最好方法就是親自動手,從零開始構建計算機系統。
目錄
前言介紹:Hello, World Below
第1章 布爾邏輯
1.1 背景知識
1.1.1 布爾代數
1.1.2 門邏輯
1.1.3 實際硬體結構
1.1.4 硬體描述語言(HDL)
1.1.5 硬體仿真
1.2 規範詳述
1.2.1 Nand門
1.2.2 基本邏輯門
1.2.3 多位基本門
1.2.4 多通道邏輯門
1.3 實現
1.4 觀點
1.5 項目
第2章 布爾運算
2.1 背景知識
2.2 規範詳述
2.2.1 加法器
2.2.2 算術邏輯單元(ALU)
2.3 實現
2.4 觀點
2.5 項目
第3章 時序邏輯
3.1 背景知識
3.2 規範詳述
3.2.1 D觸發器
3.2.2 暫存器
3.2.3 存儲
3.2.4 計數器
3.3 實現
3.4 觀點
3.5 項目
第4章 機器語言
4.1 背景知識
4.1.1 機器
4.1.2 語言
4.1.3 命令
4.2 Hack機器語言規範詳述
4.2.1 概述
4.2.2 A-指令
4.2.3 C-指令
4.2.4 符號
4.2.5 輸入/輸出處理
4.2.6 語法規約和檔案格式
4.3 觀點
4.4 項目
第5章 計算機體系結構
5.1 背景知識
5.1.1 存儲程式概念
5.1.2 馮?諾依曼結構
5.1.3 記憶體
5.1.4 中央處理器
5.1.5 暫存器
5.1.6 輸入和輸出
5.2 Hack硬體平台規範詳述
5.2.1 概述
5.2.2 中央處理器(CPU)
5.2.3 指令記憶體
5.2.4 數據記憶體
5.2.5 計算機
5.3 實現
5.3.1 中央處理器
5.3.2 記憶體
5.3.3 計算機
5.4 觀點
5.5 項目
第6章 彙編編譯器
第7章 虛擬機Ⅰ:堆疊運算
第8章 虛擬機Ⅱ:程式控制
第9章 高級語言
第10章 編譯器Ⅰ:語法分析
第11章 編譯器Ⅱ:代碼生成
第12章 作業系統
第13章 後記:發掘更多樂趣
附錄A: 硬體描述語言(HDL)
附錄B: 測試腳本語言
索引
盤點計算機書籍
從計算機的類型、工作方式、構成器件、操作原理、套用環境等劃分,計算機有多種分類。計算機(Computer)是一種能夠按照事先存儲的程式,自動、高速地進行大量數值計算和各種信息處理的現代化智慧型電子設備。 |