lr的catalog被删掉后可以恢复,因为只要文件没有被其它数据覆盖,都可以恢复。当通过BL或BLX指令调用子程序时,硬件自动将子程序返回地址保存在R14寄存器中。在子程序返回时,把LR的值复制到程序计数器PC即可实现子程序返回。可以使用MOVPCLR或者BXLR来完成子程序返回。另外,也可以在子程序入口处使用下面的指令将LR保存到栈中。当异常发生时,LR中保存的值等于异常发生时PC的值减4,因此在各种异常模式下,可以根据LR的值返回到异常发生前的相应位置继续执行。
lr的catalog被删掉后可以恢复,因为只要文件没有被其它数据覆盖,都可以恢复。当通过BL或BLX指令调用子程序时,硬件自动将子程序返回地址保存在R14寄存器中。在子程序返回时,把LR的值复制到程序计数器PC即可实现子程序返回。可以使用MOVPCLR或者BXLR来完成子程序返回。另外,也可以在子程序入口处使用下面的指令将LR保存到栈中。当异常发生时,LR中保存的值等于异常发生时PC的值减4,因此在各种异常模式下,可以根据LR的值返回到异常发生前的相应位置继续执行。