Ксения (21.03.2016 11:37 - 11:41, просмотров: 195) ответил KLIM83 на Их и не программируют на ассемблере. UPD: Сторонники асмописания и холиваров среди АВРщиков- довольно внушительная категория. Объективно, среди 430 и ARMян такого рода категоричности не наблюдается.
На самом деле здесь конфликт не между Си и Ассемблером, а между системным и пользовательским уровнями программирования. До тех пор пока программист возится напрямую с железом, то актуален Ассемблер, поскольку в нем железо называется своими именами. Но как только железо оказывается загорожено толстой подушкой, сквозь которою можно манипулировать только через функции/макросы, то польза от Ассемблера во многом теряется, поскольку доступ к железу через подушку становится "абстрактным".
Поэтому реально война предпочтений идет не между языками, а между подушечниками и бесподушечниками :). Как только вступаешь в ряды подушечников, то Ассемблер становится пофигу, а в зобу появляется желание поставить на контроллер Линукс :), либо еще какую-то ось, чтобы подушка стала еще толще.
Лично я ценю красоту мира по обе стороны подушки :). Но в области МК я на стороне безподушечников. И хотя программирую в основном на Си, использую его в стиле "кроссплатформенного ассемблера", т.е. без всяких причуд, когда между Си и Ассемблером имеют место прямые соответствия.
В свое время Си приобрел популярность вовсе не потому, что был высок уровнем, а как раз наоборот - за то, что имел уровень еще ниже, чем у Фортрана. Это уже позже Си расширился в сторону высокого уровня, не утратив своих былых позиций на низком, отчего и превратился в универсальный язык. И, тем не менее, даже на своем низком уровне Си побиваем Ассемблером, а потому предпочтение Си над Ассемблером возрастает в той мере, в какой эффективностью кода можно пренебречь. А именно в эту сторону склоняет рост тактовых частот современных МК.