MIPS build: big and faint-hearted confusion

I have executed the following piece of code on the MIPS MARS simulator . This simulator has little orientation. So the results are as follows:

lui    $t0,0x1DE             # $t0 = 0x01DE0000
ori    $t0,$t0,0xCADE        # $t0 = 0x01DECADE 
lui    $t1,0x1001            # $t1 = 0x10010000
sw     $t0,200($t1)          # $t1 + 200 bytes = 0x01DECADE 
lw     $t2,200($t1)          # $t2 = 0x01DECADE 

      

So, on the little MIPS end simulator, the value of $ t2 at the end of the program is 0x01DECADE. If this simulator was a big endia, what would be the value? Will it be 0xDECADE01 or will it still be 0x01DECADE?

+2


source to share


1 answer


It would be the same: the byte order in memory would be different, but you could see that if you loaded single bytes from 200 ($ t1), 201 ($ t1), 202 ($ t1) and 203 ($ t1)



+6


source







All Articles