How to program a computer:
Create model for programmable digital computer
Specify programming interface for each computer
Specify a generic programming language that works for all computers (software)
Design digital computers that match specific/general interface (hardware)
Design software engineering techniques to simplify and optimise coding (software stack)
A platform (simplified) is a set of technologies common to many applications. ISA: list of instructions a computer can perform, grouped by type
Von Neumann Architecture — memory connects to CPU. CPU receives input and sends output.
CPU contains registers, arithmetic and logic unit, control unit.
How to compare ISA:
Memory structure: