It should be noted that this is the typical occurance of C compilers for the AVR architecture, this is not what occurs on an assembly level though. Interrupt events can be written (if desired) to allow nested interrupts to occur. For AVR GCC you just pass the ISR function an ISR_NOBLOCK parameter. I'm not sure what it would for Code Vision but it should be available as well. On an assembly level, if you don't want nested interrupts to be possible the first instruction has to disable global interrupts, an the last one has to enable them.