EmbeddedRelated.com
Books
The 2026 Embedded Online Conference

Computer Organization and Architecture (9th Edition) (William Stallings Books on Computer and Data Communications)

Stallings, William 2012

For undergraduates and professionals in computer science, computer engineering, and electrical engineering courses.¿

Learn the fundamentals of processor and computer design from the newest edition of this award-winning text.

Four-time winner of the best Computer Science and Engineering textbook of the year award from the Textbook and Academic Authors Association, Computer Organization and Architecture: Designing for Performance provides a thorough discussion of the fundamentals of computer organization and architecture, covering not just processor design, but memory, I/O, and parallel systems.Coverage is supported by a wealth of concrete examples emphasizing modern systems.


Why Read This Book

You will get a rigorous, example-driven grounding in how processors, memory systems, I/O, and parallel hardware actually work so you can reason about performance and the hardware–software interface in embedded and systems projects. The book emphasizes concrete design trade-offs and measurable performance metrics, giving you the vocabulary and analysis techniques to make better firmware, RTOS, and architecture decisions.

Who Will Benefit

Undergraduate or professional engineers (embedded, firmware, systems) who need a solid, engineering-focused foundation in processor and system design to build or optimize real hardware–software systems.

Level: Intermediate — Prerequisites: Basic programming experience (C or similar), familiarity with binary/hex and simple digital logic; some exposure to assembly language is helpful but not required.

Get This Book

Key Takeaways

  • Analyze instruction set architecture trade-offs and map high-level constructs to machine operations.
  • Design and evaluate processor datapaths and control logic, including basic microarchitecture decisions.
  • Apply pipelining concepts and hazard mitigation techniques to improve instruction throughput.
  • Evaluate and design memory hierarchies, including cache organization, performance, and virtual memory implications.
  • Explain I/O subsystems and storage interfaces and how they affect system performance and reliability.
  • Assess parallel architectures (multicore, SMP) and use performance metrics (Amdahl’s Law, CPI) to guide optimization.

Topics Covered

  1. Introduction and Evolution of Computer Systems
  2. Data Representation and Boolean Logic Review
  3. Machine-Level Representation of Programs / Instruction Sets
  4. Arithmetic and Logic Unit Design
  5. Processor Structure and Function / Datapath and Control
  6. Instruction Set Design and Addressing Modes
  7. Pipelining: Principles, Hazards, and Performance
  8. Instruction-Level Parallelism and Advanced Pipelines
  9. Memory Hierarchy: Caches and Main Memory
  10. Virtual Memory and Memory Management
  11. I/O Systems and Secondary Storage
  12. Multiprocessors, Multicores, and Parallel Architectures
  13. Performance Measurement, Benchmarking, and System Design

Languages, Platforms & Tools

Assembly (MIPS, x86 examples/pseudocode)Pseudocode and machine-level representationsMIPSx86Conceptual applicability to ARM and RISC-V architectures (principles-focused rather than platform-specific)Architectural simulators and MIPS simulators (conceptual use)Performance analysis techniques and modeling tools (no specific IDE required)

How It Compares

Similar to Patterson & Hennessy's Computer Organization and Design in focusing on processor and memory design, but Stallings is broader in system topics and emphasizes architectural principles and performance analysis compared with Tanenbaum's more pedagogical, layered approach.

Related Books

Bryant, Randal, O'Hallaron,...
The 2026 Embedded Online Conference