The shifts multiply the original array indices by four, and the following additions form byte memory addresses. The load into $s0 changes the variable itself, but the address of the next element of A has already been saved. The complete effect is
i = x
x = A[i]
B[y] = x + A[i + 1]
Here i is a fresh temporary. Both the assignment to and the assignment to matter. Writing only would omit the observable change to . The interpretation assumes four-byte array elements, valid aligned addresses, and arithmetic within range; the source uses trapping signed additions. The address of is computed before changes.

Articles by others on the same topic (0)

There are currently no matching articles.