ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
4 июня
1522060 Топик полностью
Ale3000 (02.06.2025 09:09, просмотров: 39) ответил vpv.vpv на Вот как это выглядит в листинге. В регисторовой паре R15:R14 лежит текущий указатель на нужную функцию. Функция "портит"только пару регистров. Её вызов происходит мгновено (команда MOVW - 1 такт). А вот преамбулы и послеамбулы прерывания из-за косвенного вызова длятся невыносимо долго и бестолково.
Так тут у вас функция вызывается по указателю. Конечно, компилятор не может знать, куда в данный момент указывает указатель. Если функцию вызывать напрямую, то компилятор не будет сохранять неиспользуемые регистры.