Ich schaue mir die folgende Anweisung an und ich kann es nicht verstehen. Ich habe versucht, ein paar Online PowerPC Anweisungen zu lesen, aber sie sind nicht sehr verständlich für mich.Was passiert eigentlich in lwz?
lwz r4, [email protected](r28)
Hier, wie die dword zeigt in IDA
dword_91C0DB28: .long 0
Was genau los ist, wenn lwz genannt wird und warum ist es sinnvoll?
'lwz' lädt ein Wort an die angegebene Speicheradresse und setzt die oberen 32 Bits auf Null. Was ist daran unklar? –
@SamiKuhmonen Was ist der Zweck von 'r28' in diesem Fall, wenn die Adresse, die wir laden wollen,' dword_91C0DB28' ist? – Aidan
_ "die Adresse, die wir laden möchten, ist dword_91C0DB28" _. Es ist nicht. 'dword_91C0DB28' ist nur die Verschiebung, während die Basisadresse in' r28' angegeben ist. Die effektive Adresse ist base_address + sign_extend (displacement). 'r28' könnte in diesem Fall die Adresse des Anfangs des Abschnitts enthalten, in dem sich' dword_91C0DB28' befindet. – Michael