Question: For the following function i. squareroot MOV r1, r0 [1] ii. MOVS r3, #0X01 [1] iii. ADD r0, r3, r1, LSR #4 [1] iv. MOVS
![For the following function i. squareroot MOV r1, r0 [1] ii.](https://dsd5zvtm8ll6.cloudfront.net/si.experts.images/questions/2024/09/66f3dc3194aa5_64966f3dc31079fc.jpg)
For the following function i. squareroot MOV r1, r0 [1] ii. MOVS r3, #0X01 [1] iii. ADD r0, r3, r1, LSR #4 [1] iv. MOVS r2, #0x10 [1] v. B chck [2-4] vi. loop MLA r3, r3, r0 [2-12]*16 viii. LSRS r0, r3, #1 [1]*16 ix. SUBS r2, r2, #1 [1] * 16 x. chck CMP r2, #0x000 [1] *17 xi. BNE loop [2-4] * 17 xii. BX lr [2-4] a. Find the total execution time for the program on an ARM Cortex M3 processor. b. Modify your program for performance debugging and list any performance improvements. c. If the value of NVIC_ST_CURRENT_R register is 0x1F2F3F before the execution of the program, find the value in the register after the program is executed
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
