Title: OutLine of Tutorial 5
1OutLine of Tutorial 5
- Summary of Load/Store instructions
- Exercises reading memory in Simulator
- Exercises writing code
2Summary of Load/Store instructions
- Format
- Opcode regA, displacement(regB)
- displacement is less than 16 bit
- vitual memory displacement value of regB
3Summary of Load/Store instructions
- Load instructions in Simulator
- ldbu
- filling remaining bytes in register with 0
- ldwu
- filling remaining bytes in register with 0
- Memory address has to be multiple of 2
- ldl
- filling remaining bytes in register with signed
bit - Memory address has to be multiple of 4
- ldq
- Memory address has to be multiple of 8
- lda
- Load the memory address rather than the value
4Summary of Load/Store instructions
- Store instruction in Simulator
- stb
- stw
- Memory address has to be multiple of 2
- stl
- Memory address has to be multiple of 4
- stq
- Memory address has to be multiple of 8
5Get answer of following exercises using Simulator
Following code is in example 5
Show the contents of memory and the labels
- data
- align quad
- value0 asciiz "ab"
- value1 byte 0x12
- value2 long 0x3456
- value3 quad 0x87654321
-
With above memory allocated, indicate how the
contents of registers are changed by following
instructions, and which instructions cant be
executed
ldiq t0, value0 ldq t1,
(t0) ldwu t2, 4(t0) lda t3,
3(t0) ldbu t2, (t3) ldl t3,
8(t0) ldl t4, 6(t0) ldq t5, 4(t0)
6Exercises reading memory in Simulator
Continue with above exercise, indicate how the
contents of registers are changed by following
instructions, and which instructions cant be
executed
stq t1, (t0) stb t2, 1(t0) stw t3,
2(t0) stl t3, 8(t0) ldiq t0,
value2 stq t3, (t0) stl t3, 2(t0)
7Fill in code in example 6
- Write code to load value0,value1,value2,value3 to
register t1,t2,t3,t4 - Write code to store values in register
t1,t2,t3,t4 in memory label value0,value1,value2,v
alue3