Ответ: Тем и красивее IAR, чем CV, что он не стремится разделять Си и Ассемблер
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено ДМ 27 декабря 2004 г. 19:10
В ответ на: А зачем в именно ассемблерной функции работать с такой переменной? отправлено Bill 26 декабря 2004 г. 18:33

CV просто, тупо копирует Ассемблеровский код и "отряхивает руки". У IAR линкер соединяет два объектных кода в один исполняемый. Если на Си бывает необходимость делать регистровые переменные, то уж на Ассемблере тем более. Чему тогда удивляться, что к одному и тому же регистру хочется обратиться и из Си, и из Ассемблера!
Хотя мое мнение, что регистровые переменны - это блаж и излишество, которое можно легко обойти. Но если Atmel напорол регистров, которые ни для чего другого, как, для регистровых переменных не применить, то почему бы не использовать?! Лучше бы ограничились 16-ю полноценными, общего назначения, и сделали побольше команд. Доказано, что при одной и той же разрядности, увеличение числа регистров возможно только за счет уменьшения числа команд, и наоборот.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru