ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
18 апреля
869600 Топик полностью
Ксения (07.09.2018 18:10, просмотров: 152) ответил Codavr на Вот вот, я тоже всегда офигевал почему он все регистры сохраняет, а не только те что портит. Причем независимо от уровня оптимизации. Помнится один проект в 8 мегу упихал убрав из кода ненужные сохранения/восстановления. Даже пара байтов осталась
А я сразу догадалась почему :) - если в обработчике прерываний вызовешь хотя бы одну функцию, то компилятор сохраняет все, т.к. не хочет поверять, какие регистры это функция портит. А если не вызывать оттуда функций, то сохраняет только те, что используешь, + регистр статуса.