CS1021 Tutorial 2
Q1 The NXP LPC2468 has 512KiB of flash memory starting at address 0x00000000. What is the last address of the memory area (in hexadecimal)?
Q2 The NXP LPC2468 has 64KiB of read write memory starting at address 0x40000000. What is the last address of the memory area (in hexadecimal)?
Q3 One hundred 8 bit unsigned integers are stored consecutively in memory starting at address 0x00002000. What is the address of the byte containing (i) the first integer (ii) the 22nd integer (iii) the 75th integer and (iv) the last integer?
Q4 One hundred 32 bit signed integers are stored consecutively in memory starting at address 0x004420C0. What is the address of the word containing (i) the first integer (ii) the 22nd integer (iii) the 75th integer and (iv) the last integer?
Q5 Assuming that x is stored in R1, y in R2, z in R3 and the result in R0:
(i) Write ARM assembly language instructions to compute x + y + z.
(ii) Write ARM assembly language instructions to compute y – x – z.
(iii) Write ARM assembly language instructions to compute x2 + y2 + z2.
(iv) Write ARM assembly language instructions to compute 5(x + y).
(v) Write ARM assembly language instructions to compute (x + y)(y – z).
(vi) Write ARM assembly language instructions to compute 3×4 – 5x – 16y4z4.
CS1021 Tutorial 2 2018 jones@scss.tcd.ie
1