Question: Show how the following MIPS program would be loaded into memory and executed. # MIPS assembly code main: addi $sp, $sp, 4 sw $ra, 0($sp)
Show how the following MIPS program would be loaded into memory and executed. # MIPS assembly code main:
addi $sp, $sp, 4 sw $ra, 0($sp) lw $a0, x lw $a1, y
jal diff lw $ra, 0($sp) addi $sp, $sp, 4 jr $ra
diff: sub $v0, $a0, $a1
jr $ra
Please assume that the main function starts at memory address 0x00400000, the address of variable x is 0x10000000, and the address of variable y is 0x10000004.
5.A.) First show the instruction address next to each assembly instruction.
5.B.) Draw the symbol table showing the labels and their addresses. 5.C.) Convert all instructions into machine code. 5.D.) How big (how many bytes) are the data and text segments?
5.E.) Sketch a memory map showing where data and instructions are stored.
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
