Самое первое, что это такое
Код
GoTo alarm_label
Context Restore 'Возврат из обработчика прерывания
Вы всегда будете переходить на начало прерывания.
Теперь второе.
Вы даташит читали????
Цитата
В подпрограмме обработки прерываний необходимо выполнить следующие действия:
1. Произвести запись или чтение регистра CMCON для устранения условия несоответствия.
2. Сбросить флаг CMIF в ‘0’.
Прочитайте регистр CMCON перед включением флага прерывания и сбросьте флаг прерывания от компаратора.
И все будет как надо.
Да и в обработчике прерываний нужно сделать то же самое.