|
ASM: приказали долго жить?, Сколько еще продержится |
|
|
|
Jun 19 2006, 23:28
|
Участник

Группа: Новичок
Сообщений: 38
Регистрация: 12-09-05
Пользователь №: 8 464

|
На досуге интересует мнение всех кто занимается программированием МК - коль долго еще возможно будет использовать ASM в разработках. Понимаю что тапочки и нужно спешить осваивать C (аппаратные возможности растут и проще написать A*B, например...). Но как сейчас какие плюсы - пишешь то что надо, не зависишь от уровня тупости разработчиков C компилятора, т.е. все на виду (предпочитаю надежность быстроте разработки). Но бесит реализация арифметики на ASMе. Ваше мнение, господа?
|
|
|
|
|
Jun 19 2006, 23:58
|

Гуру
     
Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659

|
Цитата(OlegIvanov @ Jun 20 2006, 07:28)  На досуге интересует мнение всех кто занимается программированием МК - коль долго еще возможно будет использовать ASM в разработках. ИМХО Асм в разработках будет использоваться всегда, потому как есть круг задач, для которых использование Си малоопроавдано, а порой и невозможно. В то же время большинство задач, наоборот, лучше создавать изначально на Си. Универсальность, легкость понимания, внедрение новых модулей, скорость разработки etc... Можно долго перечислять достоинства языка Си (и не только Си) перед Ассемблером
--------------------
|
|
|
|
|
Jun 20 2006, 00:11
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Цитата(OlegIvanov @ Jun 20 2006, 08:28)  На досуге интересует мнение всех кто занимается программированием МК - коль долго еще возможно будет использовать ASM в разработках. Понимаю что тапочки и нужно спешить осваивать C (аппаратные возможности растут и проще написать A*B, например...). Но как сейчас какие плюсы - пишешь то что надо, не зависишь от уровня тупости разработчиков C компилятора, т.е. все на виду (предпочитаю надежность быстроте разработки). Но бесит реализация арифметики на ASMе. Ваше мнение, господа? 1. Какой тип МК имеется в виду? 2. Будут ли Ваши проекты развиваться в будущем? Если да, то не исключен переход на другие архитектуы, тогда нужно писать на СИ. А вообще в инете много "религиозных" тем "АСМ vs. СИ" Рекомендую почитать: 1. Это.2. Это.
--------------------
Выбор.
|
|
|
|
|
Jun 20 2006, 05:03
|
Участник

Группа: Участник
Сообщений: 48
Регистрация: 23-10-05
Пользователь №: 10 016

|
Цитата Даже программируя на асме не всегда можно получить что хотел - вмешивается компилятор. 2 arttab: Первый раз слышу, чтобы компилятор мешал при компиляции ассемблерного кода. Может примерчик.  А вообще, использование асма будет всегда, даже программируя на Си необходимо его знать. Иногда компиляторы си выдают интересный код  , и лучше его просматривать. К тому же, когда есть ограничения по объему ни один компилятор си не будет оптимальнее кода написаного человеком.
|
|
|
|
|
Jun 20 2006, 06:13
|

Профессионал
    
Группа: Свой
Сообщений: 1 432
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 371

|
Цитата Хм.. "компилятор" асма более верно называть транслятором с асма.. Не вмешивается транслятор в то, что написано, а только переводит текст в маш. команды. Не получается то, что хочется только в том случае если код содержит баги или если есть баги в структуре программы. пусть транслятор. но он поддерживает мнемоники, макросы, метки... прочие облекчающие программирование вещи. и может глюкануть. баг невыявленый. Цитата Как говорится - пока существуют процессоры будет существовать и асм. Даже если писать на чистом С, отладка без знания асма может стать весьма затруднительным делом. Согласен. И будет существовать от экономии. взять стромный по памяти мк (дешевый) и сваять на нем на асме, то что на с не влезет. Знаю людей, которые мегу 128 асемблерным кодом забили и им этой меги столо не хватать
--------------------
OrCAD, Altium,IAR, AVR....
|
|
|
|
|
Jun 20 2006, 06:29
|
Местный
  
Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219

|
Цитата(OlegIvanov @ Jun 20 2006, 02:28)  На досуге интересует мнение всех кто занимается программированием МК - коль долго еще возможно будет использовать ASM в разработках. Понимаю что тапочки и нужно спешить осваивать C (аппаратные возможности растут и проще написать A*B, например...). Но как сейчас какие плюсы - пишешь то что надо, не зависишь от уровня тупости разработчиков C компилятора, т.е. все на виду (предпочитаю надежность быстроте разработки). Но бесит реализация арифметики на ASMе. Ваше мнение, господа? Ассемблер будет жить ВСЕГДА. А что касается арифметики, то все арифметические операции можно оформить в виде подпрограмм, это делается только один раз. Дальше ими только пользуешься. Есть свои ++ при программировании как на ассемблере, так и на Си. Хотя я Использую Си больше 20 лет, но ассемблер не забываю. Ассемблер - это для души. Если говорить о Си, то современные компиляторы генерируют код не намного хуже, чем это сделал бы программист. Мне, например, удается соптимизировать код, сгенерированный компилятором, от силы % на 10. Естественно, что прогаммист должен "прочувствовать" используемый им компилятор и помогать ему генерировать эффективный код.
|
|
|
|
|
Jun 20 2006, 06:33
|
Местный
  
Группа: Свой
Сообщений: 232
Регистрация: 22-02-06
Из: Воронеж
Пользователь №: 14 589

|
Цитата(arttab @ Jun 20 2006, 10:13)  Знаю людей, которые мегу 128 асемблерным кодом забили и им этой меги столо не хватать ИМХО если бы писали на С, еще и место бы осталось.
--------------------
Истина рождается в спорах; но когда страсти кипят, истина испаряется.
|
|
|
|
|
Jun 20 2006, 06:38
|

Шаман
     
Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221

|
Хм, надо же. Опять подняли религиозную тему! Накняпали уже 11 постов и не переругались Растём! Теперь по теме. Знать асм и писать на асме это далеко не одно и то же. Здесь я где-то согласен с beer_warrior, что отлаживать тонкости, особенно связанные с железом, зная асм легче. Другое дело - писать. Стараюсь в своих проектах избегать этого где только возможно.
|
|
|
|
|
Jun 20 2006, 06:56
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(vanner @ Jun 20 2006, 08:03)  Цитата Даже программируя на асме не всегда можно получить что хотел - вмешивается компилятор. 2 arttab: Первый раз слышу, чтобы компилятор мешал при компиляции ассемблерного кода. Может примерчик.  Пожалуйста. сделайте RJMP на +0x400 слов (переход из таблицы векторов Boot-области в Application). Согласно описанию AVR Instruction Set в качестве аргумента RJMP берет смещение в словах. Однако "втюхать" это смещение ассемблеру от IAR "в лоб" невозможно. Асм от WinAVR такое тоже есть отказался.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|