
- 541 pages
- English
- ePUB (mobile friendly)
- Available on iOS & Android
Essentials of Computer Architecture
About this book
This easy-to-read textbook provides an introduction to computer architecture, focusing on the essential aspects of hardware that programmers need to know. Written from a programmer's point of view, Essentials of Computer Architecture, Third Edition, covers the three key aspects of architecture: processors, physical and virtual memories, and input-output (I/O) systems.
This third edition is updated in view of advances in the field. Most students only have experience with high-level programming languages, and almost no experience tinkering with electronics and hardware. As such, this text is revised to follow a top-down approach, moving from discussions on how a compiler transforms a source program into binary code and data, to explanations of how a computer represents data and code in binary.
Additional chapters cover parallelism and data pipelining, assessing the performance of computer systems, and the important topic of power and energy consumption. Exclusive to this third edition, a new chapter explains multicore processors and how coherence hardware provides a consistent view of the values in memory even though each core has its own cache.
Suitable for a one-semester undergraduate course, this clear, concise, and easy-to-read textbook offers an ideal introduction to computer architecture for students studying computer programming.
Frequently asked questions
- Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
- Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Information
Table of contents
- Cover Page
- Half-Title Page
- Title Page
- Copyright Page
- Dedication Page
- Contents
- Preface
- About The Author
- Chapter 1 Introduction And Overview
- Chapter 2 Program Interpretation And Transformation
- Chapter 3 Data And Program Representation
- Chapter 4 A High-Level Overview Of Processors
- Chapter 5 Instruction Sets And Operands
- Chapter 6 Operand Addressing And Operand Types
- Chapter 7 Assembly Languages And Programming Paradigm
- Chapter 8 Main Memory And Memory Addressing
- Chapter 9 Virtual Memory Technologies And Virtual Addressing
- Chapter 10 Caches And Caching
- Chapter 11 Storage: File Systems, Blocks, And SSDs
- Chapter 12 A Programmerʼs View Of Devices, I/O, And Buffering
- Chapter 13 Buses And Bus Architectures
- Chapter 14 Programming Devices And Interrupt-Driven I/O
- Chapter 15 Data Paths And Instruction Execution
- Chapter 16 CPUs: Microcode, Protection, And Processor Modes
- Chapter 17 Parallelism
- Chapter 18 Data Pipelining
- Chapter 19 Assessing Performance
- Chapter 20 Multicore Processors
- Chapter 21 Power And Energy
- Chapter 22 Building Blocks: Transistors, Gates, And Clocks
- Chapter 23 Hardware Modularity
- Appendix 1 Rules For Boolean Algebra Simplification
- Appendix 2 A Quick Introduction To x86 Assembly Language
- Appendix 3 ARM Register Definitions And Calling Sequence
- Appendix 4 Lab Exercises For A Computer Architecture Course
- Index