ModeMask EQU 0x1F
SVC32Mode EQU 0x13
IRQ32Mode EQU 0x12
FIQ32Mode EQU 0x11
User32Mode EQU 0x10
Abort32Mode EQU 0x17
Undef32Mode EQU 0x1B
IRQ_BIT EQU 0x80
FIQ_BIT EQU 0x40
SYS_RST_HANDLER
mrs r0, cpsr
bic r0, r0, #ModeMask
orr r0, r0, #(SVC32Mode :OR: IRQ_BIT :OR: FIQ_BIT)
msr cpsr_c, r0
IMPORT InitSystem
bl InitSystem
orr r0, r0, #(SVC32Mode :OR: IRQ_BIT :OR: FIQ_BIT) 这句没看懂,或者说好像感觉有点问题
r0不是已经是00011111b(0x1F)了吗,那么00011111orSVC32Mode :OR: IRQ_BIT :OR: FIQ_BIT不是等于11011111 这不是在管理模式啊,还是在系统模式啊,请问我哪里分析错了。 |