Principles of Computer Architecture

Only available on StudyMode
  • Download(s) : 18
  • Published : December 8, 2012
Open Document
Text Preview
PRINCIPLES OF COMPUTER ARCHITECTURE
CLASS TEST EDITION – AUGUST 1999

Miles J. Murdocca Department of Computer Science Rutgers University New Brunswick, NJ 08903 (USA) murdocca@cs.rutgers.edu http://www.cs.rutgers.edu/~murdocca/

Vincent P. Heuring Department of Electrical and Computer Engineering University of Colorado Boulder, CO 80309-0425 (USA) heuring@colorado.edu http://ece-www.colorado.edu/faculty/heuring.html

Copyright © 1999 Prentice Hall

For Ellen, Alexandra, and Nicole and For Gretchen

PREFACE

iii

PREFACE

About the Book
Our goal in writing this book is to expose the inner workings of the modern digital computer at a level that demystifies what goes on inside the machine. The only prerequisite to Principles of Computer Architecture is a working knowledge of a high-level programming language. The breadth of material has been chosen to cover topics normally found in a first course in computer architecture or computer organization. The breadth and depth of coverage have been steered to also place the beginning student on a solid track for continuing studies in computer related disciplines. In creating a computer architecture textbook, the technical issues fall into place fairly naturally, and it is the organizational issues that bring important features to fruition. Some of the features that received the greatest attention in Principles of Computer Architecture include the choice of the instruction set architecture (ISA), the use of case studies, and a voluminous use of examples and exercises. THE INSTRUCTIONAL ISA A textbook that covers assembly language programming needs to deal with the issue of which instruction set architecture (ISA) to use: a model architecture, or one of the many commercial architectures. The choice impacts the instructor, who may want an ISA that matches a local platform used for student assembly language programming assignments. To complicate matters, the local platform may change from semester to semester: yesterday the MIPS, today the Pentium, tomorrow the SPARC. The authors opted for having it both ways by adopting a SPARC-subset for an instructional ISA, called “A RISC Computer” (ARC), which is carried through the mainstream of the

iv

PREFACE

book, and complementing it with platform-independent software tools that simulate the ARC ISA as well as the MIPS and x86 (Pentium) ISAs. CASE STUDIES, EXAMPLES, AND EXERCISES Every chapter contains at least one case study as a means for introducing the student to “real world” examples of the topic being covered. This places the topic in perspective, and in the authors’ opinion, lends an air of reality and interest to the material. We incorporated as many examples and exercises as we practically could, covering the most significant points in the text. Additional examples and solutions are available on-line, at the companion Web site (see below.)

Coverage of Topics
Our presentation views a computer as an integrated system. If we were to choose a subtitle for the book, it might be “An Integrated Approach,” which reflects high level threads that tie the material together. Each topic is covered in the context of the entire machine of which it is a part, and with a perspective as to how the implementation affects behavior. For example, the finite precision of binary numbers is brought to bear in observing how many 1’s can be added to a floating point number before the error in the representation exceeds 1. (This is one reason why floating point numbers should be avoided as loop control variables.) As another example, subroutine linkage is covered with the expectation that the reader may someday be faced with writing C or Java programs that make calls to routines in other high level languages, such as Fortran. As yet another example of the integrated approach, error detection and correction are covered in the context of mass storage and transmission, with the expectation that the reader may tackle networking applications...
tracking img