Part 1 — Chapter 1.1

Chapter 1: Introduction to Computer Architecture

What is Computer Architecture?

Computer architecture is the conceptual framework and operational structure that defines how a computer's hardware executes software instructions, serving as the functional bridge between programming languages and physical silicon. It is systematically divided into three interdependent layers: Instruction Set Architecture (ISA), the abstract boundary defining the processor's native machine language, register sets, and addressing modes; Microarchitecture (Computer Organization), the lower-level physical implementation of the ISA detailing the execution pipelines, cache hierarchies, and functional units; and System Design, which governs the broader hardware infrastructure, including memory controllers, bus architectures, and multiprocessing configurations. Together, these components determine a system's throughput, energy efficiency, and cost by optimizing how efficiently binary code is translated into electronic operations.

The Hardware-Software Connection

To visualize how this operational structure works in practice, think of the connection as a basic three-layer stack:

Software Layer apps, games, and code written in human words compiled/assembled into machine code The Bridge (ISA) the standard dictionary of binary 1s and 0s triggers electrical signals Hardware Layer the physical cpu circuits, caches, and silicon
  • Software (The Top Layer): This is where human-readable code lives. Because physical computer chips cannot understand human language, software tools (compilers) translate this high-level code down into raw machine language.
  • The ISA Bridge (The Middle Layer): This is the interface standard. It is the master dictionary of 1s and 0s (binary code) that the hardware is explicitly built to recognize. It ensures that the software knows exactly what instructions the hardware can execute.
  • Hardware (The Bottom Layer): The microarchitecture of the CPU receives these 1s and 0s as electrical signals. A 1 represents a high-voltage signal that activates microscopic switches (transistors), and a 0 represents a low-voltage signal. By routing these electrical currents through billions of switches at lightning speed, the physical silicon executes the software's instructions.
Next Page: Code to Silicon →