Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Computer Organization: Instruction Sets and Addressing Modes, Slides of Architecture

This chapter from William Stallings' Computer Organization and Architecture 7th Edition explores various addressing modes and formats used in instruction sets. Topics include immediate, direct, indirect, register, register indirect, displacement, relative, base-register, indexed, and stack addressing. Diagrams and examples are provided for each mode.

Typology: Slides

2021/2022

Uploaded on 09/12/2022

jimihendrix
jimihendrix 🇬🇧

4.3

(15)

247 documents

1 / 36

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
William Stallings
Computer Organization
and Architecture
7th Edition
Chapter 11
Instruction Sets:
Addressing Modes and Formats
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24

Partial preview of the text

Download Computer Organization: Instruction Sets and Addressing Modes and more Slides Architecture in PDF only on Docsity!

William Stallings Computer Organization and Architecture 7 th^ Edition

Chapter 11 Instruction Sets: Addressing Modes and Formats

Addressing Modes

  • Immediate
  • Direct
  • Indirect
  • Register
  • Register Indirect
  • Displacement (Indexed)
  • Stack

Immediate Addressing Diagram

Opcode Operand

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 space

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

Indirect Addressing (2)

  • 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 Addressing (1)

  • Operand is held in register named in address filed
  • EA = R
  • Limited number of registers
  • Very small address field needed —Shorter instructions —Faster instruction fetch

Register Addressing (2)

  • No memory access
  • Very fast execution
  • Very limited address space
  • Multiple registers helps performance —Requires good assembly programming or compiler writing —N.B. C programming - register int a;
  • c.f. Direct addressing

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

Register Indirect Addressing Diagram

Opcode Register Address R

Instruction Memory

Pointer to Operand Operand

Registers

Displacement Addressing Diagram

Opcode Register R

Instruction

Memory

Pointer to Operand Operand

Registers

Address A

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++

Combinations

  • Postindex
  • EA = (A) + (R)
  • Preindex
  • EA = (A+(R))
  • (Draw the diagrams)