Väldigt enkel kod i Assembly
"En programmerare har skrivit koden: A=(B+C)-(D+E). Visa hur Assembly koden
skulle kunna se ut om all data (A-E) ligger på minnesplatserna A-E och processorn
använder ett 2-adress format."
Facit:
Programmet skulle kunna se ut så här:
LOAD R1, B //R1 ←B
LOAD R2, C //R2 ← C
LOAD R3, D //R1 ← B
LOAD R4, E //R2 ← C
ADD R1, R2 //R1 ← R1 + R2
ADD R3, R4 //R1 ← R1 + R2
SUB R1, R3 //R1 ←R1 – R3
STORE A, R1 //A ← R1
Jag kan tycka att det bör stå så här
LOAD R1, B //R1 ←B
LOAD R2, C //R2 ← C
LOAD R3, D //R3 ← D
LOAD R4, E //R4 ← E
ADD R1, R2 //R1 ← R1 + R2
ADD R3, R4 //R3 ← R3 + R4
SUB R1, R3 //R1 ←R1 – R3
STORE A, R1 //A ← R1
Har jag rätt eller fel?
Naturligtvis har du rätt.