與Donald E. Knuth齊名的美國(guó)計(jì)算機(jī)界泰斗級(jí)作者Yale N. Patt。伊利諾伊大學(xué)(UIUC)等眾多名校計(jì)算機(jī)的經(jīng)典基礎(chǔ)教材。本書的目的是讓學(xué)生在一進(jìn)入大學(xué)校門的時(shí)候,就對(duì)計(jì)算機(jī)科學(xué)有一個(gè)深入理解,為以后的課程打下堅(jiān)實(shí)的基礎(chǔ)。本書包括兩方面的內(nèi)容:計(jì)算機(jī)底層結(jié)構(gòu);高級(jí)語(yǔ)言編程及編程方法學(xué)。書中闡述了LC-3體系結(jié)構(gòu)的設(shè)計(jì),并配套開發(fā)了LC-3模擬器供學(xué)生使用。為加深學(xué)生對(duì)編程及其方法學(xué)的理解,本書選用了C語(yǔ)言來(lái)進(jìn)行講解。本書采用了"驅(qū)動(dòng)式"的自底向上方法,即先給學(xué)生一個(gè)整體結(jié)構(gòu),然后自底向上地建立起相關(guān)的知識(shí)。同樣,在每個(gè)子單元中,也采用相同的驅(qū)動(dòng)式教學(xué)方法。在每個(gè)學(xué)習(xí)階段,都基于之前已學(xué)的知識(shí)介紹新的概念。經(jīng)驗(yàn)告訴我們,這種學(xué)習(xí)方法更多地強(qiáng)調(diào)理解而不是記憶。通過(guò)本書的學(xué)習(xí),學(xué)生的理解能力將獲得很大的提高,因?yàn)樗麄冄驖u進(jìn)地了解了構(gòu)建計(jì)算機(jī)的全部過(guò)程。本書特色●自底向上的組織:從最底層的MOS晶體管開關(guān)器件開始,然后是邏輯門、鎖存器、邏輯結(jié)構(gòu) (開關(guān)MUX、譯碼器、全加器、門鎖存器等) ,最后使用這些單元來(lái)實(shí)現(xiàn)內(nèi)存。之后,轉(zhuǎn)至有限狀態(tài)機(jī)控制、順序電路的實(shí)現(xiàn)、馮·諾伊曼體系結(jié)構(gòu)、一個(gè)簡(jiǎn)單的計(jì)算機(jī) (LC-3),以及LC-3的機(jī)器和匯編語(yǔ)言、C高級(jí)語(yǔ)言、遞歸等,最后是基本數(shù)據(jù)結(jié)構(gòu)?!裾{(diào)試技術(shù):從寫第一個(gè)程序開始,學(xué)生就被要求采用LC-3的調(diào)試工具和相關(guān)的調(diào)試技術(shù)。正因?yàn)槿绱?,他們?duì)編程藝術(shù)的體會(huì)更加深刻。●LC-3模擬器:本書學(xué)習(xí)中的一個(gè)重要過(guò)程是親自操作LC-3模擬器,這是一個(gè)專門為學(xué)生掌握主要計(jì)算機(jī)概念而設(shè)計(jì)的工具。學(xué)生可以從本書網(wǎng)站免費(fèi)下載LC-3模擬器?!窬幊谭椒▽W(xué):本書給出了很多例程,其意義在于教會(huì)學(xué)生怎樣分析問(wèn)題,并通過(guò)系統(tǒng)的問(wèn)題分解轉(zhuǎn)換為計(jì)算機(jī)可編程的子問(wèn)題。不論是使用LC-3匯編或C高級(jí)語(yǔ)言,編程思路上都存在相似性。這方面的理解和方法對(duì)快速掌握其他語(yǔ)言都有幫助。
Preface Preface to the First Edition 1 Eelcom Aborad 1.1 What We Will Try to Do 1.2 How We Will get There 1.3 Two Recurring Themes 1.4 A Computer System 1.5 Two Very Important Ideas 1.6 Computers as Universal Computational Devices 1.7 How Do We Get the Electrons to Do the Work? Exercises 2 Bits, Data Types, and Operations 2.1 Bits and Data Types 2.2 Integer Data Types 2.3 2's Complement Integers 2.4 Binary-Decimal Conversion 2.5 Operations on Bit-PartⅠ: Arithmetic 2.6 Operations on Bit-PartⅡ: Logical Operations 2.7 Other Representations Exerises 3 Digital Logic Structures 3.1 The Transistor 3.2 Logic Gates 3.3 Combinational Logic Circuits 3.4 Basic Storage Elements …… 4 The von Neumann Model 5 The LC-3 6 Programming 7 Assembly Laguage 8 I/O 9 TRAP Routines and Subroutines 10 And, Finally...The Stack 11 Introducion to Programming in C 12 Variables and Operators 13 Control Structures 14 Functions 15 Testing and Debugging 16 Pointers and Arrays 17 Recursion 18 I/O in C 19 Data Structures A The LC-3 ISA B From LC-3 to x86 C The Microarchitecture of the LC-3 D The C Programming Language E Useful Tables F Solutions to Selected Exercises