- ISA (Programmer’s View): Specifies whether the programmer perceives a sequential (control-flow) or dataflow execution model.
- Microarchitecture (Implementation): Determines how instructions are actually executed. A microarchitecture can implement a Von Neumann ISA using dataflow principles internally, executing instructions out of order as long as the architectural semantics (programmer-visible behavior) are preserved.
9.1 ISA

- big endian vs small endian
9.2 uarch

9.3 ISA vs. uarch
The compiler does not need to know about the microarchitecture to compile a program.
9.3 RISC vs. CISC
RISC (Reduced instruction set computer): small, simple and regular instruction set → make each instruction simple and fast.
- MIPS
- ARM
- RISC-V
→ mobile, more power friendly
CISC (Complex Instruction Set Computer): large complex instruction sets → make each instruction do more work
- x86-64