![]() ![]() ![]()
Какой рейтинг вас больше интересует?
|
![]()
Оптимизация кода.2011-09-23 16:55:00 (читать в оригинале)Одной из проблем использования языков высокого уровня является объем получаемого в результате компиляции машинного кода. Особенно остро эта проблема ощущается для микроконтроллеров. Если для больших ПК, с их гигабайтами памяти и HDD, объем кода практически не имеет значения, то ограниченность ресурсов даже топовых МК предъявляет особые требования. Так, например, объем одного и того же алгоритма на ассемблере и языке высокого уровня может отличаться в десятки раз. В качестве примера можно привести IDE Arduino, в которой даже простейший код занимает очень много места.
К счастью, многие разработчики стали встраивать в свои компиляторы оптимизаторы кода. Так в системе программирования Amicus18 IDE, оптимизатор идет дополнительной опцией, при этом глубину оптимизации можно настраивать. Несколько иной подход в среде MicroPascal, предлагаемой фирмой Microelectronica. Оптимизация там выполняется в процессе компилирования. при этом более новые версии имеют более компактный код. Для опыта была откомпилирована одна и та же программа термометра на микроконтроллере PIC12F629. Использовались среды MicroPascal ver.6 и MicroPascalPro ver.4.6. В первом случае объем кода составил 844 команды, во втором 743. Прогресс явный, хотя все то же самое можно вполне уместить пару сотен ассемблерных команд. Меньший объем у версии PRO порадовал, учитывая ограничение в бесплатной версии на 2 кб.
|
![]() ![]()
Категория «Бизнес»
Взлеты Топ 5
Падения Топ 5
![]()
Популярные за сутки
|
Загрузка...
![Загрузка... Загрузка...](/themes/1/i/loader/loader.gif)
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.
взяты из открытых общедоступных источников и являются собственностью их авторов.