Il compilatore ha il compito di assicurare che non siano sovrascritti registri indice usati in programmi di interrupt o in funzioni o in Function Block chiamati da programmi di interrupt.
L'esempio riportato qui sotto illustra come avviene la creazione codici per PLC (registro indice in interrupt: codice programma, commenti del programmatore sulla destra) per assicurare questo risultato:
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