O que exatamente a instrução lb faz?
Eu tenho um exame chegando, e um dos problemas da prática era:
Assuma isso$t0
contém o valor0x12121212
e$t1
contém o endereço0x1000000
.
Suponha que os dados da memória, começando pelo endereço0x1000000
é:88 77 66 55
.
Qual será o valor de$t0
após o seguinte código é executado:
lb $t0, 0($t1)
a)0x00000088
b)0x88121212
c)0xffffff88
d)0x12121288
A resposta que eu dei foia
, porque o byte que olb
instrução lerá (pela minha compreensão do que a instrução faz) é 88. O 88 será então armazenado em$t0
, assim o valor será0x00000088
. Mas a resposta dada foic
. Eu sinto que tenho um mal-entendido fundamental sobre comolb
funciona - alguém pode por favor explicar por que a resposta éc
?