- The time required to execute a program depends on:
- The program
- The compiler
- The instruction set architecture(ISA)
- The hardware implementation
The ISA defines:
- The system’s state(e.g. registers, memory, program counter)
- The instrutions the CPU can execute.
- The effect that each of these instructions will have on the system state.
Complex Instruction Set Computer(CISC) Reduced Instruction Set Computers(RISC)
Architecture: (also instruction set architecture or ISA) The parts of a processor design that one needs to understand to write assembly code.
Microarchitecture: Implementation of the architecture.
EIP: Extended Instruction Pointer(IA32) Three Basic Kinds of Instructions
- Performe arthmetic function on register or memory data
- Transfer data between memory and register
- Load data from memory into register
- Store register data into memory
- Transfer control
- Unconditional jumps to/from procedures
- Conditional branches
What is A Register?
- A location in the CPU that stores a small amount of data, which can be accessed very quickly(once every clock cycle).
- Registers are at the heart of assembly programming