PART 1 Introduction. 1. Layers of Abstraction 2. Turing Machine 3. Layer Transformation 4. Descriptions of Layers. Application Program. Algorithms. Language. Instruction Set Architecture (and I/O Interfaces). Microarchitecture. Circuits. Devices. Computer System: Layers of Abstraction.
1. Layers of Abstraction
2. Turing Machine
3. Layer Transformation
4. Descriptions of Layers
All computers, given enough time and memory,are capable of computing exactly the same things.
Turing machine that multiplies
Turing machine that addsTuring Machine
Mathematical model of a device that can performany computation – Alan Turing (1937)
Every computation can be performed by some Turing machine. (Turing’s thesis)
For more info about Turing machines, see
Universal Turing MachineUniversal Turing Machine
Turing described a Turing machine that could implementall other Turing machines.
In theory, computer can compute anything
that’s possible to compute
In practice, solving problems involves computing under constraints.
How do we solve a problem using a computer?A systematic sequence of transformations between layers of abstraction.
choose algorithms and data structures
use language to express design
convert language to machine instructions
choose structures to implement ISA
gates and low-level circuits toimplement components
Process Engineering & Fabrication:
develop and manufacturelowest-level components
Instruction Set Architecture (ISA)