针对Cortex-M3和Cortex-M4,若SVC指令后有一个立即数,下列代码段是获取其立即数的,关于该代码的描述正确的是( )
SVC_HANDLE
TST LR, #4
ITE EQ
MRSEQ R0, MSP
MRSEQ R0, PSP
LDR R0, [R0, #24]
LDRB R0, [R0,#-2]
TST LR, #4主要是用来查看LR中的bit[2]
MRSEQ R0, MSP,表示压栈时使用的是MSP,此处读取MSP
MRSEQ R0, MSP,表示压栈时使用的是PSP,此处读取PSP
LDR R0, [R0, #24]表示从栈帧中获取压栈的PC
LDRB R0, [R0,#-2]读取SVC指令的第一个字节