- 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