ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
12 июля
409202 Топик полностью
Adept (14.05.2013 04:29, просмотров: 216) ответил Apтём на Местами так - два. В ИАРе например под стек возвратов используется стек адресуемый через SP(RSTACK), а для передачи параметров функций и для локальных переменных используется память адресуемая через Y(CSTACK). Почему-то там решили что так
но аппаратно-то у АВР стек один. Можно программно эмулировать (переписывая указатель стека), но нужно внимательно следить за перекрытиями стеков, да к тому же эффективность кода резко упадёт. всё-таки в время господства CISC процессров, работа со стеком, действительно была быстрее операций с памятью (особенно, если она внешняя, да ещё с циклами WAIT и т.п.) Но сейчас картина обратная. POP/PUSH в AVR вообще самые длинные команды (по 4 такта). Потому, думаю ассемблер в AVR будет сильно выигрывать у ФОРТА ( в 2-3 раза), в то время как на CISC процессорах отставание ФОРТа по быстродействию было 10-20%
...делать нужно так, как нужно. А как ненужно - делать не нужно (С) Винни-Пух :)