.equ NAME=0xE7E6E5E4E3
Как из неё взять старший байт для загрузки в РОН?[/uquote]
На хорошем ассемблере для AVR это будет:
V = Name#4
Если надо скопировать, скажем, 2 байта, то для 2-х байтной переменной V это будет:
V = Name#4N2
Переменная V может быть и RON, и SRAM, и EEPROM.
[uquote="ПростоНуб",url="/forum/viewtopic.php?p=3704873#p3704873"]ARV, проще, но менее универсальна. Она применима только в случае, если во всем коде есть только один длительный расчет, способный занять ресурсы CPU на длительное время. Если же необходимость в таких расчетах возникает асинхронно, то приходится реализовывать мультизадачность. А кооперативная мультизадачность, при всех ее недостатках, экономит и память, и ресурсы CPU, в сравнении с мультизадачностью по таймеру.[/uquote]
Сомнительно насчёт универсальности.
Во-первых, если уж требуются длительные расчёты, плохо стыкующиеся с основной программой, для них можно поставить отдельный МК, он стоит копейки.
Во-вторых, в длительной задаче можно в удобном месте сделать «окна» для программной обработки прерываний.
МК последовательно выполняет задачи – это, как писали, в 100500 раз упрощает разработку и отладку, что очень существенно.


