Показать сообщение отдельно
Старый 19.12.2020, 21:29   #21 (permalink)
Абориген
 
Регистрация: 07.12.2013
Сообщений: 1,534
Вы сказали Спасибо: 14
Поблагодарили 1,036 раз(а) в 554 сообщениях
Сказал(а) Фууу!: 3
Сказали Фууу! 1 раз в 1 сообщении
Откуда: МО
По умолчанию

Цитата:

Но в нашем блоке отличается один байт (а вернее один бит) по адресу 0х018189:

Но мы предположили (и такое к сожалению уже встречалось ранее), что предыдущие ремонтники, прочитав неправильный дамп с "выпавшим" битом и наверное с ошибкой контрольной суммы -
вместо того, чтобы проанализировать и найти проблему, просто пересчитали контрольную сумму и таким образом "легализировали" неправильный дамп - и записали обратно в блок.
Заглянул в код посмотреть что за байт такой...
Это больше похоже на сознательное действие, а не случай.
Изменена команда сравнения регистров.
В оригинале идет цикл и сравнивают содержимое двух разных регистров и по результатам программа может выставить некий флаг в "0" или "1"
С измененным байтом сравнивается регистр сам с собой.
Тем самым в программе этот флаг всегда выставляется в "1" вне зависимости от результата работы цикла.
veloseeped вне форума   Ответить с цитированием