2

MIPS MARS シミュレーターで次のコード スニペットを実行しました。そのシミュレーターはリトルエンディアンです。したがって、結果は次のとおりです。

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 

したがって、リトル エンディアンの MIPS シミュレータでは、プログラムの最後の $t2 の値は 0x01DECADE です。このシミュレーターがビッグ エンディアンの場合、値はどうなりますか? それは 0xDECADE01 でしょうか、それとも 0x01DECADE のままでしょうか?

4

1 に答える 1

6

同じです -- メモリ内のバイトの順序は異なりますが、200($t1)、201($t1)、202($t1)、および 203( $t1)

于 2010-04-12T19:25:21.723 に答える