Materi Perkuliahan 9
Instruksi Komputer Pengalamatan
Addressing Modes
- Immediate
- Direct
- Indirect
- Register
- Register Indirect
- Displacement (Indexed)
- Stack
Immediate Addressing
- Operand is part of instruction
- Operand = address field
- e.g. ADD 5
- Add 5 to contents of accumulator
- 5 is operand
- No memory reference to fetch data
- Fast
- Limited range
Immediate Addressing Diagram
Instruction
Direct Addressing
- Address field contains address of operand
- Effective address (EA) = address field (A)
- e.g. ADD A
- Add contents of cell A to accumulator
- Look in memory at address A for operand
- Single memory reference to access data
- No additional calculations to work out effective address
- Limited address spac
Direct Addressing Diagram
Intruction
Indirect Addressing (1)
- Memory cell pointed to by address field contains the address of (pointer to) the operand
- EA = (A)
- Look in A, find address (A) and look there for operand
- e.g. ADD (A)
- Add contents of cell pointed to by contents of A to accumulator
- Large address space
- 2n where n = word length
- May be nested, multilevel, cascaded
- e.g. EA = (((A)))
- Draw the diagram yourself
- Multiple memory accesses to find operand
- Hence slower
Register Indirect Addressing
- C.f. indirect addressing
- EA = (R)
- Operand is in memory cell pointed to by contents of register R
- Large address space (2n)
- One fewer memory access than indirect addressing
Relative Addressing
- A version of displacement addressing
- R = Program counter, PC
- EA = A + (PC)
- i.e. get operand from A cells from current location pointed to by PC
- c.f locality of reference & cache usage
Indexed Addressing
- A = base
- R = displacement
- EA = A + R
- Good for accessing arrays
- EA = A + R
- R++
Instruction Formats
- Layout of bits in an instruction
- Includes opcode
- Includes (implicit or explicit) operand(s)
- Usually more than one instruction format in an instruction set
Instruction Length
- Affected by and affects:
- Memory size
- Memory organization
- Bus structure
- CPU complexity
- CPU speed
- Trade off between powerful instruction repertoire and saving space
Allocation of Bits
- Number of addressing modes
- Number of operands
- Register versus memory
- Number of register sets
- Address range
- Address granularity
Komentar
Posting Komentar