Professional Documents
Culture Documents
MIPS Addressing PDF
MIPS Addressing PDF
MIPS Addressing PDF
Addressing Modes
and Memory
Architecture
(Second Edition:Section 3.8
Fourth Edition: Section 2.10)
from Dr. Andrea Di Blas notes
Memory Organization and Addressing
Memory may be viewed as a single-dimensional array of individually
addressable bytes. 32-bit words are aligned to 4 byte boundaries.
232 bytes, with addresses from 0 to 232 1.
230 words with addresses 0, 4, 8, , 232 - 4
1 word
9 1101 0001
8 1100 0101
7 0001 1100
6 1111 0010
1 word
5 1010 1100
Register addressing
Immediate addressing
Base addressing
PC-relative addressing
Indirect addressing
Direct addressing (almost)
op rs rt rd shamt funct
memory
ALU
registers
op rs rt Immediate value
16 bits
Sign-extended
----------------xxxxxxxxxxxxxxxx
memory
ALU
registers
op rs rt Immediate value
Sign-extended
----------------xxxxxxxxxxxxxxxx
memory
ALU
registers
op rs rt Immediate value
----------------xxxxxxxxxxxxxx00
Program Counter
ALU
beq $0,$5,Label
CMPE 110 Spring 2011 J. Ferguson 4 - 12
Detail of MIPS PC-Relative
address instruction Binary code to beq $0,$5, label
40000008 addi $5, $5, 1 is 0x10050002, which means 2
4000000C beq $0, $5, label instructions from the next
instruction.
40000010 addi $5, $5, 1
40000014 addi $5, $5, 1 PC = 0x4000000C
40000018 label addi $5, $5, 1 PC+4= 0x40000010
4000001C addi $5, $5, 1 Add 4*2 = 0x00000008
Eff. Add. = 0x40000018
40000020 etc
op rs rt Immediate value
Example: jr $31
op rs rt rd shamt funct
memory
program counter
registers
jr $5
op offset
31 26 25 0
j Label
xxxx 00
program counter
memory
ALU
registers
memory
registers ALU
eff. add.
ALU
registers
eff. add.