Complete the code to call a subroutine named 'process_data'.
BL [1]The BL instruction calls the subroutine named process_data, enabling modular code reuse.
Complete the code to return from a subroutine.
[1]The instruction BX LR returns control to the calling function by branching to the address stored in the link register.
Fix the error in the subroutine call to correctly save the return address.
BL [1]The BL instruction saves the return address in the link register and branches to process_data, enabling modular calls.
Fill both blanks to create a subroutine that saves and restores registers.
PUSH [1] ... POP [2]
Saving registers {R4-R7} before subroutine work and restoring them after preserves their values, enabling modular code.
Fill all three blanks to define a modular subroutine that takes input, processes it, and returns.
MOV R0, [1] BL [2] [3]
This code moves the input value into R0, calls the process_data subroutine, and returns using BX LR, demonstrating modular assembly.