Term Definitions

  • Instruction: a single operation a processor can perform
  • Instruction Set
  • Architecture: An abstract specification of a computer’s hardware—an interface—in order to be able to write software for it. (a contract between HW and SW to interact)
  • Micro-architecture: the actual implementation of the architecture design
  • Computer: machine that follows simple instructions deterministically

technology of the time, programming language design, operating system design, the applications to write, and the history of the architecture design.

Screen Shot 2022-08-30 at 13.17.03.png

OSes and languages may also be influenced by the design of the architecture


The Five Component of a Computer are: Processor(CPU) / Control / Datapath / Memory / IO.

Moore’s Law determines the trend of


C Programming Language

Unix invented by: Ken Thompson

C language by: Dennis Ritche

(Think of it as: Newton, to create a new branch of science—physics—, invented calculus to make it possible.)

The contraints of technology of the time shaped the design of C.

Limitations of: compiler size / code size / performance / portability

→ became a portable assembly language

Didn’t consider: security / robustness / maintainability / legacy code