Hi i have doubt in lpc3250 irq handler. can any one explain the this asm code? __asm void IRQ_Handler (void) { /* Common IRQ Handler */ PRESERVE8 ARM STMDB SP!,{R0}; Save R0 LDR R0,=__cpp((unsigned int)&MIC_SR)}; Load MIC_SR Address LDR R0,[R0]}; Load MIC_SR Value TST R0,#0x20}; Check High Speed Timer Flag LDMNEIA SP!,{R0}}; Restore R0 LDRNE PC,=__cpp(TCPClockHandler)};IRQx Function LDMIA SP!,{R0}}; Restore R0 SUBS PC,LR,#4}; RETI } explain the bold statements in above code.....