Товарищи, всем спасибо за советы!
Приятно сознавать, что мя правильно понимаю некоторые из особенностей работы AVR - это вдохновляет на новые свершения.
Подобные книжки буду читать с осторожностью, ведь альтернатив на русском языке об ассемблере для AVR довольно мало.
ks0 писал(а):понравилось как организованы регистры в описываемой архитектуре MIPS. Их также более 30 шт, но они имеют более осмысленные названия, говорящие об их использовании.
Интересный прием. Ко мне порой тоже приходили подобные мысли, чтобы в одних регистрах хранились аргументы для функций, в других временные значения, а в третьих - результаты. НО! Если вовремя выполнения какой-нибудь функции случайным образом сработает какое-нибудь прерывание, которое будет работать с теми же регистрами, то произойдет сбой программы. Конечно, во время выполнения такой функции все прерывания можно запретить, но если функция громоздкая, то прерывание можно просто проморгать.
Конечно, у архитектуры MIPS в этом плане больше возможностей, ведь ее разрядность может быть от 32-х до 64-х бит. На АВР если функция простая, чтобы задать исходные значения, может хватить 2-х регистров, а если функция сложная, то от 3 до 6. В MIPS для тех же самых целей может хватить 1 - 2 регистра.
Jack_A, Вы правы, тут сложнее всего самому с собой договориться...
