El trabajo del compilador consiste en asegurar que no se sobrescriban los registros índice que se usan en los programas de interrupción o en las funciones o en los bloques de función llamados desde programas de interrupción.
El ejemplo de abajo muestra el concepto de la generación de código en los PLCs (registro índice en interrupciones: código de programa, comentarios del programador a la derecha) para asegurar este comportamiento:
INT0
ST R9010
F411_CHGB K1 Index register bank set to 1
ST R9010
F0_MV DT458, I5 Actual program code
F0_MV K5, I5DT455
ST R9010
F412_POPB Index register bank reset
INT0
ST R9010
F0_MV I5, DT461 Protecting the current content
ST R9010
F0_MV DT458, I5 Actual program code
F0_MV K5, I5DT455
ST R9010F0_MV DT461, I5 Rewriting the current content
IRET