код изначально ущербен
Что все таки произойдет по default?
Что значит ущербный, а если функции требуется реагировать только на три состояния из всех возможных.
а вопрос о замене оператора неверен по своей сути.
177a: 81 30 cpi r24, 0x01
add r24, r25 // сложение двух регистров
двоичное представление какое?
сколько единиц, нулей будет изменено?
Определяют три вида операторов: линейный, управляющий и предикатный. Так вот, любой из этих типов операторов может быть легко заменен на оператор из другого тапи или оператором своего типа.
Например:
1. Замена одного линейного оператора другим
2. Замена линейного оператора управляющим
3. Замена линейного оператора предикатным
и т.д. всего 9 возможных вариаций.
Таким способом програмными способами имитируют аппаратные отказы.
если проводить тестирование узлов МК, то надо проводить тест АЦП, ЦАП, регистров прерываний,ОЗУ, ПЗУ, таймеров
но не выполнение команд.
Если стоит задача по обеспечению безопасности работоспособности МК, то надо и выбирать соответствующие МК-производителей, с отлаженным ядром и пр.
Прежде чем приступить к тестированию всех перечисленных выше модулей МК, сначало надо убедиться в коректности работы АЛУ МК.
Если взять большие вичислительные системы под управлением операционной системы, то при глюках процессора с вероятностью 99.99999... управление просто не дойдет до вашего преложения, зависнит операционка. А в МК находится только ваш код и все, и в этом случае глюки АЛУ могут позволять как-то работать вашему коду, но коректность этой работы будет под большим сомнением.