Рубрики
Полезно и интересно

Программа «Assembler» против «C» — программирование МК

В доме современного человека в среднем содержится пятьдесят микроконтроллеров! Это невероятно, если учитывать, что еще несколько десятилетий назад сложные процессорные технологии только начинали развиваться. Для функционирования все процессоров, в том числе и микроконтроллеров, необходимо писать программу. Встает вопрос: «На каком языке программирования это удобней и эффективней делать?».


С учетом того, что в микроконтроллере приходится оперировать с отдельными байтами и битами, то для полного контроля над действиями микроконтроллера логичней было бы использовать язык ассемблера, поскольку он является языком низкого уровня. Низкого – значит он приближен к машинному коду на максимально возможный уровень, что позволяет говорить о выполнении задачи по манипуляции битов и байтов на максимум.
Однако представьте, что ваш проект на микроконтроллере будет содержать объемную программу, выполняющую тысячи операций за один такт процессора. Для написания такой программы на ассемблере уйдет достаточно большой период времени. В этих целях используют языки более высокого уровня, такие как Си. Также существуют компиляторы для Basic, однако они не получили большого распространения.

Применение языка Си позволяет более эффективно реализовывать создание кода программы. Если на ассемблере код будет около десяти страниц, то на Си он может занять от силы две страницы. Но не стоит пренебрежительно относиться к ассемблеру. Высоким уровнем программирования считается применения обоих языков программирования одновременно! Так, например, при написании кода на Си вы можете использовать ассемблерные вставки. Для чего их использовать? Об этом вы сможете узнать на сайте практикующем изготовление штампов. ruspechati.ru — мы ждем вас.
Бывают ситуации, когда настраиваемые прерывания с помощью внутренних таймеров и кварцевого генератора не дают желаемых результатов. Для точной подгонки вы можете использовать ассемблерную вставку с конструкцией ‘nop’, что позволит регулировать задержку процессора вплоть до единичного такта.

В конечном итоге, если вы будете знать точно «что и когда» делает ваша программа, то тогда вы получите действительно эффективный продукт. А без знания ассемблера и си это сделать невозможно. Статья называется Ассемблер против Си, но подводя итог, хочу сказать, что это не конкурирующие языки. Это два инструмента, дополняющие друг друга и изначально созданные для разных целей. И только их совместное использование даст действительно достойные результаты. Удачи!

3 ответа к “Программа «Assembler» против «C» — программирование МК”

спасибо вам за такую полезную статью
я планирую устанавливать к себе в кваритру светодиодное освещение — очень много для себя почерпнула!

А-а! Поняла наконец: в маленькой программе процессор выполняет меньше операций за такт, чем в большой. Да?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *