Vikke 45
Postad: 16 maj 2023 10:31 Redigerad: 16 maj 2023 10:46

Arm Assembly LDR

Är det någon som hade kunnat hjälpa mig och förstå denna uppgiften?

Jag fattar inte hur man ska tänka när R1 = 0x20008014, det står liksom värdena för 8000, 8010, 8020 men inte för 8014. 

All hjälp uppskattas.

Laguna Online 28621
Postad: 16 maj 2023 10:49

Det är 16 bytevärden på varje rad, så 8014 är nånstans inne på raden som börjar med 8010.

anders_k Online 234
Postad: 16 maj 2023 16:35
0x20008010 7D 6A BC CA 28 ...
           00 01 02 03 04
Peter_ 470 – Avstängd
Postad: 23 maj 2023 15:41 Redigerad: 23 maj 2023 15:47

LDR R0, [R1, #4]
betyder att register R0 laddas med det värde som R1 pekar på i minnet plus en offset på 4.
Eftersom R1 innehåller värdet 20008014 och vi ska börja 4 bytes efter det så hamnar vi på adressen
(0x200080)14 + 4.
Var hamnar du då?
Se här:
                       10   11   12    13  14 15  16  17 18 19  1A   1B  1C  1D  1E  1F
0x20008010 7D 6A BC CA 28 F7 8F 00 11 4A 5C A3 AC 4F 38 94

Kommer du vidare?

Svara Avbryt
Close